我最开始接触单片机是从stc学起的,stc的下载器里自带了一个非常好用的定时器计算器。在转到stm32后最不适应的就是找了好久都没找到有类似stc的那种计算定时器参数的软件。
所以在那时候我就想自己写一个定时器计算器了,但是那时候技术力不行,就先用excel做了个表格凑合着用了,太过原始,还得手动凑整数。后来又写了个python脚本用来计算参数,可以自动计算整数了,已经方便不少了。但是没有一个gui界面,还是很难用,直到今天,在newbing的帮助下,完成了这个程序的最终形态。
程序可以输入任意三个参数,自动计算留空的那个参数。
- 计算ARR或PSC:根据时钟分配情况,把定时器的输入时钟频率输入到时钟频率栏里,一般来说是HCLK或者PCLK。将想要的定时器溢出时间转换为us输入到对应栏,或者根据想要的PWM频率计算周期,转换为us输入。随便输入一个整数到PSC或ARR中,如果数据合适的话会自动计算出留空的那个数据。如果输入的PSC或ARR不合适,就根据提示改大或改小后重试。建议从一个较小的数字开始试,如果无法得出合适的整数解,已经输入的PSC或ARR会自动+1后再试,直到可以得出整数解。(实际上PSC和ARR的参数计算公式是一样的,完全可以直接互换位置,算出来的数是一样的)
- 计算定时器溢出时间:当已知时钟频率和PSC、ARR时,可以计算这组参数对应的定时器溢出时间。计算得到的溢出时间可能不是一个整数。
- 计算时钟频率:当已知定时器溢出时间和PSC、ARR时,可以计算这组参数对应的定时器时钟频率,不过一般来说应该用不到这项功能。计算得到的时钟频率可能不是一个整数。
链接:https://pan.baidu.com/s/1jSF5WInleF43sP_XmCwjug?pwd=x7i7
提取码:x7i7
SHA256: 4CAA2626648D890D52586C709B636CC811BC300EAB63C67331E1D006DBA01766