尝试用2440的TOUT0和TOUT1输出PWM驱动两个电机,电机的硬件驱动电路是使用L298N。
先单独测试TOUT0的PWM输出:
(1)驱动程序:使用misc混杂设备驱动模型,当然也可以使用基本的字符设备模型。
使用misc设备驱动模型步骤:
①初始化一个struct miscdevice结构体:主要是file_operation结构体成员和name
②使用misc_registe...
分类:
其他好文 时间:
2015-05-18 22:59:12
阅读次数:
260
2015.4.8星期三 晴天今天老师讲的内容是内核编写led和pwm驱动,实现花样灯和放歌的功能。理解应用和驱动的对接,最后自己实现了在放歌的时候根据歌曲的节奏亮灭一个小灯,应为两个独立的驱动都已经写好,想要组合其实很简单,只要在主调函数里面打开两个驱动的设备节点,分别进行操作并有机的组合在一起就行...
分类:
其他好文 时间:
2015-04-08 23:14:59
阅读次数:
239
有的时候,我偏爱arduino胜于cubieboard,先说PWM问题,现在cubie的A10上还没有一个完整的PWM驱动,而且一个也不够用、用起来不方便,并且有些如IR发射的东西在arduino已经很成熟了 于是我开了个HuLuduino硬件计划...
分类:
其他好文 时间:
2014-09-01 14:10:13
阅读次数:
265
硬件平台:S3C6410
操作系统:Ubuntu、windows
板子系统:Android
开发工具:jdk,ndk,eclipse
本次测试从linux内核模块编译开始,以S3C6410的pwm驱动为例。
pwm_6410.c:
#include
#include
#include
#include
#include
#include
#include
#inclu...
分类:
移动开发 时间:
2014-07-12 17:01:01
阅读次数:
335
DM8168的PWM是通过TIMx_OUT引脚输出的,需要对Timer进行配置才能有波形输出。
①对Timer的时钟进行配置,确保Timer能正常工作。
②设置寄存器之前关闭Timer。
③设置定时溢出后的装载值。
④设置比较值,该值决定PWM占空比。
⑤设置internal counter值。
⑥启动Timer。
启动DM8168过后,停在U-boot界面,使用U-boot的内存读...
分类:
其他好文 时间:
2014-06-16 12:30:42
阅读次数:
267
昨天把DM8168的Timer设置给摸了一遍,为写PWM的底层驱动做好了准备,现在就要进入主题了。
dm8168_pwm.c:
#include
#include
#include
#include /* copy_to_user,copy_from_user */
#include
#include
#include
static struct class *pwm_cla...
分类:
其他好文 时间:
2014-06-14 06:06:27
阅读次数:
234