完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
这是仿真原理图 #include #include #define uchar unsigned char #define uint unsigned int ***it dxla=P2^0; ***it wxla=P2^1; ***it cs=P3^0; ***it rd=P3^1; ***it wr=P3^2; uchar code num[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x77,0x7c,0x39,0x5e,0x79,0x71}; void delay(uint ms) //延时程序 { uint i; for(;ms>0;ms--) { for(i=125;i>0;i--) {;} } } void display(uchar numb) //三位 数码管显示部分的程序 { uchar bai,shi,ge; bai=numb/100; shi=numb%100/10; ge=numb%10; wxla=1; P0=0xfe; wxla=0; P0=0x00; //消影 dxla=1; P0=num[bai]; dxla=0; P0=0xff; delay(5); wxla=1; P0=0xfd; wxla=0; P0=0x00; dxla=1; P0=num[shi]; dxla=0; P0=0xff; delay(5); wxla=1; P0=0xfb; wxla=0; P0=0x00; dxla=1; P0=num[ge]; dxla=0; P0=0xff; delay(5); } void main() { char numb; uchar a; cs=0; //cs位片选段 直接将cs拉低即可 while(1) { wr=1; _nop_(); wr=0; _nop_(); //启动AD转换 wr=1; for(a=15;a>0;a--) { display(numb); } //显示数码管 也是延时作用 P1=0xff; //p1口读前置一 rd=1; _nop_(); rd=0; _nop_(); numb=P1; //读出P1口到numb rd=1; } } 上面是程序 要实现的功能是AD转换 在数码管上显示数值 AD芯片是adc0804 用protues仿真时数码管开始可以显示数值 但调节滑动变阻器改变电压后数码管显示没有变化 求大神指点!!!!! |
|
相关推荐
4个回答
|
|
求大神 自己顶
|
|
|
|
大半夜的,我也没多看。我怀疑你的参考电压那边有问题,图上参考电压使用了二分之一的VCC,然后电位器连接电压输入端的电压范围却是0~vcc。一般来说,输入的电压最大就只有参考电压的样子吧。你这里貌似ADC的数字电路和模拟电路都没分开来,不知道做成硬件会不会出问题哦,干扰挺大的。
|
|
|
|
你与KEIL联合调试过了没?当改变电阻值时,AD采样输出是否有变化?
|
|
|
|
学习了
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
6268 浏览 3 评论
7532 浏览 1 评论
7773 浏览 0 评论
Protues中自己封装的芯片元件无Program File、Clock Frequency选项怎么解决,求求大神了!
9581 浏览 1 评论
基于51单片机的车辆倒车雷达报警系统,HC-SR04超声波测距,全套资料
1282 浏览 0 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-26 10:58 , Processed in 0.739024 second(s), Total 86, Slave 66 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号