STM32学习随笔 12.13
慢摸摸的学习
之前跟着B站江协科技UP学51感觉没啥,学到STM32就感觉很吃力,又想钻研清楚,看到定时器TIM章节零零总总差不多耽搁快进一个月了
总结下近期学到的东西
学习掌握多元条件运算符,这样可以省略很多if()else()或者switch()case;语句
示例:
i -= (i > 10000) ? 10000 : (i > 1000) ? 1000 : (i > 100) ? 100 : (i > 10) ? 10 : 1;
i += (i < 10) ? 1 : (i < 100) ? 10 : (i < 1000) ? 100 : (i < 10000) ? 1000 : 10000;
(Speed > 0) ? LED_On1(): (Speed < 0) ? LED_On2() :LED_Off();
(Speed > 0) ? Angle-=Speed : (Speed < 0) ? Angle-=Speed :Angle;
学习掌握普通定时器TIM2/3/4
这里说到定时器再提一句提醒自己,先提前选择器件再确认使用定时器
为节约学习成本(主要是贪便宜QAQ)购买的STM32F103C6T6,习惯性的学习总结及糅合之前所学的东西做个联动,在学习编码器测速后就想着将舵机也添加进来
手转编码器的值变为控制舵机的角度,因为示例的课程已经使用了TIM2和TIM3,舵机之前的示例也是使用的TIM2,舵机和中断函数同时使用TIM2造成冲突,就想着怎么解决
然后就引入TIM4,后来在单片机上死活不动,卡壳了快进两天时间,才发现一个重要问题
C6T6没有TIM4
还好手头有合宙的CBT6,验证了使用TIM2/3/4的代码
当然使用C6T6也可以达到一样的实验效果,就是使用延时函数代替中断起到定时的作用,具体可以看下方链接工程源码
https://www.alipan.com/s/q275fBaHvU7
测试的视频链接
https://b23.tv/b2eIdNQ
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端