hot51增强型单片机开发板pcb输入程序后灯和数字管很暗。为什么??

> HOT51单片机开发板小组
管理员:&人数:25小组积分:128简介:HOT51单片机开发板小组,相当于一个论坛小组公告小组暂无公告.
小组最新帖子
成员推荐的网站资源
成员最新动态
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
浏览了文章:
EDN China官方微信
扫一扫关注,获取电子新知,设计灵感
IC厂商小组
在线研讨会
赞助商链接
2016 EDN China -- Use of this website is subject to its terms of use.
京ICP备号-4 |
京公网安备37 |
新版社区已上线,旧版论坛、博客将停用
1、为防数据丢失,旧版论坛、博客不再接受发帖;
2、老用户只需重设密码,即可直接登录新平台;
3、新版博客将于8月底完美归来,敬请期待;
4、全新论坛、问答,体验升级、手机阅读更方便。51单片机程序(c语言版),按键矩阵控制数码管显示数字。十位数显示不全_百度知道
51单片机程序(c语言版),按键矩阵控制数码管显示数字。十位数显示不全
& &P0=led[single]!=0xf0)&single=num%10;key=5;&0xd0;key=9;led2=0; &void& &0xf0; & &key=3;temp=P1&0x70; & & &nbsp,/zhidao/wh%3D600%2C800/sign=3ecdcada023b5bb5bef901/b21cd &0;& {switch(temp)& case&nbsp://g://g; &key=13:&0xf0; & {& {switch(temp)&0xd0; & & case&& & & & & & & & && }return& case& &&0xf0;key=8; &led1=P2^0;sbit& &nbsp.jpg" target="_blank" title="点击查看大图" class="ikqb_img_alink"><img class="ikqb_img" src=" & &0xb0,只有在我按键的过程中显示下12; }return&main(){unsigned& & & &while(1)& {& case&& & led1=1; &&nbsp!=0xf0)& &key=11; &if(temp:& &key=15; & &nbsp:&led2=1;key=1,还是要添加一些程序; case& &key=12; case& &led2=P2^1; & & {switch(temp)&char&led_display(unsigned& &key=14; & & && &nbsp.reg51;P1=0. & && & num); & &int& & &P1=0temp=P1& &sbit&char&nbsp.jpg" esrc="&0xe0; &led_display(led_key); & {switch(temp)&key=4;if( & & &if(temp=P1&0xf0; & }P1=0 }P1=0xf7; & & &delay--){P0=led[ten]; &nbsp!=0xf0)&void&0xb0; & & & &char&& & & num){unsigned& case&char&nbsp.& &nbsp,0x06; & }return&nbsp,0x66;& case& & & & & case& &0xe0; }return&&led1=0:& & &nbsp:&char& & & {&for(delay=200; case&& &0xe0; & & & &nbsp.led_display(unsigned& & & &/zhidao/wh%3D450%2C600/sign=bb3dc60191c/b21cd }}void&& case&led_key:&& && & case& & &nbsp,是我程序出了问题; & &key_scan(void){unsigned&&char& &&nbsp:&0xb0;key=2; &ten=num/10; case&temp=P1& && & & & && &/////////////////////////////////////////unsigned&&& & & &unsigned&nbsp!=0xf0)& & &nbsp:&key=10;0xe0; case&key,数码管就会显示02,0x7f; &nbsp:& & & case& & & &nbsp,0x5b; & &0xd0;char&& & & {led_key=key_scan();&char& & {&& & &0x70;0x70; &0x70:& & & &0xb0;&nbsp:&key=6; &nbsp:&&delay=100,0x07,0x6d, & & &nbsp,但是如果我松开按键12;key=16.h& &nbsp,0x6f}; & & &}}& & &nbsp,0x4f;& &nbsp.jpg" />比如说我按了键12;&& & }}<a href="& & &nbsp.led[]={0x3f;unsigned& & &key=7; /zhidao/pic/item/b21cdif(temp:&nbsp://g. key_scan(); & }P1=0 &nbsp:& case&&nbsp:& &nbsp#include&lt
提问者采纳
break: key=11!=0xf0)
{switch(temp)
case 0xe0;
case 0xd0;/temp=P1&0xf0;//10;/
试试unsigned char led[]={0x3f;
case 0x70;led1=0;delay=100: key=12;&#47: key=16: key=13;&#47,0x06: key=14;/temp=P1&0xf0;
}P1=0xfb: key=7;delay&gt,0x5b,0x4f;ten=num/unsigned char key_scan(void){P1=0////led2=0;void led_display(unsigned char
num)!=0xf0)
{switch(temp)
case 0xe0: key=9;/}} /
}P1=0xfd: key=8#include&
case 0xb0;/led_display(key);led2=1;/&#47: key=2;
case 0xd0;/
case 0x70;
break!=0xf0)
{switch(temp)
case 0xe0;///reg51;/single=num%10,sbit led1=P2^0;
}P1=0xf7;/
}}void led_display(unsigned char
num){unsigned char ten: key=5;if(//sbit led2=P2^1;P1=0;if(///temp=P1&0xf0;delay--){P0=led[ten];0;
case 0xd0;//
&#47.h&/&#47,0x6f};
case 0xd0;
}/for(delay=200;temp=P1&0xf0;unsigned char
key_scan(),&#47: key=3;&#47,0x66;//if(temp: key=6;
}return key!=0xf0)
{switch(temp)
case 0xe0;&#47,0x6d: key=10: key=1;
break: key=4;P0=led[single];&#47,0x07,0x7d: key=15;/if(temp,0x7f;/
case 0xb0;void main(){unsigned char led_
case 0xb0;
case 0x70;
case 0xb0;//while(1)
{led_key=key_scan();
我试了之后可以了,请问一下你在哪里修改了,我竟然没找到
主函数 led_display(key);
unsigned char temp, 定义成全局
恩恩,我也刚找到,你就回答了。你把unsigned char temp,移到前面的作用是什么?还有led_display(led_key);改了led_display(key);的作用是什么?为什么原来的不行啊?
移到前面 是为 全局变量,程序中 所有函数 都 能利用,所以不会受到影响。
提问者评价
我明白了,谢谢你。
其他类似问题
为您推荐:
其他1条回答
这样才能读数据,你这里面希望是无输入时引脚为0。
记住引脚悬空,可能1,又没有上拉或下拉电阻的时候不要读数据,这个时候不能用来读取数据,是1,必须将用来读的引脚加上下拉电阻拉到地。没有下拉电阻,可能0 ,如果没有下拉电阻。,所以你需要4个下拉电阻在键盘上。,引脚是高组态,所以用下拉,有上拉无输入时,下拉式0。。。,没有被按键时,这时候读的东西是不会出现你想要的结果
那这几个下拉电阻应加到哪?而且为什么只有当案件为10,到16十位会有变化,而0到9没有变化?
没看你的程序,你的程序和我用的AVR程序不一样,你这个是51单片机,51是I&#47;O不用配置方向的,寄存器是双向的,你的程序按键有效电平是低电平,如果是这样不用下拉电阻,也不用上拉(51,P1口已经有上拉电阻),你这个问题是当你按下键盘,编码正常,但没有按键仍然会读,但是用来读的引脚会仍然读到数据,主要是端口寄存器没有置位。。。比如按下12,P1=0x7b,但不按键就是0x7b(第一次扫描就得到了编码),所以你只要送键盘松开之后永远是第一行的那几个数。。。
你想改变这种情况,需要附加些程序,其实也简单,只要清楚这个7就行,把他改成F,
led_key=key_scan();后加一条,P1=0xff;
51单片机的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁你好 您有HOT-51增强型单片机开发板的原理图及其他资料吗 能不能发给我一份 谢谢_百度知道
你好 您有HOT-51增强型单片机开发板的原理图及其他资料吗 能不能发给我一份 谢谢
提问者采纳
板网 - 开发板大全 | 开发板和评估板选型的首选参考网站
来自团队:
其他类似问题
为您推荐:
单片机开发板的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁21ic官方微信
您现在的位置是:
& hot51开发板功能详解【图】
单片机相关
热门关键词
hot51开发板功能详解【图】
hot51开发板功能详解【图】
部分文件列表
该用户分享的资料
共有 0 条评论
全 部 评 论&#xe621; 上传我的文档
&#xe602; 下载
&#xe60c; 收藏
该文档贡献者很忙,什么也没留下。
&#xe602; 下载此文档
正在努力加载中...
HOT-51增强版开发板使用说明
下载积分:200
内容提示:w
文档格式:PDF|
浏览次数:553|
上传日期: 12:10:35|
文档星级:&#xe60b;&#xe60b;&#xe60b;&#xe612;&#xe612;
该用户还上传了这些文档
HOT-51增强版开发板使用说明
官方公共微信}

我要回帖

更多关于 单片机开发板 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信