STM32向GPIO口输入一个高低电平如何读取此时的电平?
发布时间:2023-12-26 21:43 作者:admin 来源:未知 点击: 标签: 一个 如何 口 向 高低 输入 stm32 电平 GPIO
首先,最浅的一个层次,会使用库函数对GPIO进行最简单的配置。然后能运行一个跑马灯,读取一个按键输入。这步通了,也就完成了hello world 任务。
第二个层次,可以用库函数,结合一定的算法,和其他外设,使用io完成一些复杂的功能。比如使用定时器和io可以做pwm;使用exti和io实现外部输入中断,使用多个io组成并口,实现并口数据传输,用来控制lcd;或者模拟一些总线时序,比如i2c,spi等。
第三个层次,从硬件层面吃透io,因为不懂硬件的软件工程师不是好嵌入式工程师。你得知道GPIO各种工作模式有什么区别,pp,od,ipu,ipd,floating这些模式对应的电路都是什么样的,都应该什么时候用。熟能生巧,硬件软件融会贯通。很多人做了多年嵌入式,仍然搞不清楚什么时候该用od,什么时候该用pp,什么时候该用floating ,尽管有的时候你选错了可能不影响功能,但是有的时候你不知道这些原理就可能被坑死。
最后,再一点的,如果你的项目预算或者板子尺寸只能允许你用某一封装的芯片,你要有能把芯片每一个引脚功能都榨干的能力,什么remap,jtag,boot0,boot1之类的特殊引脚都用上,挑战一下极限。另外,stm32有些引脚是兼容5v电平的,有些则不能。用好这些功能在应对一些极限需求时是可以变不可能为可能的。
总之,做嵌入式,一定要软硬兼修,加油吧!