完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
目前本人能做到让两位数码管正常显示,例如发送1234,数码管正常显示xx34。但是无法做到让4位数码管显示。
所以想请教下怎么做到,甚至输入任意8位数都能在数码管显示。下面附代码。 #include #define uc unsigned char #define ui unsigned int ***it duan=P2^6; ***it wei=P2^7; uc code table[]= //代码表 { /*0 1 2 3*/ 0x3f,0x06,0x5b,0x4f, /*4 5 6 7*/ 0x66,0x6d,0x7d,0x07, /*8 9 A B*/ 0x7f,0x6f,0x77,0x7c, /*C D E F 不显示*/ 0x39,0x5e,0x79,0x71,0 }; ui a; uc qian,bai,shi,ge; void delay(uc z) { uc x,y; for(x=z;x>0;x--) for(y=114;y>0;y--); } void init() { TMOD=0x20; //设置定时器1 工作方式2:八位自动重装 TH1=0xfd; //波特率9600bps/s TL1=0xfd; // TR1=1; REN=1; //允许接收 SM1=1; //设置串口工作方式1:10位异步通信 SM0=0; // EA=1; ES=1; } void main() { init(); while(1) { qian=a/0x1000; bai=a%0x1000/0x100; shi=a%0x1000%0x100/0x10; ge=a%0x1000%0x100%0x10; P0=0xff; wei=1; P0=0xfe; wei=0; duan=1; P0=table[qian]; duan=0; delay(5); P0=0xff; wei=1; P0=0xfd; wei=0; duan=1; P0=table[bai]; duan=0; delay(5); P0=0xff; wei=1; P0=0xfb; wei=0; duan=1; P0=table[shi]; duan=0; delay(5); P0=0xff; wei=1; P0=0xf7; wei=0; duan=1; P0=table[ge]; duan=0; delay(5); } } void uart() interrupt 4 { if(RI) { a=SBUF; //单片机从缓冲区取出接收到的数据a RI=0; SBUF=a; //单片机把数据a送到缓冲区 即发送数据给上位机 while(!ti); TI=0; } } |
|
相关推荐
16个回答
|
|
PS手机回复,有错字包含,高手可以略过。
|
|
|
|
qian,bai,shi,ge的除法应该不对
|
|
|
|
消隐时间设定的可以加长试试。
|
|
|
|
初学者可以用,这种程序上不了产品
|
|
|
|
你那个除法运算里面不用带0x,0x是十六进制
|
|
|
|
可以的,我试过,问题应该不在这。我认为自己问题是不会发送接收多帧数据,希望得到这方面的支持。 |
|
|
|
|
|
|
|
不是这个问题。问题在于目前我无法正确显示千位跟百位,而十位跟个位是正确的。 |
|
|
|
可能你没有理解我的意思。我想向单片机串口发送16进制数(这个数实际是我要在数码管上显示的),所以才这样操作。为的是将输入的数字分离,利用数码换的数字表输出。 |
|
|
|
|
|
|
|
|
|
|
|
这个问题主要在串口接收程序里~
|
|
|
|
|
|
|
|
其实目的不复杂额 补充下我的硬件信息:数码管是8位共阴的 单片机是STC89C52的 |
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
《DNESP32S3使用指南-IDF版_V1.6》第三十五章 摄像头实验
787 浏览 0 评论
《DNESP32S3使用指南-IDF版_V1.6》第三十章 DHT11数字温湿度传感器
755 浏览 0 评论
850 浏览 0 评论
【敏矽微ME32G070开发板免费体验】之原厂2812测试例程解析
1534 浏览 0 评论
1239 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12062 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-29 19:35 , Processed in 0.962342 second(s), Total 104, Slave 86 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号