嵌入式系统作业1 2

作业 1 和 2 主要使用定时器的中断功能。

作业1

作业 1 我并不会使用软件延迟完成,否则会影响主循环中检查按键。因此使用了多达 3 个时钟,每个时钟管一件事,根据按键动作决定谁动谁不动,有点蠢。

至于同时按下 2 个按键,我只好自己写了一个函数,可以一并返回多个按键的状态。

项目地址:
https://coding.net/u/ufoshen/p/STM32-homework1/git?public=true

作业2

让用时钟 TIM2,然而只用这一个我做不到,因为呼吸灯要依靠输出 PWM+调节占空比才能实现,PWM 需要映射到 LED0 所在的 PB5 上,这个根据我查表的结果,是不能直接重映射过去的。因此 PWM 就用 TIM3 来输出了。

然后 TIM2 身兼多职,在不同模式下干不同的事情,反转灯、反转蜂鸣器、修改占空比。用了三个全局变量,方便多了。

地址:
https://coding.net/u/ufoshen/p/STM32-homework2/git?public=true

这是我第一次写嵌入式,也不太了解工作的深层原理,只是先参考书上的案例,自己比葫芦画瓢,把功能实现了出来。

欢迎批评指正喵!

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,099评论 19 139
  • 用到的组件 1、通过CocoaPods安装 2、第三方类库安装 3、第三方服务 友盟社会化分享组件 友盟用户反馈 ...
    SunnyLeong阅读 14,736评论 1 180
  • -(void)webView:(WKWebView *)webView didReceiveAuthenticat...
    sttech阅读 1,783评论 0 1
  • 所见即所得,尽量逆光拍就会透彻,有光才有影,特别是拍透光物体。
    植物姥阅读 153评论 0 0
  • 永无止境 《拆掉思维里的墙》,很牛逼!听了《超级个体》这么久,居然从来没有看过《拆掉思维里的墙》这本书,真是失策,...
    沙师弟23阅读 372评论 0 0