版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
智能车制作初步及MC9S12XS128简介
2023/5/10简单智能车制作132总结历届参赛体会智能车相关智能车制作初步经验与教训——历届参赛体会分享智能车竞赛赛程智能车系统简介单片机基本知识XS系列单片机介绍CodeWarrior软件实验说明XS128简介经验与教训—历届参赛体会第一次去华龙是很兴奋的,只是不知道那儿周日是关门的,所以当我们兴冲冲赶过去的时候,见到的只是紧锁的门面小车根本就不能跑起来(后来证明电路图没有任何问题,华龙老板给我们提供的电阻电容参数有大大的问题!)重启的问题:在检测板子时,意外的测试到一个引脚的电压不稳定。发现原来是LM2940的VCC脚虚焊了。板子忽然断电,而且组员闻到了一股烧焦的味道。这下惨了,用万用表一查,惨了,板子上的VCC和GND短接了。POWER的连接线太细了,难以承受住高电压,势必会烧掉,最终我们不得不采取飞线的方法,以挽救我们的板子!这个主要怪我最开始没有多问问学长,不知道功率线都应该加粗的,只有信号线无所谓经验与教训——历届参赛体会还记得智能车刚拿回来的时候,我们很兴奋地拆开包装就将一些部件安到小车上,可是安装舵机时螺丝斜着拧进去了,结果导致里面的螺纹磨掉了,舵机接口很松,这是我们遇到的第一个问题,当时挺郁闷的,刚买的新车模就被弄成这样,真倒霉啊。不过后面还是用502胶粘牢了,检查了下,舵机运转还是挺正常的。经验与教训——历届参赛体会我们欢乐过,在看到智能车的成功,心中的喜悦难以言传;我们苦闷过,面对时间就那样一天天过去,我们的程序始终无法建立,心中构想的思路一次次被现实的问题拒之门外,那种压抑,那种郁闷不敢再次回味;我们徘徊过,当第一个程序建立受阻时,我们徘徊要不要换思路,当比赛进行到第三周还没有什么突破时,我们犹豫要不要放弃;我们坚持拼搏过,在比赛的过程中,无论遇到什么样的困难,我们都坚持拼搏,坚信有付出就一定会有回报;我们遗憾过,遗憾我们思路难点时间太晚,最后整理程序的时间完全不够。那几周里,我们团结一致,将团队合作发挥到极致,我们最后连续几天不合眼,几乎将我们的精力用到极致。比赛短暂两天,却让我们历经人生酸甜苦辣,这将是我们人生中最有意义最难忘的时刻,也是我们参加比赛的最大收获。经验与教训——历届参赛体会刚开始接触的时候确实感觉有些困难。这块单片机的编程和以往学的程序编写思路完全不同。它的逻辑几乎全部在中断里完成,一个周期这个中断就要执行一次,那么这个算法就会是一个我们以前没接触过的结构,通俗点说就是一遍一遍的刷这个中断的逻辑。这样的结构实时性很强,但是做好与前一周期的衔接以及保持一定周期内的策略一致性就是一个问题。我花了些时间写了点测试程序并在开发板上运行,通过LED的显示,对于这块单片机的程序结构和运行方式终于有了一个感官上的认识。然后,初始化和AD转换成了我面临的又一大难题。这一部分几乎全是靠控制字来控制,意味着我必须面对繁杂难懂的技术手册,一个位一个位的弄懂它们的意思和功能,这个过程非常枯燥。但是最后还是搞定了光电车最重要的多通道AD转换初始化和读取AD转换值的部分。这期间,我也尝试写了第一个完整的小车程序。东南大学智能车竞赛赛程相关课程——边做边学微机系统与接口(微机原理)电子电路单片机控制理论检测技术电机控制与驱动智能车简介智能车简介智能车控制系统框图微控制器微控制器可从不同方面进行分类:根据数据总线宽度可分为8位、16位和32位机;根据存储器结构可分为Harvard结构和VonNeumann结构;根据内嵌程序存储器的类别可分为OTP、掩膜、EPROM/EEPROM和闪存Flash;根据指令结构又可分为CISC(ComplexInstructionSetComputer)和RISC(ReducedInstructionSetComputer)微控制器。Freescale8/16/32单片机总线结构比较
从同一存储器空间取指令和取操作数据。限制了数据流量。从两个独立的存储空间分别取指令和存取操作数。数据流量增加。针对程序区和数据区可以设计不同的数据线宽度。程序和数据存储器冯-纽曼结构8-位CPU数据存储器8-位12/14/16-位哈佛结构CPU微机结构总线结构单片机内部结构开放实验说明地点:教一411房间预约联系人:
袁云kystillshy@校赛人人网主页/seusmartcar校内访问网站:6XS128开放实验套件实验开发板开放实验内容基本入门实验3个:1.通用I/O和定时中断2.A/D转换实验3.PWM模块实验开放实验内容提高实验针对各个组别的赛道识别环节实验光电组(自己制作硬件)电磁组(自己制作硬件)摄像头组(自己准备摄像头)实验验收:完成赛道识别和舵机控制Freescale单片机Freescale公司单片机的发展演变概况MC9S12汽车系列路线图Freescale单片机的命名规则①产品状态。MC—FullyQualified(合格);PC—ProductEngineering(测试品);XC表示部分合格品,有限质量保证,用于性能评估的器件。②存储器类型标志。“无”表示片内带ROM或片内没有程序存储器;7表示片内带EPROM或一次可编程ROM(onetimeprogrammableROM,OTPROM);8表示片内带EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory);9表示片内带闪存FlashEEPROM。③芯片内核类型。如08表示HC08内核、S08表示HCS08内核、RS08表示RS08内核、S12是基于速度更快的CPU12内核等。④子系列型号标志。如GP、GB、GZ等。⑤存储器大小。如256表示内部集成256KB的Flash等。⑥Flash版本标志,反映不同的擦写电压、时间等。⑦工作温度范围标志。“无”表示商用温度范围0℃~70℃;C表示-40℃~85℃;V表示-40℃~105℃;M表示-40℃~125℃。⑧封装形式。如:P为双列直插DPI封装。选用某款芯片制作电路板时要特别注意封装形式。⑨E表示leadfreepackaging,即无铅封装。在⑨之后有些还有一个可选项,例如MC68HC912B32ACFUE8,此处的“8”表示总线速度为8MHz。Freescale16位单片机根据内核的不同,可把Freescale的16位单片机分为MC68HC12系列MC9S12系列MC9S12X系列MC9S12系列单片机
MC9S12系列单片机(也称为HCS12系列,简称S12系列)是基于速度更快的CPU12内核的单片机系列。目前该系列单片机有MC9S12A、B、C、D、E、G、H、K、Q、R、T,XS等系列。MC9S12X系列单片机S12XV1S12XD系列:带有CAN总线;S12XHZ系列:带LCD和步进电机驱动模块。S12XV2S12XE系列:12位ADC;S12XS系列:没有XGate,智能车推荐使用。S12X系列单片机最大的特点是增加了一个平行处理的外围协处理器XGATE模块。XGATE是一个独特的、完全独立可编程的协处理器,可单独对所有的外围模块和RAM进行操作。专门处理中断和I/O,提高系统的实时性能。MC9S12X系列单片机如图所示,XGATE模块直接读取ADC数据,并在RAM中对数据进行处理,然后发送到CAN总线上,这期间不需CPU的介入。芯片封装知识简介双列直插式(DualInlinePackage,DIP)绝大多数中小规模IC均采用这种封装形式,引脚<100
IntelCPU4004芯片封装知识简介塑料方型扁平式(PlasticQuadFlatPackage,PQFP)塑料扁平式(PlasticFlatPackage,PFP)间距小,管脚细,管脚数>100专用工具(表面安装设备SMD)装卸高频使用、可靠性高,封装面积小芯片封装知识简介引脚网格阵列(PinGridArray,PGA)专用PGA插槽操作方便,可靠性高,但电耗大IntelCPU中80286、80386和某些486ZIF(ZeroInsertionForce)插座,486以后芯片封装知识简介球状网格阵列(BallGridArray,BGA)>100MHz,>208PinBGA封装引脚数虽然增多,但引脚间距大于QFP传输延迟小,散热性能好(可控塌陷封装法)共面焊接,可靠性提高单片机种类繁多,令人眼花缭乱,每种单片机都有其应用定位。选择最合适的单片机来应用,而不是给单片机接口以适应不同的应用。初步使用S12X1)S12X技术概述2)工作模式3)储存器映射4)总线时钟频率5)通用I/O接口6)PWM模块S12X技术概述通信和I/O两个支持LIN的串行通信接口(SCI)1个MSCAN模块兼容CAN2.0A、B1个串行外设接口(SPI)模块高达91个通用输入/输出(GPIO)引脚内存64KB至256KB嵌入式闪存,带纠错码(ECC)功能4KB至12KBRAM高达4KB至8KB的data-flash扇区大小为256B系统与时钟40MHz16位CPU12X,前向兼容MC9S12指令集增强型中断模块带有单线接口的后台调试模块(BDM)3.3V至5.0V工作电压温度范围:-40度至+125度带内部滤波的锁相环(IPLL)一无需外部组件从省电的STOP模式快速唤醒,并立即执行程序定时器和模数转换器(ADC)1个ADC模块,提供8/10/12位分辨率,可复用为16个模拟输入通道8通道8位或4通道16位脉宽调制器(PWM)定时器(TIM),提供8通道16位输入捕捉或输出比较功能接口概述PortA,BandKusedasgeneralpurposeI/OPortEassociatedwiththeIRQ,XIRQinterruptinputsPortTassociatedwith1timermodulePortSassociatedwith2SCImoduleand1SPImodulePortMassociatedwith1MSCANPortPconnectedtothePWM-inputscanbeusedasanexternalinterruptsourcePortHandJusedasgeneralpurposeI/O-inputscanbeusedasanexternalinterruptsourcePortADassociatedwithone16-channelATDmoduleModesofOperation工作模式Operatingmodes:Normalsingle-chipmodeSpecialsingle-chipmodewithactivebackgrounddebugmodeLow-powermodes:SystemstopmodesPseudostopmodeFullstopmodewithfastwake-upoptionSystemwaitmode内部存储器映射-寄存器寄存器,RAM,EEPROM可以通过设置INITRG,INITRM,INITEE来重新分配他们的位置。这些寄存器只能写一次,建议在初始化分配寄存器,RAM,EEPROM的位置。对每个INITxx赋值后,在其指令后需插入一空指令。如果映射有冲突,寄存器具有最高优先级,与其重叠的RAM和EEPROM此时无效。复位后,寄存器从0x0000开始,但可以被映射到64K空间内的前32K的范围内,而且映射的地址必须是2K的整数倍。系统时钟总线时钟频率外部晶振=16MHZ;BusClock=40MHZ通过设置CLKSEL寄存器,确定内部总线的时钟源;通过PLL编程,设置PLLCLK;SYNR时钟合成寄存器
VCOFRQ[7:6]SYNDIV[5:0]REFDV时钟分频寄存器
REFFRQ[7:6]REFDIV[5:0]总线时钟频率SYNR和REFDV都是低6位来设定所要超的频率,其高2位是根据你要超的频率来配置,通过合理的配置VCOFRQ,REFFRQ来提高系统时钟稳定性。总线时钟频率voidinitPLL(void){//锁相环初始化,将总线频率调整到40MCLKSEL=0X00;//禁止锁相环
PLLCTL_PLLON=1;//打开锁相环
SYNR=0x49;REFDV=0x43;//pllclock=fvco=2*osc*(1+SYNR)/(1+REFDV)=80MHz;POSTDIV=0x00;_asm(nop);//BUSCLOCK=40M_asm(nop);while(!(CRGFLG_LOCK==1));//等待锁相环初始化完成
CLKSEL_PLLSEL=1;//使用锁相环}寄存器说明超频示例voidSetBusCLK_120M(void)
{
CLKSEL=0X00;
//disengagePLLtosystem
PLLCTL_PLLON=1;
//turnonPLL
SYNR=0xc0|0x0d;
REFDV=0x80|0x01;
POSTDIV=0x00;
//pllclock=2*osc*(1+SYNR)/(1+REFDV)=240MHz;
_asm(nop);
//BUSCLOCK=120M
_asm(nop);
while(!(CRGFLG_LOCK==1));
//whenpllissteady,thenuseit;
CLKSEL_PLLSEL=1;
//engagePLLtosystem;
}
通用I/O接口voidinitGPIO(void){//通用IO口初始化
DDRA=0x00;//A口输入
DDRB=0xFF;//B口输出
DDRK=0xFF;//K口输出}PWM模块S12X微控制器PWM模块是由独立运行的8位脉冲计数器PWMCNT、两个比较寄存器PWMPER和PWMDTY组成。PWM调制波有8个输出通道,每一个输出通道都可以独立的进行输出。每一个输出通道都有一个精确的计数器(计算脉冲的个数),一个周期控制寄存器和两个可供选择的时钟源。每一个PWM输出通道都能调制出占空比从0—100%变化的波形。PWM模块PWM启动寄存器PWME用来启动和关闭相应通道的PWM波形输出。当任意的PWMEx位置1,则相关的PWM输出通道就立刻可用。PWM极性选择寄存器PWMPOL该寄存器是0~7通道PWM输出起始极性控制位,用来设置PWM输出的起始电平。用法:PWMPOL_PPOL0=1---通道0在周期开始时输出为高电平,当计数器等于占空比寄存器的值时,输出为低电平。对外输出波形先是高电平然后再变为低电平。PWM时钟选择寄存器PWMCLKS12的PWM共有四个时钟源,每一个PWM输出通道都有两个时钟可供选择(ClockA、ClockSA或ClockB、ClockSB))。其中0、1、4、5通道可选用ClockA和ClockSA,
2、3、6、7通道可选用ClockB、ClockSB通道。该寄存器用来实现几个通道时钟源的选择。用法:PCLK0=1---通道0(PTP0)的时钟源设为ClockSAPCLK2=0---通道2(PTP2)的时钟源设为ClockBPWM预分频寄存器PWMPRCLKPWMPRCLK寄存器包括ClockA预分频和ClockB预分频的控制位。ClockA、ClockB的值为总线时钟的1/2n(0≤n≤7)PWM分频寄存器PWMSCLA、PWMSCLBClockSA是通过对PWMSCLA寄存器的设置来对ClockA进行分频而产生的。其计算公式为:ClockSA=ClockA/(2*PWMSCLA)PWMSCLB寄存器与PWMSCLA寄存器相似,PWM控制寄存器PWMCTLPWMCTL_CON67=1---通道6、7级联成一个16位的PWM通道。此时只有7通道的控制字起作用,原通道7的使能位、PWM输出极性选择位、时钟选择控制位以及对齐方式选择位用来设置级联后的PWM输出特性PWMCTL_CON67=0---通道6,7通道不级联PSWAI和PFRZPSWAI=1---MCU一旦处于等待状态,就会停止时钟的输入。这样就不会因时钟在空操作而费电;当它置为0,则MCU就是处于等待状态,也允许时钟的输入。PFRZ=1---MCU一旦处于冻结状态,就会停止计数器工作。PWM通道计数寄存器PWMCNTxPWMCNTx寄存器共有8个,每一个通道都有一个8位PWM加/减双向计数器,通道级联后可变成16位PWM加/减双向计数器。计数器以所选时钟源的频率运行。计数器在任何时候都可以被读,而不影响计数,也不影响对PWM通道的操作。任何值写入PWMCNT0寄存器都会导致计数器复位置0,且其计数方向会被设置为向上计数,并且会立刻从缓冲器载入任务和周期值,并会根据翻转极性的设置来改变输出。当计数器达到计数值后,会自动清零。只有当通道使能后,计数器才开始计数。PWM通道周期寄存器PWMPERxPWMPERx寄存器共有8个,每一个通道都有一个这样的周期寄存器。这个寄存器的值就决定了相关PWM通道的周期。每一个通道的周期寄存器都是双缓冲的,因此如果当通道使能后,改变他们的值,将不会发生任何作用,除非当下列情况之一发生:*有效的周期结束。*对计数器进行写操作(计数器复位)*通道不可用(PWMEx=0)这样就会使PWM输出波形要么是新波形要么是旧波形,并不会在两者之间进行交替变换。如果通道不可用,那么对周期寄存器进行写操作,将会直接导致周期寄存器同缓冲器一起闭锁。PWM通道占空比寄存器PWMDTYxPWMDTYx寄存器也有8个,每一个通道都有一个这样的占空比常数寄存器。这个寄存器的值就决定了相关PWM通道输出波形的占空比。当计数值与占空比常数PWMDTY相等时,则比较输出器有效,这时就会将触发器置位,然后PWMCNT继续计数,当计数值与周期常数PWMPER相等时,比较器输出有效,将触发器复位,同时也使PWMCNT复位,结束一个输出周期。PWM波形对齐寄存器PWMCAEPWMCAE寄存器包含8个控制位来对每个PWM通道设置左对齐输出或中心对齐输出。用法:PWMCAE_CAE0=1---通道0中心对齐输出
PWMCAE_CAE7=0---通道7左对齐输出
只有输出通道被关闭后才能对其进行设置。
左对齐方式在该方式下,脉冲计数器为循环递增计数,计数初值为0。当PWM使能后,计数器PWMCNT从0开始对时钟信号递增计数,开始一个输出周期。当计数值与占空比常数寄存器PWMDTY相等时,比较器1输出有效,将触发器置位,而PWMCNT继续计数;当计数值与周期常数寄存器PWMPER相等时,比较器2输出有效,将触发器复位,同时PWMCNT也复位,结束一个输出周期。中心对齐方式在该方式下,脉冲计数器为双向计数,计数初值为0。当PWM使能后,计数器PWMCNT从0开始对时钟信号递增计数,开始输出一个周期。当计数器与占空比常数寄存器PWMDTY相等时,比较器1输出有效,触发器翻转,而PWMCNT继续计数,当计数值与周期常数PWMPER相等时,比较器2输出有效,此时改变PWMCNT的计数方向,使其递解计数;当PWMCNT再次与PWMDTY相等时,比较器1再一次输出有效,使触发器再次翻转,而P
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 物流运输数据库课程设计
- 2025年度定制化家具销售合同范本2篇
- 机器视觉课课程设计书
- 2025年度建筑设备安全施工与安装服务协议
- 二零二五年度商业综合体给排水专业分包合同2篇
- 2025年度知识产权质押委托保证反担保服务合同3篇
- 贪吃蛇课程设计c语言
- 英语语法课程设计依据
- 2025年中学校长开学典礼讲话(2篇)
- 网上投票系统课程设计
- 脑恶性肿瘤的护理查房
- 2022公务员录用体检操作手册(试行)
- 骨盆骨折PPT完整版
- 事业单位登记管理讲座课件
- 柴油加氢设备-加氢循环氢压缩机
- 中小学德育工作指南考核试题及答案
- 雪夜的老人阅读答案6篇
- 2022数学课程标准解读及实践:八下平行四边形大单元设计
- 昌乐二中271课堂教学模式
- 深基坑变形监测方案
- 卫生专业技术资格任职聘用证明表
评论
0/150
提交评论