定时器以及PWM资料.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* test-dc-motor.c代码分析-1 #include stdio.h #include fcntl.h #include string.h #include sys/ioctl.h #define DCM_IOCTRL_STARTPWM (0x10) #define DCM_IOCTRL_SETPWM (0x20) #define DCM_IOCTRL_STOPPWM (0x30) #define DCM_TCNTB (16384) #define DCM_FACTOR (DCM_TCNTB/1024) static int dcm_fd = -1; char *DCM_DEV=/dev/dcm/0raw; void delay(int t) { int i; for(;t0;t--) for(i=0;i400;i++); } * test-dc-motor.c代码分析-2 static int loop=1; static void loop_ctrl(int sig) { loop=0; } int main(int argc, char **argv) { int i = 0, mode=0, status=1, setpwm=0; pthread_t th; void *retval; if((dcm_fd=open(DCM_DEV, O_WRONLY))0) { printf(Error opening %s device\n, DCM_DEV); return 1; } signal(SIGINT,loop_ctrl); * test-dc-motor.c代码分析-3 do{ printf(“please input dc-motor mode(1-zheng,2-fan,3-zhengfan):”); scanf(“%d”,mode); }while(mode0||mode3); ioctl(dcm_fd,DCM_IOCTRL_STARTPWM, mode); * test-dc-motor.c代码分析-4 while(loop==1) { for (i=512;i=-512;i--) { if(status==1) setpwm=i; else setpwm=-i; ioctl(dcm_fd, DCM_IOCTRL_SETPWM, setpwm* DCM_FACTOR); delay(500); } status=-status; } close(dcm_fd); return 0; } 第6章 嵌入式Linux驱动程序开发 ARM 的定时器和PWM * 位号 位 名 位值:00 01 10 11 21,20 GPB10 输入 输出 nXDREQ0 Reserved 19,18 GPB9 输入 输出 nXDACK0 Reserved 17,16 GPB8 输入 输出 nXDREQ1 Reserved 15,14 GPB7 输入 输出 nXDACK1 Reserved 13,12 GPB6 输入 输出 nXBACK Reserved 11,10 GPB5 输入 输出 nXBREQ Reserved 9,8 GPB4 输入 输出 TCLK0 Reserved 7,6 GPB3 输入 输出 TOUT3 Reserved 5,4 GPB2 输入 输出 TOUT2 Reserved 3,2 GPB1 输入 输出 TOUT1 Reserved 1,0 GPB0 输入 输出 TOUT0 Reserved 端口B引脚配置寄存器 * 5个16位定时器: 定时器0-3具有PWM(脉宽调制)功能,占空比可编程; 初值自动重装,输出模式有连续和单脉冲两种; 定时器0,1有死区产生器,通常用于大电流设备控制; 定时器4是一个内部定时器,没有输出引脚,供内部使用。 2个8位预分频器和2个4位分频器: 定时器0 、1 分享同一个8 位的预分频器和分频器 定时器2、3、4 分享另一个预分频器和分频器 分频器有1/2、1/4、1/8、1/16共4种分频值。 S3C2410X定时器的主要特性 * PWM(脉宽调制):只对一个方波序列信号的占空比按要求进行调制,而不改变信号的幅度和周期,因此PWM信号的产生和传输都是数字式的。 用PWM技术实现模拟信号:若调制信号的频率远远大于信号接受者的分辨率,则接收者并不能感知数字信号的0和1,它获得的是信号的平均效果,平均值与占空比成有关(正比关系)。 PWM技术的应用:借助微处

文档评论(0)

sandaolingcrh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档