[STM8] 实验分享-【STM8-SO8-DISCO】4外部中断

[复制链接]
560|0
 楼主| 年轻的国王 发表于 2020-8-6 22:47 | 显示全部楼层 |阅读模式
在上一篇点灯中,已经可以驱动开发板上的用户LED灯了。除了LED灯,开发板上还提供了一个用户按键,在开发板出厂自带的固件中,就可以使用这个按键来控制led灯闪烁的频率。
接下来我们就自行实现一个更简单的,通过按键控制LED点亮和熄灭的功能。
如果需要使用按键,之类可以使用STM8的外部中断实现。
170710yrmg6m9mvr7bybz0.jpg
拷贝外部中断实例中的所有文件。
170719cp9zowrfog2fly2o.jpg
在模板工程总粘贴,覆盖原来的同名文件。
170808so065k106brixz59.jpg
看开发板原理图,按键是连接到SOP8的7号管脚的。LED灯连接到了SOP8的5号管脚。
170809h7or6k7rhh7668a7.jpg
对于STM8S001来说,按键对应的PC3。LED对应PA3。
170811vnj4epg1n0sapaom.jpg
修改main.h中对于LED和Button的定义,改为开发板所使用的PORT和PIN,注释掉未使用的IO口。
170812eo3f2wefa8of68s5.jpg
在main.c中修改GPIO配置函数,配置LED和Button。
170813mz6kqqwfy69ylqfq.jpg
修改man函数中的中断配置。
170821y915jpiz3p5hhhip.jpg
修改stm8s_it.c中的TLI中断服务函数,注释掉led等的翻转函数。
170824t2flz6gz4il3dizr.jpg
修改PORTB中断处理函数为空,在PORTC中断处理函数中增加判断按键并翻转LED灯的代码。
071336a8rub11lb7bj17bu.jpg
此时在开发板上按动按键,可以控制LED的电量和熄灭了。
总结:STM8相对于STM32来说,内核架构简单,偏上设备使用起来也更简单,只需要简单的几行代码,就可以驱动按键和LED了,结合STM8的价格优势,非常适合应用在对于性能要求不高的简单控制场合使用。本文转载于【STM8-SO8-DISCO】4外部中断
http://www.stmcu.org.cn/module/forum/thread-619213-1-1.html


您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:每天都要开心呀

210

主题

505

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部