完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
|
|
相关推荐
1个回答
|
|
#include
#include #define uint unsigned int #define uchar unsigned char ***it lcdrs=P2^4; ***it lcden=P2^6; ***it lcdrw=P2^5; ***it ADDO = P2^0; ***it ADSK = P2^1; uchar code table[] = { 0xC0,0xF9,0xA4,0xB0,0x99, 0x92,0x82,0xF8,0x80,0x90,}; void delay_ms(uint z) { uint x; uchar y; for(x=z;x>0;x--) for(y=110;y>0;y--); } unsigned long get_ADValue(void) { uchar i; unsigned long value=0; ADDO=1;//51 CPU I/O input enable ADSK=0;//enable AD while (ADDO); _nop_();//delay T1>0.1us for (i=0;i<24;i++) { ADSK=1; _nop_();//delay T3>0.2us if (ADDO) value++; value=value<<1; ADSK=0; _nop_();//delay T4>0.2us } ADSK=1; _nop_();//delay T3>0.2us ADSK=0; _nop_();//delay T4>0.2us value=value&0x007FFFFF; return (value); } void display(uchar qian,uchar bai,uchar shi,uchar ge) { P0=table[qian]; P2=0xFE;//1111_1110,display bit[qian] delay_ms(100); P0=table[bai]; P2=0xFD;//1111_1101,display bit[bai] delay_ms(100); P0=table[shi]; P2=0xFB;//1111_1011,display bit[shi] delay_ms(100); P0=table[ge]; P2=0xF7;//1111_0111,display bit[ge] delay_ms(100); } void main() { unsigned long num; float num_f; uchar qian,bai,shi,ge; while (1) { num=get_ADValue(); num_f=num/8388607.0*4.80;//(2^13-1)*Power Voltage num=(num_f*1000-64.044)*1/0.763; qian=num%10000/1000; bai=num%1000/100; shi=num%100/10; ge=num%10; display(qian,bai,shi,ge); } } |
|
|
|
只有小组成员才能发言,加入小组>>
509 浏览 0 评论
普中科技F28335开发板每次上电复位后数码管都会显示,如何熄灭它?
380 浏览 1 评论
939 浏览 0 评论
TMS320F28377D:新做了以377d为芯片的板子,上电后芯片复位引脚出现方波请问如何解决?
2111 浏览 0 评论
TPS55340通电后输入端保险丝烧断,芯片输入和GND之间短路
3857 浏览 4 评论
28浏览 3评论
CC3100BOOST使用CC3200lunchXL进行烧录
889浏览 2评论
136浏览 2评论
171浏览 2评论
149浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-20 22:34 , Processed in 0.815985 second(s), Total 78, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号