freescale单片机硬件设计(pwm).ppt_第1页
freescale单片机硬件设计(pwm).ppt_第2页
freescale单片机硬件设计(pwm).ppt_第3页
freescale单片机硬件设计(pwm).ppt_第4页
freescale单片机硬件设计(pwm).ppt_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

智能汽车(a ),其次是freescale单片机的硬件设计,智能汽车竞赛中使用的MCU,MC9S12XS128MC9S12DG128,编程开发环境,编码器将在下一个会话中编码解码器MC9S12XS128、MC9S12XS128包112 lqfp 80 qfp 64 lqfp flash 128 kram8kdah talash8k、MC9S12XS128、智能车相关MUC硬件、PLL集成锁相环ADC模拟数字转换PLL主要增加单片机的运算速度PWM,并且通常与PC通信(用于调试)的PIT主要用于控制马达和舵机SCI,或者用于中断光电或电磁车时序的GPIO的具体液晶显示,连接按钮参数另外,TIM中的脉冲累加器测量从编码器反馈的脉冲数而计算速度,速度反馈控制芯片内的ADC主要用于基于光电和电磁的传感器信号的数字化处理,PLL (集成相位同步环路)在CLKSEL的最高位比特为0时, 当来自系统总线中的时钟或者来自振荡OSC振荡器的二分频器的CLKSEL的最高有效位为1时,系统总线中的时钟或者来自集成锁相环的二分频器的总线时钟可以是fbus,振荡器(OSC )频率是fosc,并且压控振荡器频率是fvco的计算公式中的fvco REFDIV位于REFDIV寄存器的低位6位,POSDIV是8位寄存器,但保持高位3位的syniv位于SYNDV寄存器的低位6位。 请注意,在计算fvco的同时,按照下表填写SYNDV的前2位。 另外,若计算fref=fosc/(refdiv1)fref,则根据下表填充位置的REFDV的高位2位寄存器、ADC (从模拟到数字转换器)、MC9S12XS128单片机有16个12位,用于对输入进行多路复用及缓冲A)112脚本包括16个AD信道,80脚本包括仅8个AD信道。 B)AD的位数是可编程的,并且可选位数是8、10和12。 修改ATD0CTLx寄存器后,当前转换结束。 D)MC9S12XS128的8位转换时间为6us,而MC9S12XS128的转换频率通常在0.25MHz与8MHz之间,但实际测试可能大大不同。(1)ATDCTL1寄存器的5、6位配置变换精度是SRES1为6位,SRES0为5位。 下表说明2位元对转换精度的影响。 此外,关于ATDCTL2寄存器的各个位的细节,AFFC在ATD标志高速清除使能位中的该位为0时指示软件中的标志被清除,并且该清除方法在转换对应CCFn寄存器中写入1。 如果该位为1,则转换完成后自动清除对应的标志位。 ICLKSTP是内部时钟停止模式位。 车开时不会被打断,所以这个座位只要放0。 ETRIGE是外部触发使能控制位,如果为0,则忽略外部触发,如果为1,则开始转换。 ETRIGLE和ETRIGP控制触发方式。 方式如下:可同时控制外部触发的端子、端子控制寄存器为ATDCTL0、控制方式如下:ASCIE功能为AD转换序列转换结束中断使能位。 控制AD转换结束后是否发生中断。 0禁止中断的发生1允许中断的发生。 ACMPIE是AD的中断允许比特,直接设置0,这通常不可用。ATDCTL3的各位、DJM :结果排列方式位。 0左对齐,1右对齐。 通常设置右对齐。 S8C、S4C、S2C、S1C位设定转换系列长。FIFO是结果寄存器FIFO模式控制位。 为0时,结果寄存器不映射于变换序列,而为1时,结果寄存器映射于变换序列。 例如,在采用AN0、AN1、AN2作为AD收集信道的情况下,变换序列为3,当变换序列从信道0开始时在控制寄存器ATDCTL5中以CDCCCBCA=0000 .变换序列从1个信道开始时,ATD0DR0、ATD 0 ATD0 dr 2各自存储转换结果,当所述转换序列开始于信道2时,ATD0DR0、ATD0DR1、ATD0 dr 2仍存储转换结果。 FRZ0、FRZ1是后台调试冻结控制位。 该位控制程序运行到断点时是否进行AD转换。 此位置通常设置为继续运行,无需修改。(3)atd0CTL4的各比特被详细理解,SMP2:0选择采样周期的比特数并详细设定为如图所示,PRS4:0为ATD时钟分割器fATDCLK=fBUS/(2(PRS 1) ) 此时钟设置的一部分必须根据实际情况进行设置。(4)详细理解ATD0 CTL 5的各比特的设定。 SCAN选择“单位”“连续AD转换模式”控制位。 0是单曲,1是连续的。 MULT单通道/多通道AD转换选择控制比特。 在0的情况下,无论单个信道转换器使用哪个信道进行ad转换,将结果存储在ATD0DR0中,1是多信道转换器。 CD、CC、CB、CA选择采样通道的控制位。 具体设定请参照下表。 (5)ATD0STAT0的各比特的设定详细,SCF、ad转换结束标志比特、单转换结束低位比特。 对于连续变换,每次完成所有变换的低位进行变换。 那个剩馀部位没有必要设置。 (6)详细了解6)ATDSTAT2的各比特的设定。 该寄存器为16位,各位对应通道转换完成的标志,读出至0时表示转换未完成,1表示转换完成。 (7)ATDDIEN是数字信号输入使能控制比特。 这个寄存器是16比特。 0时,该位的数字信号禁止输入,1为数字信号允许输入。 同时,MCU禁止该16通道的数字输出,因此没有相应的方向控制寄存器。 (8)ATDDRn是结果寄存器,并且ad转换的结果存储在这些寄存器中。 另外,脉冲宽度调制器(PWM )、MC9S12XS128可以具有8个信道的8位PWM,同时这些信道的PWM可以级联,并且是4个16位PWM。 在级联连接的情况下,PWM的输出引脚为偶数引脚,即0、2、4、6.PWM有4个时钟源,分别为a、b、SA、SB,a、b是独立的,分别由总线时钟进行分频。 SA用a分频,SB用b分频。 0145这四个信道时钟可以是a或SA,2367时钟可以是b或SB。 每个通道的PWM可以选择两种对齐方式。 此外,为了设定PWM,需要按照时钟选择极性选择排列模式能够针对占空比和周期对PWM信道进行编程的顺序进行。 此外,PWMCLK的每个位对应于针对其的PWM时钟。 当PCLKx和x是0到145并且PCLKx的值是0时,时钟源是a,并且当时钟源是1时,时钟源是SA。 当PCLKx和x是2367并且PCLKx的值是0时,时钟源是b,并且当时钟源是1时,时钟源是SB。 PWMPRCLK是a,b时钟源分频系数。PWMSCLA、PWMSCLB是对clockA进行分频而得到clockSA和clockB的设定。 两个寄存器均为8位,最大值为255。 计算公式为ClockSA=ClockA/(2*PWMSCLA )、ClockSB=ClockB/(2*PWMSCLB )、PWMPOL极性选择寄存器。 每个位控制相应通道的输出极性。 0时,周期开始时输出高电平,1时,周期开始时输出低电平。 PWMCAE波形排列寄存器。 每个位控制相应通道的输出方式是中心对齐还是左对齐。 0时左对齐,1时中心对齐。 PWMCTL寄存器的高位4位设定通道是否级联连接。 例如,若PWMCTL的第7比特为0,则6、7信道分开作为2个PWM输出。 在第一示例中,各个信道6、7经历级联,并且这些信道变为PWM输出,而用于输出PWM波形的管脚变为偶数。 同样地,第6位的控制4、5有无级联,PWMPERx是信道周期寄存器,PWMDTYx是信道占空比寄存器。 如果PWM没有级联,则x可以是0、1、2、3、4、5、6、7,而对于寄存器则可以是8位。 级联时,x为01、23、45、67,寄存器为16位。 PWMDTYx也是如此。周期计算式:左对齐方式时,输出周期=通道时钟周期*(PWMPERx 1)中心对齐方式时,输出周期=通道时钟周期*(PWMPERx*2)。占空比计算式:极性设定寄存器为0时占空比= (pwmprerx-pwmdtyx )/pwmprerx * 100 %; 极性设定寄存器为1时的占空比=(PWMDTYx/PWMPERx)*100%。 此外,PWME是PWM使能寄存器,各位分别控制对应的PWM位,在0的情况下PWM为1时禁止使能PWM。 详细了解SCI (串行通信接口)、SCICR2的各位的设定。 TIE是发送中断许可比特。 在情况1中,已发送数据自动跳入中断,且在情况0中不发生中断。 TCIT完成发送中断许可比特。一旦已经发送完要发送的数据,就进入中断,而在数据为0的情况下不发生中断。 此外,由于RIE被允许中断,因此一旦接收到数据,它就自动跳入该中断,并且ILIE是空闲线路中断允许比特。 通常不设置。 TE是发送许可,1是发送许可。 RE得到许可,1得到许可。 RWU接受觉醒位置,智能车的单片机一般不处于睡眠状态,因此没有必要设置该位置。 SBK发送停止比特,0表示无停止比特,1表示有停止比特。 SCIBD是16位寄存器,设定波特率。 此寄存器分为SCIBDH和SCIBDL。 请注意,只有SCIBDH的低位4位是波特率设定寄存器。 计算公式SCIBD=fbus/(16*baudrate )。 SCISR1是状态寄存器1。 TDRE将发送数据注册为空位,如果该位为0,则表示没有要发送的数据。 当TC的发送已完成比特时,即,当数据发送已完成时,发送完成比特的数量为1。 RDRF接收数据寄存器已满,RDRF为1时接收数据寄存器已满。IDLE如果此位为1,则表示接收数据的输入行空闲。 一般不要这个人。 在OR为1情况下存储接收数据的寄存器变满,且新的信号被拒绝的NF噪声在1的情况下在接收线中有噪声,0在没有噪声的FE为1的情况下在接收帧中有错误的PF为1的情况下奇偶校验错误SCIDR是数据,发送和接收双方的数据接收数据的函数的典型说明:unsignedcharsci _ receive (void ) unsignedcharsci _ date; while(SCI0SR1_RDRF!=1; /接收寄存器空sci_date=SCI0DRL等待/接收数据returnsci_date;传送数据的函数的典型写法: void sci _ tx (unsignedinttx _ date ) while (! (SCI0SR1_TC/发送数据)、PIT周期性中断计时器;以及Ms9s12xs128的四个24位外围触发器或周期性中断设备。 中断周期是总线时钟的16777216倍。 即m*n。 m范围为1到256,n范围为65536。 操作步骤:首先打开小计时器,打开大计时器,选择大计时器的时钟是来自小计时器1还是来自小计时器0,在中断时启用PIT模块,设定小计时器和大计时器时间,PIT通道PITCFLMT_PITE是PIT模块的使能位,如果为1,则使能PIT模块。 PITFLT、PITMFLT这2个寄存器控制16位和8位计时器的开关。 PITCE是PIT信道的使能位置,首先保证PIT的使能,控制PITCE的第四位,各个比特与对应的信道的使能对应,1为使能。 PITMUX基于对应位置的时钟较小的计时器0还是较小的计时器1进行设定。 1的情况下基于小的计时器1,相反基于小的计时器0。 然后,PITINTE控制PIT中断许可比特,第四位分别控制4个信道,1表示允许中断。 PITTF是溢出标志位,第四分贝代表四个通道,1代表溢出。 清除标志位可在对应的位置写入1。 PITMTLD0、PITMTLD1拥有2个8比特的小型计时器。 PITTLD0、PITTLD1、PITTLD2和PITTLD3是四个16位计时器。 另外,TIM中的脉冲累加器、脉冲累加器为16比特的脉冲累加器的输入端子为IOC7、PACTL脉冲累加器控制寄存器、PAEN脉冲累加器使能比特、1是脉冲累加器可动作的PAMOD为0时1是栅极时间累积模式PAOVI脉冲累加器为中断使能比特,1的情况下为溢出发生中断PAI为1的情况下,当脉冲累加器中有输入事件时产生中断,PAFLG第0位是输入端子检测出发生了输入事件的标志第一位是脉冲累加器的溢出标志位,如果发生溢出事件,则该位为一个。 PACNT脉冲累加器的计数器寄存器。 这个寄存器是16比特。 另外,GPIO通用输入输出端子、PortA、b、k作为通用IO,除此之外没有多路复用的功能。 PortE有不能切断外部中断和能够切

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论