单片机小作品之倒车雷达2:按键+键值选择led或者蜂鸣器模式

在倒车雷达1里,我完成了测距和显示,接下来我加入了独立按键、led灯和蜂鸣器辅助测量。

按键部分代码:

按键在接触和分离的瞬间会出现瞬时的振动或者按键引脚与单片机IO口之间存在一定的电容和电感,也会产生类似的振荡。所以要经过消抖才会稳定,消抖方法有硬件消抖和软件消抖,在这里我采用了软件消抖。

key1对应键值keynum=1 是led模式     key2对应键值keynum=2 是蜂鸣器模式

led灯部分代码:

led模式里我采用switch来选择我的亮灯数量,依据是经过超声波传感器最后得到的distance值(mm)/50,得到的是每5cm一个模式

注意:distance要转换成unsigned int 类型,不然会出错

蜂鸣器部分代码:

因为我用的是普中的开发板,我的蜂鸣器是和LED5连在一起,所以电平翻转越快,LED5闪得越快。在这样我跟LED的部分代码一样用的是switch来选择翻转速度,也是每5cm一个模式。

作品展示区:

没有按下key时:

按下key1时:

按下key2时:

特别注意:

在编译后显示如果你的code>8200,生成的.hexwen文件会显示文件大小超出程序区范围。导致51开发板错误显示你的代码效果(.hex)

谢谢大家观看,有错误或有可以优化的地方请大家指出,我会修改。       

百度网盘:链接:https://pan.baidu.com/s/14bIooOeW7bPZvZGUacXfYA?pwd=9wma 
提取码:9wma

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值