问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

51单片机编程,用C语言。

发布网友 发布时间:2022-04-25 11:23

我来回答

3个回答

热心网友 时间:2024-10-07 18:30

给你一个矩阵键盘的参考程序
行列扫描:通过高四位全部输出低电平,低四位输出高电平。当接收到的数据,低四位不全为高电平时,说明有按键按下,然后通过接收的数据值,判断是哪一列有按键按下,然后再反过来,高四位输出高电平,低四位输出低电平,然后根据接收到的高四位的值判断是那一行有按键按下,这样就能够确定是哪一个按键按下了。
/****************************************************************************
*函数名
:KeyDown
*函数功能
:
检测有按键按下并读取键值
*输入
:

*输出
:

****************************************************************************/
voidKeyDown(void)
{
char
a=0;
GPIO_KEY=0x0f;
if(GPIO_KEY!=0x0f)//读取按键是否按下
{
Delay10ms();//延时10ms进行消抖
if(GPIO_KEY!=0x0f)//再次检测键盘是否按下
{
GPIO_KEY=0X0F;
//测试列
switch(GPIO_KEY)
{
case(0X07):
KeyValue=0;break;
case(0X0b):
KeyValue=1;break;
case(0X0d):
KeyValue=2;break;
case(0X0e):
KeyValue=3;break;
}
//测试行
GPIO_KEY=0XF0;
switch(GPIO_KEY)
{
case(0X70):
KeyValue=KeyValue;break;
case(0Xb0):
KeyValue=KeyValue+4;break;
case(0Xd0):
KeyValue=KeyValue+8;break;
case(0Xe0):
KeyValue=KeyValue+12;break;
}
while((a<50)&&(GPIO_KEY!=0xf0))//按键松手检测
{
Delay10ms();
a++;
}
}
}
}

热心网友 时间:2024-10-07 18:31

请问为什么开头要定义unsignedchar类型呢,不是可以用unsignedint代替吗??
在单片机中char类型的数据有什么作用呢??
我想说的是,单片机不是通用pc机
虽然说现在的单片机内部的ram越来越大但是比起电脑里还是有限的,
unsignedchar是可以用unsignedint代替,但是这样占用的字节数太多了。
字符型的1个字节长,而整型是2个字节长。
单片机的char型和c里面的不太一样,
因为你用的52是8位的单片机,而char型是8位,所以操作方便。
欢迎追问
不会,识别int型的低八位

热心网友 时间:2024-10-07 18:24

如果你不急,我明天晚上可以帮你写一下,给你一点提示,OX02H.THO=(65536-400)\256.TLO=(65536-400)%256,
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
色彩中蓝色、红色、黄色除了加白色以外还有什么办法提高明度 色彩不敢调亮怎么办? 色彩如何提亮 男朋友惹我生气了 事后一点悔意也没 都在气头上 我不小心打男朋友了 他... 解签:为人处事莫亏心,暗室之中有灵应,一时得意反成失,半点悔改胜似金... 我手机之前一段时间由于欠费停机了 前几天我充了50元进去怎么还是... 撕名牌可以用哪些超能力技能? 为什么5孔插座带开关,安装好之后,灯有电,插座不通电? 怎么把照片内存变小 图片内存变小的方法 百度地图导航如何连接车蓝牙 百度地图导航连接车蓝牙方法 51单片机,C语言编程请教 51单片机 C语言编程 51单片机的编程语言汇编和C各自有什么好处,那种更好? 给51单片机编程序,用basic语言好还是c语言好 51单片机C语言程序注释标注(写全) 51单片机怎么速记编程语? 五一单片机c语言编程 51单片机入门编程(汇编语言) 51单片机汇编语言编程? 51单片机用的是什么编程语言? 2600X内存条用2666的和3600的差多少?有必要吗? 我有800股上海银行股票,新股上市后能卖出吗? 怎么把手机里百度云上下载的歌移到酷狗音乐里啊 股票型基金的风险 怎么把百度云里的音乐存到音乐里去? 科创板50etf申购配额和上市了买的区别? 怎么把百度网盘里的mp3导入到qq音乐里去播放? 为什么新版本的百度网盘里保存的音乐不能用手机弄到别的音乐软件... 请问怎么把百度网盘里的音乐导出到酷狗音乐里? 什么是基金封闭期,封闭期一般多久 这是51单片机编程语言。这个code是什么作用?在C语言中怎么没有?_百度... 51单片机的编程问题? 4个蓝色钻石的商家怎么样,淘宝的, ...一个只有1个黄冠,另一个金牌用户+4个蓝冠,该买哪家东西? 淘宝买家信用一个蓝钻是多少次评价呀 淘宝网升级到一个皇冠需要多少好评 2600x和3600x那个性价比高点 梦见吃花生和煮花生代表什么? 我梦见和男朋友一起吃花生,还准备煮着吃? 梦见自己在烧大活煮花生吃 梦见去品尝煮花生但是有臭味? 怎么建设ca认证中心?大概需要多少软硬件投资? 国内最好的代码签名证书是哪个CA代理的? 国内哪家CA的SSL证书品牌最多?希望全方位的了解SSL证书品牌市场_百度... 瑞龙r52600好还是r33100新CPU好? 马姓男孩起名2014.6.7日8:30分出生 7nm的R5 3600为何跟12nm的2600功耗一样? 华为matebook备份的c盘怎么恢复 惠普2600、3600跟2621有什么区别? 楚雄市水务局微信公众号