打印
[MCU]

产生方波

[复制链接]
383|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
午夜粪车|  楼主 | 2020-5-10 15:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想用DM368产生2Khz的方波,但是不使用PWM模块,我想用定时器然后加GPIO进行翻转生成,但是我用linux内核中的定时器中断函数生成的方波最多只有50hz,

使用特权

评论回复

相关帖子

沙发
午夜粪车|  楼主 | 2020-5-10 15:59 | 只看该作者

timer_list:说定时器,当然要来个定时器的结构体
struct timer_list{
struct list_head entry; //定时器列表
unsignedlong expires; //定时器到期时间
void (*function)(unsignedlong) ;//定时器处理函数
unsignedlong data; //作为参数被传入定时器处理函数
struct timer_base_s *base; }
这种机制只能产生50HZ的频率,我想产生2KHZ 的频率的方波改怎么用定时器?

使用特权

评论回复
板凳
zhaoxqi| | 2020-5-10 16:15 | 只看该作者
有谁做过这方面的东西啊,davinci系列的demo

使用特权

评论回复
地板
huangchui| | 2020-5-10 16:18 | 只看该作者

用硬件自己做吧

使用特权

评论回复
5
午夜粪车|  楼主 | 2020-5-10 16:22 | 只看该作者
为什么

使用特权

评论回复
6
zhaoxqi| | 2020-5-10 16:26 | 只看该作者
因为用API函数只能受限于jiffies和HZ,做不了很高的频率

使用特权

评论回复
7
jiaxw| | 2020-5-10 16:29 | 只看该作者
当然是在程序里面修改下定时器的CCRX值的

使用特权

评论回复
8
jiajs| | 2020-5-10 16:35 | 只看该作者
沒太明白你的說法,Linux下以驅動模塊的方式,應該可以寫到2KHZ以上的。但有一個問題是這個方波,不一定能保證每個周期都是嚴格等長的。這是Linux類非實時作業系統的固有問題!

使用特权

评论回复
9
zhanghqi| | 2020-5-10 16:38 | 只看该作者
不用这么复杂吧,可以直接使用硬件定时产生的啊,也非常准确的,毕竟是硬件的嘛,呵呵

使用特权

评论回复
10
午夜粪车|  楼主 | 2020-5-10 16:41 | 只看该作者
嗯,我知道了,多谢啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

867

主题

10194

帖子

3

粉丝