这是一段在C51下进行A/D转换的C源码,在protues7.5下通过测试。最下面是用到的元件及连线图。
---------------------------------------------------------------------
#include <reg51.h>
#include <intrins.h>
sbit sel_duan=P2^0; //段码选择端口
sbit sel_wei=P2^1; //位码选择端口
sbit ad_read=P3^7; //AD转换结果读取端口
sbit ad_write=P3^6; //AD转换启动端口
unsigned p1_temp; //存放AD转换后的结果
unsigned char show_bai,show_shi,show_ge; //数码管显示变量
unsigned char led_table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //数码管编码
void delayms(unsigned int xms); //延时函数
void display(unsigned char baiwei,unsigned char shiwei,unsigned char gewei); //数码管显示函数
void main()
{
sel_wei=1;
P0=0x7f; //选中ADC0804
sel_wei=0;