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

我这个有成品图 但是这个图不是用at89c51做的,是用8031做的,现在想把8031换成AT89c51单片机,我刚才把地址锁存器和存储器删掉了 然后要换掉8031不知道怎么做 8031和at89c51单片机管脚上有什么不同、
可以追加分...

把8031直接换成8951就行啦

管脚是一样的

电路如图

程序如下

#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;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-16
8031 和at89c51 是兼容的。就是at89c51 的容量更大点。
第2个回答  2010-06-02
电路应该不用改,直接把8031的31脚EA接高电平就可以了,这样程序从内部程序存贮器执行了。你可以试一下