STM32---显示屏、对射式红外传感器计次、旋转编码器计次

1、今天学习的第一个是LED屏的显示

这个比较简单,主要是先将OLED初始化,然后进行显示屏幕。

当字符串的数字大于或小于输入的数据时,会从左到右进行改变,譬如,字符串设置为4,输入数据23,OLED显示0023,输入数字34562,OLED显示4562,以此类推。如果想删除某个字符,也可以使用OLED.ShowString这个函数,字符为空格即可进行删除。

2、对射式红外传感器计次

今天学习的第二个就是用EXTI进行中断,效果如视频,遮光一次就记一次数,反之不计

VID_20240722_121654

主要通过以上代码,分别将GPIO、AFIO、EXTI和NVIC进行设置

首先对于中断来说,类似于以上的关系,我们可以将以上方式假想为医院叫号系统,CPU为医生,而NVIC作为医院的叫号系统,需要合理规划先进行那个中断请求,并不是谁先到就谁先中断,而是根据病人的严重情况进行一个优先级的分类,通过优先级进行排序,然后传给CPU进行中断。

然后就是本节学习的最主要的过程,分为4步,首先GPIO进行中断,在设置中断接口时,最好不要把A1和B1都设置为中断口,因为GPIO是将所有的接口1放到同一个通道,然后由AFIO(当作数据选择器)去选择其中一个作为通道口,然后传输16个给到EXIT,EXIT主要有两种,一种是中断响应,还有一种就是事件响应。

如下所示:

最后介绍了一下旋转编码器的功能

通过正交方波去分辨究竟是正转还是反转,A B相差90°,进行分辨。

VID_20240722_204811

这个是旋转编码器计次。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hssfscv

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值