定时器操作举例-docker部署python爬虫项目的方法步骤
表21.9展示了外部匹配控制EMR的设置。EMR[11:10],EMR[9:8],EMR[7:6]或EMR[5:4]各自有不同的功能:00表示不执行任何操作;01将对应的外部匹配位/输出设置为0(如果连接到芯片引脚,则输出低电平);10将对应的外部匹配位/输出设置为1(如果连接到芯片引脚,则输出高电平);11使对应的外部匹配位/输出电平翻转。
在21.6.12 DMA操作部分,每个定时器在EM0和EM1匹配时(0到1的跳变)都可以引起一个DMA请求。要执行DMA请求,必须先设置好GPDMA,同时相关的定时器DMA请求必须通过寄存器DMAREQSEL选择成一个DMA请求源。详情请参考“DMA请求选择寄存器”。有趣的是,如果定时器原先就被设置成在匹配时产生一个DMA请求,那么在匹配出现之前请求可能就被申请了!软件向中断标志位写1可以防止产生初始DMA请求,效果就像清除定时器中断一样。更多信息请参考章节“中断寄存器”。当GPDMA控制器对其进行操作时,DMA请求将会自动清除。
21.7定时器操作举例中,图21.1展示了定时器在匹配时复位并产生中断的情形。预分频器值为2,匹配寄存器值为6。发生匹配的定时器周期结束时,计数值会复位,使匹配值具有完整长度的周期。匹配发生的中断在定时器到达匹配值的下一个时钟产生。还有,图21.2展示了定时器配置为在匹配时停止并产生中断的情形。预分频器设置为2,匹配寄存器设置为6。在定时器到达匹配值后的下一个周期,TCR中的定时器使能位被清零并产生指示匹配发生的中断。想要亲手试试这些配置?看看这个定时器中断实验操作演示吧!
关于定时器中断和外部中断的更多精彩应用,您可以参考以下资料:定时器中断加外部中断.zip、使用STM32HAL库配置定时器外部中断、应用定时器外部中断的脉冲检测和外部中断定时器程序框架说明。这些资料不仅帮助理解,还提供了实用的代码示例和操作步骤!
是的,技术不仅仅是冷冰冰的代码和寄存器设置,它们背后还有许多妙趣横生的故事和精彩的应用场景,等待着你去探索和发现!