求atc51单片机和adc0809 AD转换器的连接方法

发布网友 发布时间:2022-04-22 05:47

我来回答

3个回答

热心网友 时间:2024-07-26 17:47

把8031直接换成51就行啦

管脚是一样的

电路如图

程序如下

#include <reg52.h>

#define uint unsigned int

#define uchar unsigned char

uchar code LEDData[]=

{

  0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f

};

sbit OE  = P1^0;

sbit EOC = P1^1;

sbit ST  = P1^2;

sbit CLK = P1^3;

void DelayMS(uint ms)

{

  uchar i;

 while(ms--)

 {

   for(i=0;i<120;i++);

 }

}

void Display_Result(uchar d)

{

  P2 = 0xf7;

 P0 = LEDData[d%10];

 DelayMS(5);

 P2 = 0xfb;

 P0 = LEDData[d%100/10];

 DelayMS(5);

 P2 = 0xfd;

 P0 = LEDData[d/100];

 DelayMS(5);

}

void main()

{

  TMOD = 0x02;

 TH0  = 0x14;

 TL0  = 0x00;

 IE   = 0x82;

 TR0  = 1;

 P1   = 0x3f;

 while(1)

 {

   ST = 0;

  ST = 1;

  ST = 0;

  while(EOC == 0);

  OE = 1;

  Display_Result(P3);

  OE = 0;

 }

}

void Timer0_INT() interrupt 1

{

  CLK = !CLK;

}

热心网友 时间:2024-07-26 17:47

8031 和atc51 是兼容的。就是atc51 的容量更大点。

热心网友 时间:2024-07-26 17:48

电路应该不用改,直接把8031的31脚EA接高电平就可以了,这样程序从内部程序存贮器执行了。你可以试一下

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com