已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include /* common defines and macros */#include /* derivative information */#include #include #include #pragma link_info derivative mc9s12xs128 uchar i=0; char k,z=0; float fp, fi; void delay(unsigned int h) unsigned int j,tk; for(tk=0;tkh;tk+) for(j=0;j100;j+); /设置时钟 24mvoid pllclk(void)/24mhz ,外部时钟为 16mhzclksel=0x00;pllctl=0xe1;synr=0xc7;/pllclk =2*oscclk*(synr + 1)/(refdv + 1)refdv=0x81;pllctl=0x60;asm nop;asm nop;asm nop;while(crgflg&0x08)=0);/ 时钟校正同步clksel=0x80;/设置中断5msvoid initpit(void)/ 定时中断初始化函数 50ms 定时中断设置pitcflmt_pite=0; / 定时中断通道 0 关pitce_pce0=1;/ 定时器通道 0 使能pitmtld0=160-1;/逼鞒踔瞪瓒?240 分频,在 24mhzbusclock 下,为 0.1m/即10us.pitld0=2000-1;/16 位定时器初值设定。 pittime*0.01mspitinte_pinte0=1;/ 定时器中断通道 0 中断使能pitcflmt_pite=1;/ 定时器通道 0 使能/ad初始化void adc_init(void) /printf(adc_initn); atd0ctl1=0x40; /7:1-外部触发,65:00-8位精度,4:放电,3210:ch atd0ctl2=0x40; /禁止外部触发, 中断禁止 atd0ctl3=0xc0; /右对齐无符号,每次转换8个序列, no fifo, freeze模式下继续转 atd0ctl4=0x05; /765:采样时间为4个ad时钟周期,atdclock=busclock*0.5/prs+1 atd0ctl5=0x20; /6:0特殊通道禁止,5:1连续转换 ,4:1多通道轮流采样 atd0dien=0x00; /禁止数字输入 /pwm初始化void pwm() pwmprclk=0x11; /对总线时钟进行预分频,总线时钟为 8m,分频后为500k pwmclk=0x0f; /设 sa sb为其时钟源 pwmscla=0x05; pwmsclb=0x05; /a时钟为 2000hz pwmpol=0x00;/上升沿翻转 pwmcae=0x00;/左对齐输出 pwmper0=0xf0; pwmper1=0xf0; pwmper2=0xf0; pwmper3=0xf0; pwmcnt0=0x00;/0通道计数器清 0 pwmcnt2=0x00; int getad(char m) int ad; atd0ctl5=(0x20+m); while(!atd0stat0_scf); switch(m) case 0:ad=atd0dr0; case 1:ad=atd0dr1; case 2:ad=atd0dr2; case 3:ad=atd0dr3; case 4:ad=atd0dr4; return ad;float filter(char n) float sum = 0; char count; int jieguo; for ( count=0;count0) / portb_pb3=1; /else /portb_pb3=0; g_nspeedcontrolcount +; if(g_nspeedcontrolcount=20) speedcontrol(); g_nspeedcontrolcount = 0; pouty=carangle*32+gry*1.4-fp-cha;poutz=carangle*32+gry*1.4-fp+cha;dianjiy=(int)pouty; dianjiz=(int)poutz;pwme=0x00; if(dianjiy0) k=1; if(carangle30) dianjiy=0; if(dianjiy240) dianjiy=240; pwmdty1=240-dianjiy; pwmdty0=240; else k=-1; if(carangle-30) dianjiy=0; if(dianjiy0) k=1; if(carangle30) dianjiz=0; if(dianjiz240) dianjiz=240; pwmdty2=240-dianjiz; pwmdty3=240; else k=-1; if(carangle-30) dianjiz=0; if(dianjiz-240) dianjiz=-240; pwmdty2=240; pwmdty3=240
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025中国人民财产保险股份有限公司怒江州分公司招聘3人(云南)笔试历年参考题库附带答案详解
- 护理三基“理论知识技能”三位一体强化培训
- 微卫星不稳定状态的风险分层治疗价值-2
- 孕产妇营养与护理综合指南(基础篇)
- 失能老人口腔护理技巧与安全注意事项
- 互联网医疗与分级诊疗制度
- 保健科服务能力提升汇报
- 医疗保险的智能理赔与欺诈检测
- 医疗人工智能算法研究进展
- 医疗礼仪在医疗护理行业未来发展趋势中的关键作用
- 在线网课知慧《大凉山精准脱贫(西昌学院)》单元测试考核答案
- 《关于中国共产党党费收缴、使用和管理的规定》学习解读
- 中国动画赏析
- 新会陈皮培训课件
- 大数据技术求职个人简历模板
- 营养指导员理论考试题库及答案
- 西华大学理工类实验报告和封面
- 广东深圳市坪山区委宣传部下属事业单位招聘工作人员(共500题含答案解析)笔试历年难、易错考点试题含答案附详解
- 肿瘤科降低输液外渗发生率品管圈PDCA成果汇报
- 普通地质学教材
- 2022年湖北省药品监督管理局审评中心招聘笔试备考题库及答案解析
评论
0/150
提交评论