0
点赞
收藏
分享

微信扫一扫

pwm子系统

梯梯笔记 2022-03-22 阅读 76


子系统分析 

其他网址

​​从零开始之驱动发开、linux驱动(三十三、PWM子系统)​​

​​Linux系统PWM驱动​​

测试驱动

参考网址:​​Linux - PWM的驱动编写【转】​​

pwm_config函数有三个参数,第一个是当前设置的pwm设备,第二个和第三个分别是占空比与周期。 

占空比与周期的单位均是ns, 

其中5000000ns即表示5ms,说明一个波形的周期是5ms 

其中1200000ns即表示1.2ms,说明一个波形中电平值为高时持续时间为1.2ms


#include <linux/module.h>
#include <linux/miscdevice.h>
#include <linux/fs.h>
#include <linux/mutex.h>
#include <linux/pwm.h>

#include <linux/delay.h> /* for mdelay() */
#include <linux/proc_fs.h>
#include <asm/uaccess.h>
#include <asm/io.h>

static int __init pwm_init(void)
{
struct pwm_device * pwm7 = NULL;

//申请pwm设备函数,前面是pwm几,后面是给他的简称
pwm7 = pwm_request(7, "pwm7");
if(IS_ERR(pwm7))
printk("request pwm7 err %ld\n", PTR_ERR(pwm7));
else
printk("request pwm7 success\n");

pwm_config(pwm7, 100, 500);
pwm_enable(pwm7);

return 0;
}

static void __exit pwm_exit(void)
{
printk("%s\n", __func__);
}

module_init(pwm_init);
module_exit(pwm_exit);

MODULE_DESCRIPTION("PWM Driver");
MODULE_LICENSE("GPL v2");


举报

相关推荐

0 条评论