PWM通道测试总结
1、 在kernel/drivers/下建立一个文件夹,随便命名,在该文件夹下建立三个文件,分别为Kconfig(用来配置kernel编译的时候将该驱动编译进去)、Makefile和源码.c。
2、 在kernel文件夹下执行make menuconfig,进行驱动模块添加配置。
3、 在rk3288.dtsi中将PWM0/PWM2/PWM3下status = “disable”都修改为status = “okay”,在dtsi中一般都默认配置为disable,在dts中需要工作的话执行status = “okay”即可。
4、 在rk3288-popmetal.dts中添加:
pwm_test {
compatible= “pwm3_test”;
};
该compatible于驱动源码.c中的compatible对应的。
5、 在kernel中执行make rk3288-popmetal.img进行编译。烧录测试。源码中主要用了pwm_request(id, “lable”)和pwm_config(*pwm, dutycycles, period)两个函数,其中dutycycles和period的单位都是ns。还有一个函数使能pwm_enable(*pwm)。