问下在linux内核态的流水灯问题
问下在内核态怎样实现流水灯驱动,不用应用层控制,直接用insmod 插入后就流水灯就OK了
还有我像延迟到纳秒级别产生方波怎样实现,谢谢
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
问下在内核态怎样实现流水灯驱动,不用应用层控制,直接用insmod 插入后就流水灯就OK了
还有我像延迟到纳秒级别产生方波怎样实现,谢谢
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
我现在用的是at91sam9263有4个gpio口复用pwm,是不是把pwm驱动起来,在应用层调用就OK了,pwm的时钟频率是复用主芯片时钟(100MHz),我现在的设备要用3个pwm产生波形就行,是不是这样做OK了
那我要是用cpu自带的pwm来驱动呢?是不是就OK了
回复 8# jizhang1976
我用的 pxa270 ,pwm 只有部分pin 有这个功能, 最高频率13M.
根据你使用的cpu情况不同。
回复 5# jizhang1976
网卡的输出数据方波都是芯片输出的,不是驱动在那里翻转gpio完成的
回复 5# jizhang1976
网卡 的震荡器 是网卡自带的, 不是 cpu 上的。
如果 1000ns, 直接用 udelay( ) 就可以了。
cpu是 100m, 100m 是 10的8次方吧。 那cpu的一个时钟周期就是 10ns.
用自定义的指令 (比如循环啥的) 来延时, 用gpio搞 , 设置 gpio register 本身 也要延时吧 ,可能可以 搞成 几百个 ns的吧
还有像网卡传送数据不也是有1000M的吗?那网卡的驱动能做到1纳秒吧,我这个只要100纳秒的应该不是问题吧?
我的意思是纳秒级别,是要从83ns到1000纳秒都可以,在内核态的gpio驱动能达到吗?我的cpu是100MHZ的
回复 1# jizhang1976
1ns是 10的 -9次方吧。 也就是 1G 分之一 秒, 大概。
这和cpu的频率在一个数量级别,软件很难弄出来。
纳秒级别只能硬件能做到