那位大神有数字交流电压表表的外文参考文献的,pdf格式,麻烦发到我qq邮箱396236863

那位大神帮我看看三位半的数字电压表 - 单片机/MCU论坛 -
中国电子技术论坛 -
最好最受欢迎电子论坛!
后使用快捷导航没有帐号?
那位大神帮我看看三位半的数字电压表
23:09:20  
请各位大神帮我看看!程序调试不成功!小弟初学者!调试了好久!找了许多资料还是没发现问题!麻烦那位大神帮我看看!
&&#include&reg52.h&
&&#include &intrins.h&
&&sbit ST=P3^0; //ADC0809启动转换
&&sbit OE=P3^1; //允许ADC0809输出数据
&&sbit EOC=P3^2; //ADC0809转换结束信号& &
&&sbit BEEP=P3^3;& &
&&sbit V1=P3^4;& & //200V档位测试标志位
&&sbit V2=P3^5;& &&&//20V档位测试标志位
&&sbit V3=P3^6;& & //2V档位测试标志位
&&sbit V4=P3^7;& & //200mV档位测试标志位
&&sbit led=P0^7;
&&unsigned char digit[4];
&&unsigned char table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
&&0x80,0x90,0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};
&&void delay(unsigned int tc)//带小数点编码 /*延时*/
&&& & & & while(tc!=0)
&&& & & & {
& & & & & & & &
& & & & & & & & for(i=0;i&100;i++)
& & & & & & & & {
& & & & & & & & & & & & tc--;
& & & & & & & & }
&&}&&/*ADC0809转换子程序*/&&
&&unsigned char adc0809() //读AD0809子程序
& & & & ST=0;& &
& & & & OE=0; //读AD0809准备& &
& & & & P1=0 //先把ADC0809的输出清0
& & & & ST=1;
& & & & ST=0; //启动转换
& & & & while(EOC==1);// 如果有输出中断,使能读功能,并读数据
& & & & & & & & OE=1;&&
& & & & & & & & adda=P1;&&
& & & & & & & & OE=0;
& & & & return(adda);//返回最后读出数据
&&/*ADC0809转换数据处理*/
& &unsigned int dacl() //AD0809读出数据处理
& && & & &&&
& & & &&&unsigned int dady=0;
& & & &&&for(x=0;x&10;x++)&&
& & & &&&{dady=adc0809()+}&&
& & & &&&dady=dady/10; //求平均值,提高精度
& & & &&&return(dady);//返回处理结果
& &void loop(void)
& &&&while(h==1)
& & & &&&& & & & BEEP=!BEEP;
& & & & & & & & delay(100);
& & & & & & & & BEEP=!BEEP;
& & & & & & & &
& & & &&&}
& &void led_display(float val)//显示函数
& & & &&&if(V1==0) //200V档
& & & &&&{
& & & &&&& & & & val=val*;
& & & & & & & & if(val&2000||val&200)
& & & & & & & & {
& & & & & & & && &led=0;
& & & & & & & && &h=1;
& & & & & & & && &loop();
& & & & & & & &&&}
& & & & & & & &&&else&&if(val&200)
& & & & & & & & {
& & & & & & & & & & & & digit[3]=val/1000;
& & & & & & & & & & & & val=val-1000*digit[3];
& & & & & & & & & & & & digit[2]= val/100;
& & & & & & & & & & & & val=val-100*digit[2];
& & & & & & & & & & & & digit[1]=val/10;
& & & & & & & & & & & & val=val-10*digit[1]; //此后选择带小数点编码
& & & & & & & &&&& & & & digit[0]=val*10/10;&&
& & & & & & & & & & & & /*将十进制数转换成字符*/
& & & & & & & & & & & & digit[3]=table[digit[3]];
& & & & & & & & & & & & digit[2]=table[digit[2]];
& & & & & & & & & & & & digit[1]=table[digit[1]+10];
& & & & & & & & & & & & digit[0]=table[digit[0]];
& & & & & & & &&&}
& & & && &}
& & & &&&else if(V2==0) //20V档
& & & &&&{
& & & && & & & & & val= 5000*val/255;
& & & & & & & & if(val&2000||val&200)
& & & && &&&{
& & & & & & & & & & & & h=1;
& & & & & & & & & & & & loop();&&& & & &
& & & & & & & & }
& & & & & & & & else
& & & && &&&{
& & & & & & & &&&& & & & digit[3]=val/1000;
& & & & & & & & & & & & val=val-1000*digit[3];
& & & & & & & & & & & & digit[2]=val/100;
& & & & & & & & & & & & val=val-100*digit[2]; //此后选择带小数点编码
& & & & & & & & & & & & digit[1]=val/10;
& & & & & & & & & & & & val=val-10*digit[1];
& & & & & & & & & & & & digit[0]=val*10/10;
& & & & & & & & & & & & /*将十进制数转换成字符*/
& & & & & & & & & & & & digit[3]=table[digit[3]];
& & & & & & & & & & & & digit[2]=table[digit[2]+10];
& & & & & & & & & & & & digit[1]=table[digit[1]];
& & & & & & & & & & & & digit[0]=table[digit[0]];
& & & & & & & & }
& & & && &}
& & & &&&else if(V3==0) //2V档
& & & && &{
& & & && && & & &&&val=5000*val/255;
& & & & & & & &&&if(val&2000||val&200)
& & & & & & & & {
& & & & & & & && && & & & h=1;
& & & & & & & & & & & & loop();
& & & & & & & &&&}
& & & & & & & &&&else
& & & & & & & & {
& & & & & & & & & & & & digit[3]=val/1000;
& & & & & & & & & & & & val=val-1000*digit[3]; //此后选择带小数点编码
& & & & & & & & & & & & digit[2]=val/100;
& & & & & & & & & & & & val=val-100*digit[2];
& & & & & & & & & & & & digit[1]=val/10;
& & & & & & & & & & & & val=val-10*digit[1];
& & & & & & & & & & & & digit[0]=val*10/10;
& & & & & & & & & & & & /*将十进制数转换成字符*/
& & & & & & & & & & & & digit[3]=table[digit[3]];
& & & & & & & & & & & & digit[2]=table[digit[2]+10];
& & & & & & & & & & & & digit[1]=table[digit[1]];
& & & & & & & & & & & & digit[0]=table[digit[0]];
& & & & & & & &&&}
& & & && &}
& & & &&&else if(V4==0) //200mV档
& & & && &{
& & & & & & & &&&val= 5000* val/255;//将伏转化为毫伏
& & & & & & & &&&if(val&2000)
& & & & & & & & {
& & & & & & & & & & & & h=1;
& & & & & & & & & & & & loop();
& & & & & & & &&&}
& & & & & & & &&&else
& & & & & & & & {
& & & & & & & & & & & & digit[3]=val/1000;
& & & & & & & & & & & & val=val-1000*digit[3];
& & & & & & & & & & & & digit[2]=val/100;
& & & & & & & & & & & & val=val-100*digit[2];
& & & & & & & & & & & & digit[1]=val/10;
& & & & & & & & & & & & val=val-10*digit[1];//此后选择带小数点编码
& & & & & & & & & & & & digit[0]=val*10/10;
& & & & & & & & & & & & /*将十进制数转换成字符*/
& & & & & & & & & & & & digit[3]=table[digit[3]];
& & & & & & & & & & & & digit[2]=table[digit[2]];
& & & & & & & & & & & & digit[1]=table[digit[1]];
& & & & & & & & & & & & digit[0]=table[digit[0]];
& & & & & & & &&&}
& & & && &}
& & & & void main()
& & & &&&& & & &
& & & & & & & & int j=3;
& & & & & & & &
& & & & & & & & unsigned char fuhao[4];
& & & & & & & & BEEP=0;// 蜂鸣器初始化'
& & & & & & & & led_display(dacl());//读值显示
& & & & & & & & for(i=3;i&=0;i--)
& & & && & {
& & & & & & & &&&& & & & if(digit[i]!=0xc0)
& & & & & & & && & {
& & & & & & & && & & & & & & & & & fuhao[j]=digit[i];
& & & & & & & & & & & & & & & & j=j--;
& & & & & & & & & & & & }
& & & & & & & & & & & & for(k=0;k&4;k++)
& & & & & & & && & {
& & & & & & & && & & & & &
& & & & & & & && & & & & & & & & & P0=0X01&&k;
& & & & & & & & & & & & & & & & P2=fuhao[k];
& & & & & & & & & & & & & & & & delay(10);
& & & & & & & & & & & & }
& & & & & & & & }
& & & & }& & & &&&
23:06 上传
点击文件名下载附件
下载积分: 积分 -1 分
57.12 KB, 下载次数: 14, 下载积分: 积分 -1 分
23:34:13  
回帖奖励 +20 分积分
我给你个东西,研究一下应该就知道了!!
23:34 上传
点击文件名下载附件
下载积分: 积分 -1 分
67.57 KB, 下载次数: 17, 下载积分: 积分 -1 分
23:46:56  
PCB在线计价下单
板子大小:
板子数量:
PCB 在线计价
我给你个东西,研究一下应该就知道了!!
前辈!我是想问问&&我的那个电压表使用手动切换量程的&&!切换了怎么不行!&&逻辑上感觉没问题!但运行的时候就不行了!
助理工程师
20:17:49  
好东西啊 谢谢楼主分享
20:44:44  
好东西啊 谢谢楼主分享
这个还没调试成功的!程序有问题的!!!!!!!
20:45:20  
好东西啊 谢谢楼主分享
这个还没调试成功的!程序有问题的!程序放入硬件仿真不成功的!
11:16:16  
好东西啊 谢谢楼主分享
23:07:20  
好东西谢谢分享
13:23:51  
& && && && &&&victory
19:30:49  
谢谢分享!
08:10:14  
学习一下,谢谢分享
等待验证会员
21:33:48  
学习学习~~~~~~~~
Powered by
供应链服务
版权所有 (C) 深圳华强聚丰电子科技有限公司

我要回帖

更多关于 交流电压表 的文章

 

随机推荐