



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
PWM调速的C语言程序编写 关于PWM的原理在上一篇文章中已经说的很详细了 ,现在就细说一下pwm C语言程序的编写。C语言中PWM的编写有这么几种方法;一、用普通的I/O口输出的PWM ,二、使用定时计数器编写,三、就是使用片内PWM了。1 先说使用普通的IO口编写PWM程序了。 使用I/O口输出PWM波形你必须首先明白PWM他的实质是:调制占空比,占空比就是波形中高电平的长度与整个波长的比值。我们写C语言的目的是写PWM波形的一个周期。在这个周期内高低电平的比值是可以改变的。这也就符合了PWM的原意脉宽调制。即高电平的宽度的调制。当然了PWM他也可用于改变频率,我们这里只先说他改变脉宽。 一旦我们的C语言程序写完那么他产生的PWM波形的频率就一定了。(也可写频率变化的PWM,难度有点大)一般我们控制使用1K到10K的PWM波进行控制。当然了你也可在要求不是很高的地方使用频率更低的PWM波。比如在飞思卡尔智能车比赛中我们学校使用的PWM波频率只有600HZ. 我们要改变一个PWM波周期内的高电平的宽度显然需要将一个PWM波的周期分成单片机可以控制的N个小的周期,N的取值越大你的调速等级越高,但产生的PWM频率就越低。我们下面以实现100级调速为例编写PWM程序。 先写出程序再慢慢给大家分析 void pwm (uchar x,uint y) /X 为占空比 Y为函数使用时间 uint i,j,a,b; for(i=y;i0;i-) /定时外函数 for(j=7;j0;j-) /定时内函数 for(a=y;a0;a-) /PWM波高电平宽度 PORTA=0X01; for(b=100-y;b0;b-) /PWM低电平宽度PORTA=0X00; 这个程序够简单吧 轻松的实现AVR单片机的PA.0口输出7KHZ左右的PWM脉冲你可以将PORTA=0X01;改为P1.0=0X01;就可以移植到51单片机上了为什么使用参数Y定时 是因为用普通I/O口控制它的开关没有使用定时器编写的灵活。如果这不符合你的需要 你可以不使用时间参数Y控制他的开关,只要去掉关于Y的部分 利用控制I/O口的方向来控制它的使用上面的程序参数如下在mega16单片机上使用 8M晶振一个PWM脉冲大约128s循环7次是940ms 所以输出PWM脉冲频率是7KHZ左右注意:我使用时精度要求不高
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- (2025)精麻药品培训考试试题及参考答案
- 人教版八年级语文上册《梦回繁华》-听评课记录
- 人教A版高中数学必修二听评课记录:第1章 1.3.1 柱体、锥体、台体的表面积与体积 版含答案
- 部编版七年级下册语文同步听评课记录《第五单元写作 文从字顺》
- 化工厂三级教育培训课件
- 2025版电子商务支付安全风险评估与执行合同
- 2025餐饮业智能点餐系统设计与实施合同范本
- 二零二五年度二手房交易税费代理合同
- 二零二五年度生物科技产业合作合同书
- 2025版城市综合交通枢纽企业承包经营合同范本
- 烹饪技术基础知识单选题100道及答案
- 公司工会内控管理制度
- 医用耗材试用管理制度
- 初中历史跨学科教学实践与探索
- 塑胶制品研发项目可行性研究报告
- “文化自信”视域下统编本初中文言文教学策略研究
- 合作建房分配协议书
- 法治教育开学第一课
- TCAWAORG036-2025 中西医协同老年人肌少症筛查与诊断技术规范编制说明
- 医院院长竞聘试题及答案
- 《数据科学导论》课件
评论
0/150
提交评论