完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
本帖最后由 nanjingjing 于 2012-11-19 14:45 编辑
有图示: 程序 就是这些程序; 有个51的开发板;编写好后,下载到板子上调试; 为什么一直这个板子上的8个数码管一直显示8个 “8” 也不流动; 很是不解啊?? 小弟刚学51勿见怪; 不知说的清楚否?? 程序如下: #include #define uchar unsigned char #define uint unsigned int uchar code table[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 }; //定义编码数? void delay(uchar); ***it wela=P2^7; //位选 ***it dela=P2^6; //段选 uchar i; void main() { wela=1; P1=0x00; wela=0; while(1) { for(i=0;i<16;i++) { dela=1; P1=table; dela=0; delay(1100); } } } void delay(uchar a) { uchar x,y; for(x=a;x for(y=0;y<100;y++); }
|
|
相关推荐
10 个讨论
|
|
|
贴文字不行吗,看不清
|
|
|
|
|
|
|
|
|
要是楼主的初衷是是 让8个数码管依次扫描显示的话, 位选的使用是不正确的,
要是本来就做个小测试,8个数码管一起显示同样的数据的话,ok,可以这么用 楼主说,为什么总是显示 8 ,我估计是 延时太短了,可以把延时加长试试。。。 |
|
|
|
|
|
|
|
|
楼主,这两个P2^6和P2^7,没有问题哦 我不让他流动,只显示一个数码管亮,是没问题的; 就是在想让他如程序中,让他流动时,一直显示一个字不动? 很是不解/ |
|
|
|
|
|
|
|
|
楼主,能不说的清楚些? 是啊,就是不能依次扫描啊,如果只让一个管子亮,是没问题的、位怎么选 , 谢谢 我试下,加上延时, 这是几个管子的接法, 请指示?
|
|
|
|
|
|
|
|
|
里面用for语句就是不行啊,,一直显示一个“8”
而用if 语句,就可以依次扫描,但是,出现的不是“0-F” 是乱码,不知为何 ?请高手指教? #include //#define DataPort P0 //定义数据端口 程序中遇到DataPort 则用P0 替换 #define uchar unsigned char #define uint unsigned int ***it dula=P2^2;//定义锁存使能端口 段锁存 ***it wela=P2^3;// 位锁存 uchar code dofly_DuanMa[]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 }; // 显示段码值01234567 uchar code dofly_WeiMa[]={ 0xfe,0xfd,0xfb,0xf7, 0xef,0xdf,0xbf,0x7f};//分别对应相应的数码管点亮,即位码 void Delay(uint t); //函数声明 /*------------------------------------------------ 主函数 ------------------------------------------------*/ main() { unsigned char i=0; wela=1; //打开位远 P0=0xcd; wela=0; //位锁存 while(1) { dula=1; //打开段选 P0=dofly_DuanMa[i]; //取显示数据,段码 i++; dula=0; //段锁存 Delay(60000); // 扫描间隙延时,时间太长会闪烁,太短会造成重影, //这里故意延长时间,方便直观看出动态扫描原理 if(i==16) i=0; //检测8位扫描完全结束?如扫描完成则从第一个 //开始再次扫描8位 } } /*------------------------------------------------ 延时函数,含有输入参数 unsigned int t,无返回值 unsigned int 是定义无符号整形变量,其值的范围是 0~65535 ------------------------------------------------*/ void Delay(unsigned int t) { while(--t); } |
|
|
|
|
|
|
|
|
很是奇怪,为什么是,乱码呢?
开发板应该不会有问题啊 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
你的dela=1,但是dela不是断码么,这样直接赋值成1了,所以ABCDEFG都是高电平,当然会一直全亮啊
|
|
|
|
|
|
|
|
你正在撰写讨论
如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
234 浏览 0 评论
514 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
826 浏览 0 评论
1366 浏览 2 评论
814 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16911 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 04:46 , Processed in 0.864960 second(s), Total 55, Slave 47 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖