计算机自定义结果,单片机,设计一个计算器,能够自定义按键键值,并能通过串口调试助手将执行结果显示到计算机上。...

你的这个题目范围太大了。限于篇幅无法在细节上一一讲明白。

主要的思路如下:

硬件设计:单片机需要能够检测键是否按下,就需要搭建电路。通常情况下按键有两种方式:一种是直接将键通过电阻电容连接到单片机IO引脚上,这种方式适用于按键数量不太多或单片机引脚数量足够多的情况。另外一种是将键纵横排列成按键网络,通过扫描的方法检测按下的是哪个键,这种适用于键数量较多,或IO引脚不足的情况,比如你的图上有4X4=16键,直接连接的方法需要16个IO口,网络的话,只需要4+4=8个IO口即可完成。具体哪种根据需要来,具体电路网上搜索。

另外就是通讯电路,这个网上有好多RS232的,不再细说

算法设计

由于是键盘,除了检测到哪个键按下外,还应该包含一定的消除抖动的能力,防止按下一个键却触发好多次同样的按下此键的情况。

另外需要在单片机内存中建立“键-键值”的对应关系表,因为你要求能够自定义键值。

通讯

你没有提到通讯是实时发送还是按下一个键,比如回车键后才发送。

由于键盘的速度比较低,为了简单,可以采用检测到一个键按下后就发送一个键的代码。

根据你所采用的单片机的不同,所用的对通讯的初始化、发送等代码也有所不同。具体不再细说。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值