单片机控制多路舵机课件.ppt

单片机控制多路舵机课件.ppt

ID:57110275

大小:841.50 KB

页数:18页

时间:2020-07-31

单片机控制多路舵机课件.ppt_第1页
单片机控制多路舵机课件.ppt_第2页
单片机控制多路舵机课件.ppt_第3页
单片机控制多路舵机课件.ppt_第4页
单片机控制多路舵机课件.ppt_第5页
资源描述:

《单片机控制多路舵机课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、单片机程序的编写——以多路舵机控制为例一,单片机编程相关硬件知识单片机=CPU(核)+存储器+外围接口部件PC=CPU+存储器+接口及扩展插槽不同之处:PC运算能力强,通用,价格高,用作嵌入式不如单片机划算。相同之处:单片机即是PC的精简版,只不过具体实现功能有所不同。用C语言编写单片机程序时,CPU及存储器对于用户来说都是透明的,即用户不需要知道它们是如何工作的。所以,如何用好单片机,写好控制程序,除了大家学习的一些基本的C语言编写知识和技巧外,主要就是如何充分合理的对单片机外围功能部件的利用。注:汇编编程时需要对cpu和存储器知识有所了解。!!单片机编程入门主要就是对外围功能部件的使用

2、。外围功能部件使用:掌握外围功能部件的工作原理;设置相应的寄存器如OCR1=0x12;单片机常用的外围部件有:普通I/O端口;TIMER(定时器/计数器);UART(异步串行口);SPI(同步串行口);中断;PWM其他的还有:ADC,IIC,CCP,JTAG等。注:引脚复用概念AVR的功能部件:(以Mega16为例)I/O端口:PORTA~PORTD,4×8=32端口TIMER:TIMER0~TIMER2UART:1个SPI:1个外部中断:INT0~INT2PWM:4个(OC0,OC1A,OC1B,OC2)二,单片机编程软件环境三种IDE(集成开发环境)基于ICC程序的编写基于CodeVi

3、sion程序的编写基于WinAVR程序的编写烧写器的使用推荐:双龙SLISPSLISP.bmp并口烧写器优点:SLISP通用,烧写器简单,成本低,稳定性好注意:熔丝位的配置刚安装时改为:三,实例——多路舵机控制开发平台:软件:WinAVR-20080512烧写:SLISP硬件:校对提供的demo板----Mega16烧写:并口烧写器需求分析:1,由于需控制的舵机数量多,用单片机自带的PWM口(4个)远远不够,需用普通I/O口通过TIMER定时来生PWM来驱动舵机。Demo板上控制舵机的I/O口:PD4~PD7,PC0~PC7,PA0~PA3,PB0~PB32,控制舵机的PWM的周期为20m

4、s,脉冲宽度为0.5~2.5ms,舵机的转动范围是180度,则2ms控制180度。假设控制精度要达到1度,那么控制上要区分的最小时间间隔为:2ms/180,约为0.01ms即控制精度要达到100KHz。3,单片机资源问题:由上可知,由于舵机信号必须一直提供,控制20路舵机就需要占用很大的系统资源。战场队至少要留出部分资源给无线串口,剧场队还需要在这块单片机上完成其他动作。可见单片机资源还是比较紧张的。经验:资源还好,足够用了!具体实现:?答案:方法有很多种提供的参考方法:把20ms平分为8个时间间隔,每个2.5ms,在每2.5ms的时间间隔内实现对3个(20/8)舵机的控制。注:需控制多少

5、舵机具体实现:参见程序!Thanks!

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。