搜索

[其它应用] 中颖单片机SH79166A能输出1HZ 频率的WPM吗

[复制链接]
980|6
 楼主 | 2020-5-12 11:00 | 显示全部楼层 |阅读模式
中颖单片机SH79166A能输出1HZ 频率的WPM吗

使用特权

评论回复
| 2020-5-12 11:17 | 显示全部楼层
用软件模拟就可以了

使用特权

评论回复
 楼主 | 2020-5-12 11:20 | 显示全部楼层
ayb_ice 发表于 2020-5-12 11:17
用软件模拟就可以了

要实现1ms 一个周期,怎么配置?

使用特权

评论回复
| 2020-5-12 11:35 | 显示全部楼层
cc6379103 发表于 2020-5-12 11:20
要实现1ms 一个周期,怎么配置?

搞个定时器,1MS中断一次,计数1000次就是1秒,再搞个变量,保存占空比
u16 usCurCnt;
u16 usRatio = 500;        //50%
bit bOutVal;

void PWM_ISR(void)
{
        if(++usCurCnt >= 1000)
        {
                usCurCnt = 0;
        }
        if (usCurCnt < usRatio)
        {
                bOutVal = 1;
        }
        else
        {
                bOutVal = 0;
        }
       
}

使用特权

评论回复

评论

cc6379103 2020-5-12 12:13 回复TA
好的谢谢 
| 2020-6-20 18:59 | 显示全部楼层
用PWM一点问题没有,不建议软件模拟,程序响应有一定的误差

使用特权

评论回复
| 2020-6-20 20:02 | 显示全部楼层
166A的PWM时钟源选择非常有限,只能是芯片时钟源的1,2,4,8分频,直接生成1S周期的PWM肯定不行。
不过1mS的定时中断也是有点太占用资源了,而且容易造成误差,如果定时器资源有富余的话,可以试试1个定时生成1ms周期的方波,去给另一个定时器计数,那么中断的周期就是固定的1mS的整数倍,不会产生累积误差,而且1S的周期内,只有2次中断产生,CPU资源的开销压力大大减轻,唯一的不足就是占用了2个定时器。不过谁让166A带了4个定时器呢,另外也可以用PWM产生1mS周期,也即1000Hz的方波,周期也未必一定是1mS,这样就只需要1个定时器了。

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表