chuandaoxy 发表于 2021-8-7 11:16

duty,频率同时可调,1hz-9999hz

各位有啥好的办法,要求纯软件实现,就是timer和pwm配合,并且能够控制输出脉冲个数

频率和占空比的误差要求1%,因为在avr上arduino已经实现,所以想在通用的5上尝试

ayb_ice 发表于 2021-8-9 08:45

用单周期的51,尽量速度高点,不就是中断吗,尽量用自动重装载的方式,减少出入栈的软件开销,优先级要高,代码尽量精简,分配个单独的寄存器组,
但在最高频率下是有些吃力的,理论上需要在1US内运算完成,假设跑32M,理论上最多只能执行32条单周期指令,这还包括中断硬件响应时间,

coody 发表于 2021-8-9 21:25

STC的51轻松实现,用带15位或16位PWM的。

lrhsx33 发表于 2021-8-10 14:14

现在很多单片机,频率占空比同时可调的PWM1-10k完全没有问题
页: [1]
查看完整版本: duty,频率同时可调,1hz-9999hz