基于MicroPython的PWM风扇转速控制方式
2021-11-02刘菁李相朋刘瀚旗邓中民
刘菁 李相朋 刘瀚旗 邓中民
摘要:传统的脉冲宽度调制(Pulse Width Modulation,PWM)控制风扇转速的方式都是通过汇编语言和C语言编写,但代码多、编写复杂、不易调试。Python语言相较而言,封装了大量的库函数,极大地降低了开发的难度,代码更简短,运行效率更高。MicroPython语言是Python语言的精简版,通过使用基于MicroPython开发语言和Pyboard_1.1_CN实验板,将Python编程语言直接运行在STM32F405单片机嵌入式开发板上,通过控制芯片端口发送高低电平,从而运用PWM方式控制风扇转速。实验结果表明,风扇的转速可以跟随不同PWM稳定运行。
关键词:MicroPython;Pyboard;PWM;嵌入式开发
中图分类号:TP393文献标志码:A文章编号:1008-1739(2021)17-69-3
0引言
早期的脉冲宽度调制(Pulse Width Modulation,PWM)控制风扇转速的方式都是采用汇编和C语言编写,在开发过程中,开发者需要掌握底层硬件的知识,如定时器,时钟分频和CPU芯片架构,同时还要求开发者熟练掌握C语言和汇编语言的编程技巧,对开发者要求较高[1-3]。随着处理器集成度的增强,现在可以采用代码简短易懂的Python语言进行编写,大大降低了初学者的学习难度。MicroPython是可以直接在微型控制器上运行的Python,是Python编程语言的精简版[4]。MicroPython与Python一样封装了大量库函数,开发者可以直接调用就可完成复杂的工作。基于MicroPython的PWM风扇控制相较于传统的C语言开发模式,编程简单、代码量少,可读性强且容易实现。
1硬件设计
PWM风扇控制系统的硬件主要包括Pyboard_1.1_CN STM32F405芯片电路和PWM风扇转速控制电路。
STM32F405芯片采用MicroPython编程,是一款带有浮点运算单元的由ARM公司设计的Cortex-M4 32位的处理器,该芯片具有1 MB容量的闪存、196 KB随机存取存储器和高达168 MHz的主频、多达140个具备终端功能的输入输出端口和15个通信接口,因其功能多、开发方便、价格便宜,所以采用此芯片作为开发环境,如图1所示。……
