适合学习的基于stm32系列--按键控制心形红绿流水灯的转换

一.硬件设计

 

1,按键电路

在这次设计中,用到的按键只有WK-UP和KEY2两个按键,按下WK-UP按键红灯闪烁,按下KEY2按键绿灯闪烁。

         WK_UP电路采用的是下拉模式,常态下是低电平,当按键按下时低电平转化为高电平,所以是上升沿触发的方式;KEY1--KEY3采用的是上拉模式,常态下是高电平,当按键按下时,由高电平转化为低电平,所以是下降沿触发的方式。

510c28e32d0e45f08886e1ce64983056.jpg

 KEY0->PH3 上拉输入

KEY1->PH2 上拉输入

KEY2->PC13 上拉输入

WK_UP->PA0 下拉输入

 

流水灯电路

三脚二极管:如图所示的这中采用的是共阴极的封装方式。中间引脚为阴极,两边为阳极。当较长的引脚输入高电平时,二极管发红色光;当较短引脚输入高电平时,二极管发绿色光。

47a688e97013461489ab24144c9fe7ae.jpg

 

连接方式:采用的是共阳极连接,分别把二极管的两个阳极用电烙铁连接到一起,再用一根线引出,阳极初始化为高电平,通过给阴极输入高低电平来控制灯的亮灭。并且编写按键程序,通过按键输入,来控制红色光和绿色光的反转。

00a7e2b47a82494f8159f62f434bc9c7.jpg

27d4f76fa36d4e8ab3279e8e6b338eeb.jpg 

 二.软件设计

1,主函数程序设计

所需文件

18991d0622794446bf1a2819a9e1b374.jpg

 主函数程序介绍

在主函数中,首先我们要做的是对我们所用到的库函数,延迟函数,时钟,led灯函数和按键函数进行初始化,初始化之后,进入while循环,由于while里边参数一直为1(即真),所以单片机就一直执行while循环里边的程序。

#includ

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值