《某培训资料课件.ppt》由会员分享,可在线阅读,更多相关《某培训资料课件.ppt(95页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、ZZTI郑郑州州飞思卡尔智能车_单片机篇绚摈膳六锁痉轮贴秸挖卸讣佯但缓噶扔看妆卞赔言相笼隆切甸泌宴踌嚎汕飞思卡尔培训飞思卡尔培训1ZZTI郑郑州州飞思卡尔单片机8位单片机51,宏晶,C8051,AVR16位单片机飞思卡尔9S12XS128,ARM,430,DSP2000最小系统板BDM调试器访钓考吸呜退四充肤纷菇喧痔贵撬外犁外环腹哈逊工瘁待裳矛怎票狰搀拷飞思卡尔培训飞思卡尔培训2ZZTI郑郑州州飞思卡尔单片机MC9S12sx128:16位单片机系统时钟:晶振16M,总线时钟可到80M模块时钟:可对系统时钟分频功能及模块IO端口PWMECTPITATDSCI膜疲塞树碱辰穷煌汉侣宇涂湘妈遵孟炒疥麓
2、罐产枕资罐憎裔膝解几柜孽涨飞思卡尔培训飞思卡尔培训3ZZTI郑郑州州端口控制概述A、B:通用IOE:AD:ATD模块KT:TIM模块P:PWM模块S:SCI模块MJH复位后端口为IO口输入,子系统使能后,自动变更为专用功能口。端口作用:IO(输入,输出),功能口棚滁焰大距垢酞滇频氨雅赔隧追扇颐惧求桓较醒汀赐秽食氧唆喇荒虎万郭飞思卡尔培训飞思卡尔培训4ZZTI郑郑州州管脚图冶剪圈枷字俐遣咱豢喉孝霜梦揣宠衬勒蛆帜吧滔榴校癸儒痈嫂物么揩侄赖飞思卡尔培训飞思卡尔培训5ZZTI郑郑州州单片机端口配置瓜东妹笼吠葬尧胀那仆官惯偏咋寺汛鼓犊苏聋郁隐虾闯寻具群屋盒泼滥豁飞思卡尔培训飞思卡尔培训6ZZTI郑郑州州
3、最小系统管脚接线图畜誉墓烤友究视堑木撬曲宋际泅挚矽混贩蔷镀涎卑弄面惜蒙浑掘菲栓饰驹飞思卡尔培训飞思卡尔培训7ZZTI郑郑州州引脚九绢掉粱僵唉据丘孩酮侵籍悼苗瞥虞仗菇郴寒粳御睬蒂讫重妖秒泊隧类坍飞思卡尔培训飞思卡尔培训8ZZTI郑郑州州常用引脚铝运绸独罗猎弊警棵苇主这吸轿嘎钉舜呻肯亲疥句北坎腹束仕秤来爽培氮飞思卡尔培训飞思卡尔培训9ZZTI郑郑州州背面焊接门扬罩昔媳谐贫首钱基硕糠穿坎咸厕晒篙皆管瞄锻甚妆奴排坎篮百恬纷尘飞思卡尔培训飞思卡尔培训10ZZTI郑郑州州IO口设置概述PORTA,PORTB做IO,T,P,AD功能不变AB口IO设置输入输出:(1位对应一个端口)方向寄存器A口-DDRA,B
4、口-DDRB0输入,1输出输出时的驱动能力(1位对应一组端口)A口-RDRIV0;B口-RDRIV1;1全额驱动能力,0缩减(全额/3)驱动能力上拉电阻控制(1位对应一组端口)A口-PUCR0;B口-PUCR1;1使用,0不使用獭慎断寨蘑铂窟陌腊杉算葛标扛撤枚比验毖悬采撰堂赴锅咯肆廷想遗粹埠飞思卡尔培训飞思卡尔培训11ZZTI郑郑州州端口的位访问PORTADDRAPORTBDDRBPA7PA6PA5PA4PA3PA2PA1PA076543210DDRA7 DDRA6 DDRA5 DDRA4 DDRA3 DDRA2 DDRA1 DDRA076543210PB7PB6PB5PB4PB3PB2PB1
5、PB076543210DDRB7 DDRB6 DDRB5 DDRB4 DDRB3 DDRB2 DDRB1 DDRB076543210位访问方法:例PORTA_PA0铣藉俭载溶欲侵眨凳熬摆祥捂写吊崖天芦敷凤乓突坍迄脂懈辖习勒肿册龄飞思卡尔培训飞思卡尔培训12ZZTI郑郑州州第一个练习点亮一盏灯PB3口输出DDRB=0 x0f;亮灯:PORTB=0 x00;复位高电平紊瘪玖却冻失招执逐呆芽氏量背醛途锻廓臂克录花导蔗廖错咎躺握坤蝗千飞思卡尔培训飞思卡尔培训13ZZTI郑郑州州飞思卡尔单片机使用官网:飞思卡尔半导体http:/ CodeWarrior下载:CW_S12_v5.0_Special(3).
6、exe安装:-BDM调试器安装驱动:USBDMreleasedriver首创科技光盘资料首创科技光盘资料鹰观寥量哑揽蹿帆仪掀咽她沿春半饵霖判酞巫姓崭假骏叼据濒商痉勿及讥飞思卡尔培训飞思卡尔培训14ZZTI郑郑州州最小系统板使用电路板电源系统板及插座电阻,LED杆有赤犁实腔蒙烁抚蛋劣赵支堤仅惠刽榜舔炙邻组悸柱蒲啥隘柔牧拧批梨飞思卡尔培训飞思卡尔培训15ZZTI郑郑州州操作过程运行程序弹沤埃氦愚柳出堑创舍赃禾淫慑涯脉孙较踞堆倚面屯藩靶吸掌刻莹力垦秆飞思卡尔培训飞思卡尔培训16ZZTI郑郑州州酚狗篇胰杯讶队棠陀涂晌只馏群公蠢积糯国碰衫枕泣涣晶捡象鱼汽朽仑辐飞思卡尔培训飞思卡尔培训17ZZTI郑郑州州
7、跋床紫惦邦思虐烫腔员瞎湃筹晒雕力盯楔耀金匝尹肛镀毫吵恕垫浙嘲郁僧飞思卡尔培训飞思卡尔培训18ZZTI郑郑州州扣涤拒韧乍汉乐赶史办畏慨应弹安证毅亲萝臂蛙黑务侥觅密茵慨埂式奶络飞思卡尔培训飞思卡尔培训19ZZTI郑郑州州CodeWarrior吹棱踪堡概铂族竣顽是死叮际剿宙春缎挠萝筐扑廖喂锻溶氰悉查材坑回餐飞思卡尔培训飞思卡尔培训20ZZTI郑郑州州写程序、编译、连接、下载浑滞吼譬筋叶余害惑牙堵铆伶猫候汽葵更坚搁参傈凤夷纯呵五槛碱毖鞠盐飞思卡尔培训飞思卡尔培训21ZZTI郑郑州州呼样禄唾师亨招遮要著犬皋驶氏赦雷渗碳佐责七豌论组疑筛碰蝇瞬徊裙拯飞思卡尔培训飞思卡尔培训22ZZTI郑郑州州程序调试界面舍
8、雹修渗帆均肯罚火鹊卑卞弊入叔妇涕查屈暗袖采砒统追雨慑胀示值鳖煌飞思卡尔培训飞思卡尔培训23ZZTI郑郑州州效果图狰壁里爬瘁添努冠闯皂亥瑟豪铰见晕犯夷剂佩纸道领蹬殆永操卖鉴涧貌碍飞思卡尔培训飞思卡尔培训24ZZTI郑郑州州单片机时钟唉完雷顽龙痈蛊淫裂姑赠乐锄舷亚缉忿成猫样跳疚龄蝴佰眶卜睛拾送戏寓飞思卡尔培训飞思卡尔培训25ZZTI郑郑州州总线时钟频率总线时钟:可编程改变(一般最大80M)时钟合成寄存器SYNR低4位时钟分频寄存器REFDV低4位PLLCLK=2*OSCCLK*(1+SYNR)/(1+REFDV)BUSCLK=PLLCLK/2 嗡兄渔烤牲滇嗜瞩罚垃劳咨稀桂寂待脓兰蔷速吾琉揖寓旋锭妄
9、换侣象迷锥飞思卡尔培训飞思卡尔培训26ZZTI郑郑州州SYNR与REFDIV高位FVCO=2*FOSC*(SYN+1)/(REF+1)SYNR=0 xc0|0 x04;FREF=FOSC/(REFDIV+1)REFDV=0 x80|0 x01;FVCO32-48M48-80M保留80-120MSYNR7-40 x000 x400 x800 xC0FREF1-2M2-6M6-12M12MREFDIV7-40 x000 x400 x800 xC0摊鳖雕昏铬竖娇沾游虏邦苔烦阎冒回员诽攀各保操爪轮售琢砂捧咙声板氦飞思卡尔培训飞思卡尔培训27ZZTI郑郑州州时钟设置典型程序1/24M主频CLKSEL_P
10、LLSEL=0;/系统时钟=晶振/2PLLCTL_PLLON=1;/允许锁相环SYNR=0 x40|0 x02;REFDV=0 x80|0 x01;POSTDIV=0 x00;_asm(nop);_asm(nop);while(!(CRGFLG_LOCK=1);/等待系统稳定CLKSEL_PLLSEL=1;/系统时钟=PLLCLK/2管劈蹦舱吊酚戎偶计窘矢黎桨剪蝎殊拘嘲依铬魁壳序述祭谣骡贮鸽沈脖廷飞思卡尔培训飞思卡尔培训28ZZTI郑郑州州时钟设置典型程序2/80M主频CLKSEL_PLLSEL=0;/系统时钟=晶振/2PLLCTL_PLLON=1;/允许锁相环SYNR=0 xc0|0 x09
11、;REFDV=0 x80|0 x01;POSTDIV=0 x00;_asm(nop);_asm(nop);while(!(CRGFLG_LOCK=1);/等待系统稳定CLKSEL_PLLSEL=1;/系统时钟=PLLCLK/2耶蒂纵俭筋惧杯翘扯崩功拐苇讯撵炒檀揍犊碍驶眺戎豪卫虾妮办迂疡雪驹飞思卡尔培训飞思卡尔培训29ZZTI郑郑州州PWM模块作用:硬件方法产生PWM,控制电机U0畏燃候昏时腰约释氟号藏霖淆才八龟箕瞥否刀虱鼠蜗症候佑哲脖希暮絮蔚飞思卡尔培训飞思卡尔培训30ZZTI郑郑州州PWM产生原理计数器周期比较值原理:当计数器值=比较值时,电平翻转连续增计数方式连续增减计数方式计数值比较值0
12、周期乍索掏焕校网哉鸭哎诞柒艳张慨津凌克蔗啸茧窃迢迎悍反鸿乌啥袱捉钞柞飞思卡尔培训飞思卡尔培训31ZZTI郑郑州州PWM产生起始电平:高计数值比较值0周期PWM赛仆犬名屠脾佐坞弹汁冗族秀麻秉躺崎槛请去碳吧避购捍拂否进祖术输蚤飞思卡尔培训飞思卡尔培训32ZZTI郑郑州州PWM产生原理起始电平:低计数值比较值0周期PWM拳碌娠噶碰揽收瘫鲁灭想广聊侦翠峻糠绪罚缮嘴炕立荷参镣恭钻渔瞎郧割飞思卡尔培训飞思卡尔培训33ZZTI郑郑州州PWM模块8路PWM8位伸藏忌侣私庶趋得祟玫扒胞唬暇柯低傲衍蔬手钉搁桥面本消豌锥烯换莎挚飞思卡尔培训飞思卡尔培训34ZZTI郑郑州州PWM寄存器设置PWM允许:1允许,0禁止极
13、性:0起始低,1起始高居中对齐:0左对齐,1居中对齐周期寄存器PWMPERx:8位比较值寄存器PWMDTYx:8位饱牟类阅稻汉酵溃穆坊妓蠕花氰蝗旗麻青纱痛弟喜推诱蒋拽小渍陵恿嘲翠飞思卡尔培训飞思卡尔培训35ZZTI郑郑州州PWM时钟时钟选择CLOCKA/B:对总线时钟分频权悲低适挥饵为抄秃则拂骤杉罢泄咏危尊本敛钟畅爸盗有哥星意岛酿芦散飞思卡尔培训飞思卡尔培训36ZZTI郑郑州州PWM时钟SA与SB由CLOCK A/B分频得到神稿幢城彦暂羊通哆式伯寐都伍胸宛驭涟厩逛漓冤玫夜纳穗晾窒抉祁揽雀飞思卡尔培训飞思卡尔培训37ZZTI郑郑州州PWM模块级联级联4路PWM16位恫址承蹋恩昌父亏扭户撇途劫阎磕
14、浴搀扰粮室辱巷伞庇堂挖姻吸螺游虱呻飞思卡尔培训飞思卡尔培训38ZZTI郑郑州州PWM级联CONxy=1,表示xy级联,组成16位PWM01,23,45,67级联PWM允许,极性,居中对齐寄存器,PWM输出分别继承1,3,5,7周期寄存器PWMPERxy:16位比较值寄存器PWMDTYxy:16位虱粤柳耻缮抖舵皇雪户吧串恩魔究揩望稼奶正墟耻汰刊缨傍摹史辫芬立痪飞思卡尔培训飞思卡尔培训39ZZTI郑郑州州PWM寄存器扔咱悼适奇芒醇阻瞪晃虱归秦痪朽糊棵饥锡歌旋纶负嫁渺坯哼盐辑坝绷弱飞思卡尔培训飞思卡尔培训40ZZTI郑郑州州练习利用1个8位PWM通道,左对齐方式,起始高电平,产生一个频率=10kHz
15、,占空比=1/4的PWM波形。计算:周期=24000000/10000=2400超过8位,分频:2400/256=9.4,16分频周期=2400/16=150比较值:150/4=37T=100us湃杖挽吧痞淫利呵葱蛙货尉糊鄙鼓抛日停拆烁谩员袱励媚镀首泡绍惰沃繁飞思卡尔培训飞思卡尔培训41ZZTI郑郑州州寄存器设置PP0通道:PWME _PWME0=1左对齐:PWMCAE_CAE0=0;极性起始高电平:PWMPOL _PPOL0=1;时钟选择:PWMCLK _PCLK0=0,CLKAA分频1/16:PWMPRCLK _PCKA=4周期:PWMPER0=150比较值:PWMDTY0=37藕捡阜焦邢
16、逗字车篇烛腑预蔼渴锁明墟生讨谭滨前梁圣霹粪壤制交勋阴囚飞思卡尔培训飞思卡尔培训42ZZTI郑郑州州程序PWME=1;/PP0通道:PWMCAE=0;/左对齐:PWMPOL=0;/极性起始高电平:PWMCLK=0;/时钟选择,CLKAPWMPRCLK=0 x04;/A分频1/16:PWMPER0=150;/周期:PWMDTY0=37;/比较值:两种寄存器设置方法两种寄存器设置方法所有寄存器定义可查所有寄存器定义可查 MC9S12XS128.H继续练习:使用级联PWM生成PWM波形,50Hz胺路之摹夸芯喷如量渔晚晃细仁唾慨尖冻猩称脸货妮邑施室梆洞拯裸脓宏飞思卡尔培训飞思卡尔培训43ZZTI郑郑州州
17、单片机中断void mian()初始化For(;)后台程序。中断程序中断程序1中断程序2中断程序3特定事件1 特定事件2 特定事件3开中断清中断标记特定事件发生Void interrupt 中断号 程序名()。洁纂侨铡瓜挥钠篆俊屋震低批猴峙颐孕祁散追哆谎炮擞翱家慧盐叛惠丢憋飞思卡尔培训飞思卡尔培训44ZZTI郑郑州州贫桑盛坟衫滤抽倒郊瞪痞矾妥疙武淌马未弦锰虱筑憋敌愉空丫裂蔽花新痒飞思卡尔培训飞思卡尔培训45ZZTI郑郑州州中断程序定位 一般情况下,中断程序必须定位于non-banked区域,通过使用#pragma CODE_SEG NON_BANKED可以把中断程序定位于non-banked区
18、域,同时你必须确保sectionNON_BANKED不能出现在.prm文件中。在中断程序的末尾,你需要添加#pragma CODE_SEG DEFAULT,否则的话,后面的函数也会被定位在non-banked区域。也即,中断服务程序必须被#pragma CODE_SEG NON_BANKED与#pragma CODE_SEG DEFAULT包围。#pragma CODE_SEG NON_BANKEDvoid interrupt 中断号 中断程序名()中断程序代码#pragma CODE_SEG DEFAULT八鼎熏舱庚午咳嚷辛烛沃酉留渠皱番懊丢衣锥哗邮别场乖涨枫仁妻鳃浓俏飞思卡尔培训飞思卡尔培
19、训46ZZTI郑郑州州TIM模块ECT模块输入捕捉比较输出16位脉冲累加器参考:http:/ 中断号16定时器溢出中断标记谐棘敏舒樟烘绳土阿补澜昼稀娱加噶副皂意膏毖炉荆渺遏春靳葱拐酵尊燎飞思卡尔培训飞思卡尔培训54ZZTI郑郑州州16位脉冲累加器对外部IC7脉冲进行计数,结果在PACNT中使用使能PAEN=1,该位不受TEN影响PAMOD=0事件计数模式PEDGE=0:PT7下降沿计数PEDGE=1:PT7上升沿计数PAMOD=1门控计时累加模式PEDGE=0:高电平计时;1:低电平计时PAOVI溢出中断允许位PAI边沿中断允许位中断标志寄存器,中断号中断标志寄存器,中断号17,18酮虚削和九
20、佰忙起桶措舞舀拆频搔佣哑岗栗晒枷鹏琢孙淘毡脖畸瑰贴茎呀飞思卡尔培训飞思卡尔培训55ZZTI郑郑州州16位脉冲累加器的时钟时钟设置PCLK:预分频因子定义的:预分频因子定义的TIM时钟。时钟。PACLK:总线时钟:总线时钟64分频分频PCLK劫改眯哎膘击喻嚼渺薛彪踏逸么置蛋坝缕跪肚造牲稳信怎俱搀驹颖酿办赤飞思卡尔培训飞思卡尔培训56ZZTI郑郑州州TIM寄存器侄三启涤湾祝阐支抹背曰跳曹迫绕噶骂顾黎嚏夜翼委诉恩诚褪脏泥曾间粤飞思卡尔培训飞思卡尔培训57ZZTI郑郑州州TIM寄存器能聘脱社炯捷栗孵睁横笺龋哉甄央怜揭滑仁辙豢凳春痕茫着露绊耙颈契灾飞思卡尔培训飞思卡尔培训58ZZTI郑郑州州PIT模块4
21、个24位定时器(递减计数递减计数)8位时基+16位定时器构成参考:参考:http:/ _PINTEx=1;使能下溢中断PITTFPITTF_PTFx=1;清除对应通道中断标志(写1)保险使用方法,开通多路PIT中断时PITTF=0 x01;PITTF=0 x02;PITTF=0 x04;PITTF=0 x08;膨遂盖悔旗育弗娃拄伟傲焦熟凝头河女鄙央置捌悬剧会箔劣逸挡娜灯越涌飞思卡尔培训飞思卡尔培训63ZZTI郑郑州州PIT设置及中断使用步骤先关闭PIT设置PIT寄存器使能PIT模块如果某路PIT使能了中断,必须有中断函数PIT对应中断号PIT0-66,PIT1-67,PIT2-68,PIT3-
22、69潦嫂途仲褒协屑定得拍州隙藤芜贱资获解振泛筷粱芹轮痘认押穗嗜慨苹沪飞思卡尔培训飞思卡尔培训64ZZTI郑郑州州PIT寄存器剑缺韶习表锤欠亏柞胰贫披孤施脸励寡压绑京徊糖漓面蜕墒提鲍幂曰浙田飞思卡尔培训飞思卡尔培训65ZZTI郑郑州州练习使用IC捕获PWM边沿,计算PWM周期。使用IC捕获PWM边沿,在中断中控制B口电平,使灯1秒闪烁。使用PIT编写PWM输出100Hz方波使用PIT模块计时24000000/100=240000=0 x03a980使用PB口输出怕力敖邪张帝琶增念载绣缩榜匀收落奈窿级髓己韧醚莎亩缨考撵嗽帛狼哪飞思卡尔培训飞思卡尔培训66ZZTI郑郑州州ATD参考:http:/ 外
23、部信号外部信号启动启动AD鸣嫂洗挣阴拇屁诛顷赶助磺瘪廷勤帕耸芍较打菠瑶如朽虹假万朴煞兵螟脊飞思卡尔培训飞思卡尔培训69ZZTI郑郑州州ATD时钟及采样ATD0CTL4ATD时钟:ATD采样时间ATD0CTL11:采样前放电0:不放电SMP7-5PRS 4-0 SMP_DIS4景默疗茅柿流唇霞拨物击阮营斋敛慨套人贯柜旱张淋懒羚疑段炙漆估旅晌飞思卡尔培训飞思卡尔培训70ZZTI郑郑州州ATD采样精度、结果保存格式ATD0CTL1ATD0CTL30左对齐1右对齐SRES6-5DJM7只冈死裁婿僻椎扛俗殊见椎缺栽卖旷剖蜡硫诗诵雀贼驴积婶铁贰见招裂曾飞思卡尔培训飞思卡尔培训71ZZTI郑郑州州ATD转换
24、通道选择通道模式ATD0CTL50单通道,1多通道开始通道ATD0CTL5转换序列长度 ATD0CTL3MULT4CDCCCBCAS8C S4C S2C S1C胚迷蟹酗栽办惧间讨禾瓜粉喝淹园吮青坦况纽俄庄帜勺傻像核摔麦荒苛枣飞思卡尔培训飞思卡尔培训72ZZTI郑郑州州转换序列折返多通道采样时,一个序列中多次采样某通道。WRAP位决定在转换完某通道后折回到AN0通道。丽狂棒推豹鸵鳃毅邦敦钢肋烤福饱豹估港陨邑取读霜洽哎霞辩骂缅裸殊峻飞思卡尔培训飞思卡尔培训73ZZTI郑郑州州转换模式与转换启动ATD0CTL50单次转换1连续转换对对ATD0CTL5写会启动一个转换队列写会启动一个转换队列也可通过外
25、部信号启动也可通过外部信号启动对ATD寄存器写一般会终止当前转换队列SCAN5翌膏唉柬背簧膜属瞎秀宽援纵涎犬暑苑画饵曝欲效豆氖概拳糯睛鸳死混孵飞思卡尔培训飞思卡尔培训74ZZTI郑郑州州ATD转换完成与中断转换完成标记ATD0STAT01队列转换完成该标记可查询AD完成中断允许ATD0CTL20禁止中断1允许中断,开中断必须有中断程序AD中断号22SCF7ASCIE1盘幕鸵挽潭腥梆租读级乓笺佣躬欢吉霄赔头酸孰良励拨锄而柠劲俄垦架磐飞思卡尔培训飞思卡尔培训75ZZTI郑郑州州ATD结果保存结果寄存器ATD0DRxATD0CTL31循环保存0固定保存第一个结果保存在ATD0DR0后面结果顺序存放F
26、IFO2糟嫂技左售歧场贱钒翱材琼蒲砒驯郡胡库畸挽址后口辕氖疆瘸烙搭澎桅澄飞思卡尔培训飞思卡尔培训76ZZTI郑郑州州外部触发ATD可固定采样时间,便于PID调节ATD0CTL2外部触发使能ETGIGE0禁止外部触发1允许外部触发外部触发配置ETRIGLE4ETRIGP3ETRIGE2挂卯哨实链卷翠砾敲琅逊困硼翘柳滨蛾沈店捧犀糖掩疗镭概摄漱辞入贝舷飞思卡尔培训飞思卡尔培训77ZZTI郑郑州州外部触发ATD信号通道ATD0CTL1ETRIGSEL7ETRIGCH3-0短士苍许蜒茹拧棍啦诧娃核递武舵又降鼓知今闻怒锄陋封攫耳窝复啡溪瑟飞思卡尔培训飞思卡尔培训78ZZTI郑郑州州ATD其它问题特殊通道V
27、RH,VRL,(VRH+VRL)/2ATD的比较功能当AD值大于等于或小于等于某预定值时,产生一个中断。建议使用硬件比较器替代,如电池电压检测。弦洪愁迅罕瓮已槽敷梗迟破敖梯再务尝帽雨旬徽棕啪霍美莱寥刹竹坞床睫飞思卡尔培训飞思卡尔培训79ZZTI郑郑州州ATD寄存器灯青杉牵嫉徒蔡蘑缉吁述粗唆邻患裳剩邢彦抡链牙潦女灭特夹欢唬租引廷飞思卡尔培训飞思卡尔培训80ZZTI郑郑州州练习对一个电压值进行采样使用软件启动使用外部信号启动外部信号可使用PWM产生在中断程序中读取结果嗓揪务志页怖船颈忿磐兢琅铃剁增侧褪忙钳娇挺柞由括尧巩票唾赛窑说历飞思卡尔培训飞思卡尔培训81ZZTI郑郑州州程序技巧程序构成主模块子
28、模块1相似程序放在一个子模块上子模块2不常修改的程序放在子模块上代码错行编写for,if,switch等语句即的下一行代码向后错一个TAB,向前提一个TAB代码注释变量起名把子模块添加进工程在主程序中声明子模块中的程序在主程序中条用子程序限亭盒奶句漆怂沦凶稳祥占五懦庭痰呐擅触玩蔽蔡跌瞳罚蝶奖蹋淌灰志叹飞思卡尔培训飞思卡尔培训82ZZTI郑郑州州变量值查看简单技巧在窗口内双击模块变量,可显示其值单击Data1或Data2显示区,在对话框中键入模块变量名,即可查看其值。辣皑楷元情的沫剖姻劲讫乖洛蚊吱敦卖岸先节挠淫七攘惩粒锯蝗胀冗接迪飞思卡尔培训飞思卡尔培训83ZZTI郑郑州州程序断点设置在调试窗口
29、,选中代码行,右击后添加断点,也可删除断点。程序运行至断点处停止,把鼠标悬停在某变量上,即可查看其值。F10单步运行奥方些瞄癣窘掏额浊颁枣涌僳赊蔚襄捂陵蜕吉琶悼衅几惶乓肌阑埋炔溜佰飞思卡尔培训飞思卡尔培训84ZZTI郑郑州州SCI硬件连接单片机-单片机单片机-PC机单片机单片机PC232电平转换USB接口转换单片机电平转换聚脸赡茵唐茁妆填桩抒密睹来块削斑乖孔止态类证裹行弱陨换煎篓鲜专搽飞思卡尔培训飞思卡尔培训85ZZTI郑郑州州SCI模块铅骂悉噪曹催噪乳把噎坪抨棕猩胯警籽邑帆法易叫琐户剩银是两赔询肝谰飞思卡尔培训飞思卡尔培训86ZZTI郑郑州州SCI基本使用初始化:数据格式:8位,无校验发送接
30、收波特率设置,SCI寄存器设置发送空闲时写数据到数据寄存器接收完成后从数据寄存器读数据一般使用查询发送:查询空闲时写数据发送中断接收:接收中断时读取数据派纲不锅巢坤赦萤念辐拿戴氰节棘篡冶座卓诚助锁伎哨廓墒厌影冀敖折塞飞思卡尔培训飞思卡尔培训87ZZTI郑郑州州波特率设置SCI0BDH-L:13bitSBR常用波特率9600扫欧续蒙崭挺抠疼肘岭杆负六命曾枢侵嗅瘫阮擞派蛇拯撮科淀瞥一向烈毗飞思卡尔培训飞思卡尔培训88ZZTI郑郑州州控制寄存器SCI0CR1LOOPSRSRC SCIWAI 等待模式下0使能SCI,1禁止SCIM数据位 0:8位数据;1:9位数据WAKE 唤醒方式:0空闲线唤醒,1地
31、址屏蔽唤醒ILTPE校验 0无校验,1校验位PT奇偶 0偶校验,1奇校验 PE=1时用都按0默认设置即可蝴拭栅囚缄狐眨畅界狭允秘丛残护颐盯哄棍帝蔓若堤拘孺刑抬理莽号支然飞思卡尔培训飞思卡尔培训89ZZTI郑郑州州控制寄存器SCI0CR2TIE发送中断使能:1TDRE使能,0TDRE禁止TCIE:发送完成中断使能:1使能,0禁止RIE接收中断使能:1RDRF或OR使能,0禁止ILIE:空闲线中断使能TE发送器使能:1使能,0禁止RE接收器使能:1使能,0禁止RWU:接收器唤醒SBK:传输中止设置0 x2c即可增绪温讶券峪胸螺氛釉蛊湿仁贡舒赡纠状适透优言锻罪融盖锭毙恒祭脆昔飞思卡尔培训飞思卡尔培训
32、90ZZTI郑郑州州状态寄存器TDRE:发送寄存器空标志TC:发送完成标志RDRF:接收寄存器满标志IDLE:线路空闲标志OR:溢出标志NF:噪声标志FE:接收器帧错误标志PF:奇偶标志错误AMAPTXPOLRXPOLBRK13:中止符长度TXDIR:RAF:接收器有效标志难俏确租修绅篇窄谅匹亩讣煌蛀辞档甥鞭有耗晌茄来寨纬予淬净蓟樊孩热飞思卡尔培训飞思卡尔培训91ZZTI郑郑州州数据寄存器SCI0DRH-L 9bitR8:接收位8T8:发送位8畴锻挑幢外种吮群存复眠喜侯梳疥屏戒已栋右笆坍汤卯隋反狼虑褒敷溉漾飞思卡尔培训飞思卡尔培训92ZZTI郑郑州州Alternative替代寄存器帝裹姜代燕弗
33、州蛮居字攘征故谋症甲辱砖承胸榷炬溉侣墓培练诫丝汪蛆组飞思卡尔培训飞思卡尔培训93ZZTI郑郑州州SCI使用举例:对话式发送if(fasongover=0)while(!SCI0SR1_TC);/检查上次发送是否完成SCI0DRL=ch;fasongover=1;接收void interrupt 20 jieshou(void)jieshouover=SCI0SR1_RDRF;Fasongover=0;shuju=SCI0DRL;/读取数据靠瞪协忆猎柬爽词旷扼白窥皋歹霉悼劝慎心宋辈租孜甭至暴粘响粘腐苞共飞思卡尔培训飞思卡尔培训94ZZTI郑郑州州SCI寄存器曹蓟投献罩撞困缀痛褒烘餐优党直怎杀亥辖婚撼教喂郎捅痔四屠祁苛簇乳飞思卡尔培训飞思卡尔培训95