AD转换TLC1543(C语言)

时间:2015-02-25 12:58:43
【文件属性】:

文件名称:AD转换TLC1543(C语言)

文件大小:19KB

文件格式:RAR

更新时间:2015-02-25 12:58:43

AD转换TLC1543(C语言)

/*********************************************************** 实验名称:AD转换数码管显示电压值 程序说明:把J4,J29,J30用短路帽短接,J1要短接左端,用数码管显示AD转换电压值, 拧动电位器R17可以得到不同的电压 ***********************************************************/ #include #include unsigned char led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xa7,0xa1,0x82,0x8e}; //数码管的字符数组 sbit P2_0=P2^0; //数码管的位选 sbit P2_1=P2^1; //数码管的位选 sbit P0_7=P0^7; //小数点显示位 sbit cs=P1^3; //片选 sbit dout=P1^4; //数据输出端 sbit adin=P1^5; //数据输入端 sbit clock=P1^6; //时钟端 sbit eoc=P1^7; //检测端 sfr16 DPTR=0x82; unsigned char i; unsigned int a,b,r,s; void delay_2(); void delay(unsigned int z); //1ms的延时程序 void _nop_(); /******************************************/ /* 主函数 */ /******************************************/ void main() { cs=1; //初始化 clock=0; dout=1; while(1) { adin=0; //模拟量输入端选择的第1位 cs=0; while(!eoc); //检测是否完成 _nop_(); _nop_(); a=0; for(i=0;i<10;) //开始读数据 { i++; if(dout==0) { if(i!=10) a=a<<1; } if(dout==1) { a=a|0x0001; if(i!=10) a=a<<1; } clock=1; _nop_(); clock=0; //数据读取完成,a中为读取的有效10位数字,且在低位 b=a; b=b<<6; //读取的数右移6位,为取其高8位作准备 DPTR=b; if(i==1) adin=0; //模拟量输入端选择的第2位 if(i==2) adin=0; //模拟量输入端选择的第3位 if(i==3) adin=1; //模拟量输入端选择的第4位 } cs=1; _nop_(); delay(12); P2_1=0; r=DPH*50; r=r/255; r=r/10; //以下为数码管显示程序 P0=led[r]; P0_7=0; delay_2(); P0=0xff; P2_1=1; P2_0=0; s=DPH*50; s=s/255; s=s; P0=led[s]; delay_2(); P0=0xff; P2_0=1; } } /******************************************/ /* 延时子程序 */ /******************************************/ void delay(unsigned int z) //1ms的延时程序 { unsigned int x,y; for(x=z;x>0;x--) for(y=114;y>0;y--); } /******************************************/ /* 延时子程序 */ /******************************************/ void delay_2() //较短的延时程序 { unsigned int y=300,x; while(y) { for(x=2;x>0;x--); y--; } }


【文件预览】:
AD转换TLC1543(C语言)
----TLC1543.Opt(1KB)
----tlc1543.LST(7KB)
----tlc1543.c(3KB)
----TLC1543.plg(229B)
----STARTUP.A51(5KB)
----TLC1543(5KB)
----TLC1543.Uv2(2KB)
----STARTUP.obj(996B)
----TLC1543_Uv2.Bak(2KB)
----TLC1543_Opt.Bak(2KB)
----TLC1543.M51(8KB)
----TLC1543.hex(2KB)
----tlc1543.OBJ(5KB)
----STARTUP.lst(12KB)

网友评论