网上很多视频都是教学F1的,然后看了之后看人家有教固件库,搜了半天没找到L4的在哪儿
注射液滴速检测模块实物图如下:
模块的原理图如下:
LM393是一个运算放大器,起着电压比较器的作用。当槽型光耦之间没有遮挡物时,红外接收管导通,LM393的正向输入端拉到地,此时正向输入端的电压低于反向输入端的电压,D0输出一个低电平,此时LED是亮的。同理,当槽形光耦之间有遮挡物时,LM393的正向输入端与地的电阻非常大,此时改点电位接近VCC,比反向输入端电压高,D0输出高电平,LED是灭的。
其与stm32之间的接口如下:
在PCB上,提供两个接口,一个接口可以直接将传感器插入,另一个接口可以用延长线进行连接,方便接线。模组3.3V供电,其DO引脚接到stm32的PB3上,当有液滴滴过,D0会产生一个上升沿,stm32检测到上升沿后,产生一个外部中断,计数加1,再配合定时器,计算单位时间内的液滴数就可以计算出药液滴速了。
回答:
对于问题“请问stm32L4有官方标准外设库(固件库)吗?”,官方提供了STM32CubeL4软件包,其中包含了针对STM32L4系列的HAL(硬件抽象层)库和LL(低级驱动)库,可以进行开发使用。该软件包可以从ST公司的官方网站(https://www.st.com/en/embedded-software/stm32cubel4.html)中下载。
使用官方提供的HAL库可以方便地配置和控制STM32L4的外设,例如GPIO、定时器、中断等等。HAL库提供了一些用于初始化、配置和控制外设的函数,使用时只需要调用相应的函数即可实现相应功能。定时器的使用可以参考段落1和段落2提供的内容,使用HAL库进行初始化和配置即可实现定时器中断同时产生多路不同频率的信号。
另外,需要注意的是,STM32L4的内部晶振精度较差,需要使用外部晶振进行计时和频率测量,可以按照段落3提供的建议进行操作。