PIC单片机原理及应用教案_第1页
PIC单片机原理及应用教案_第2页
PIC单片机原理及应用教案_第3页
PIC单片机原理及应用教案_第4页
PIC单片机原理及应用教案_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、PIC单片机原理及应用教案牛军浩主编桂林电子科技大学PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩1第 #页第 页RPIC单片机原理及其应用牛军浩第 页第1章PIC单片机概述(1)教学内容:PIC单片机特点、资源重点内容:哈佛(Hanmd)总线结构、两级流水线、为什么驱动能力强?难点内容:哈佛体系、哈佛总线1.1PIC单片机的CPU特点精简指令集技术代码利用率提高、执行速度提高、学习记忆快、节约开发时间哈佛总线结构哈佛体系结构:指程序存储器和数据存储器处不同的物理空间,即两者不处J:同一存储空间。哈佛总线结构:指程序存储器和数据存储器独立编址,即两者位不同的物理空间的结构。单片

2、机位数概念:单片机是多少位的取决于数据总线的位数,如常用的为8位,即数据宽度为8位,每次传送一个字节。例如:PIC16系列主要为8位的,凌阳单片机16位,DSP、ARM等基本上为32位,计算机为32位,也有64位的。作为冯*诺依曼结构和普通哈佛结构,程序存储器和数据总线公用,所以程序指令也是8位的;但对PIC的哈佛总线结构言,程序存储器使用独立指令总线,所以不受数据总线的限制,高中低档单片机的指令长度分别为16、14、12位。【位数越人,单次取指所含的信息就越多,执行效率越高,如MCS51为8位的指令长度,很多指令必须耍两次取指才能将一次执行所需的信息获取完毕】两级流水线指令结构流水线是当前控

3、制器中普遍采用的用提高运算执行速度的方法,指的是处理器在处理一条指令的同时可以対卜一条要执行的指令进行预处理。这得益丁哈佛总线结构的应用。寄存器结构【RAM结构形式】PIC的所有寄存器、IOil、定时器等资源,均采用RAM结构形式。只需一条指令周期即可完成访问和操作。1.2PIC单片机的系列产品档次:按高中低,16位、14位、12位管脚:最少8个引脚,14、18、20、28、40、80、84等资源:ADC、PWM、比较器、LCD显示、温度传感器、IIC、SPI、USART、CAN、USE、LAN1.3PIC16F877单片机的功能特点(外FBI模块)【以后讲解如不特别说明,均指16F877型号

4、的单片机】功耗低:5V4MHz时电流小J-2niA,睡眠模式卜电流小于luA。程序存储器容量:8K*14位RAM存储器容量:368字节驱动能力强:驱动输出电流可达25mA,吸收电流达20niA,iflj51IO驱动电流为uA级的基本IO端口:33个IO口,PA6位,PB、PC、PD为8位,PE为3位定时、计数器:TMR0(8位)、TMR1(16位、CC)、TMR2(16位、PWM)内部EEPROM数据存储器:256字节片内看门狗:不需外部元件,节省成本和空间片上ADC:8个10位分辨率具有捕捉、比较和PWM模式:Capture可捕捉外部输入脉冲的上升沿或卜降沿,并产生中断。用测駅外部信号周期、

5、频率、脉宽。Compare比较功能用J:输出不同宽度的矩形脉冲和延时信号;PWM脉宽调制功能将产生占空比可调的周期性方波信号,可实现直流电机的调速、DA及步进电机的控制。同步串行口SSP:SPI、IIC通用异步串行IIUSART并行从动端IPSP作业:PIC单片机采用的哈佛总线结构和冯*诺依曼、普通的哈佛结构有什么区别,有何优点?PIC16F877单片机与普通51单片机相比有何优点,至少列出5条?PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 页PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 页第 页命IC单片机原理

6、及其应用牛军浩第 #页第2章PIC单片机的CPU和中断系统(1)教学内容:PIC单片机的基本环境设置、中断系统结构重点内容:系统配置、中断系统结构难点内容:系统配置、中断系统结构2.1PIC单片机的基本设置系统配置字用r设定单片机的程序保护、在线调试、低压编程、掉电锁存复位使能位、上电定时、看门狗、振荡器模式等基本的工作环境。由软件在烧写程序时设置,用户在程序中不能访问;配置方式:使用软件上的选项进行选择、或者在程序中用“_CONFIG”预处理指令定义芯片的配置位;.CONFIG(HS&PROTECT&PWRTEN&BOREN&WTDIS&DEBUGDIS);设计时不用关心各个功能位的位置,只

7、需执行软件选项,防止出错。振荡器配置表2.1PIC单片机的不同振荡方式振荡方式解释频率范围特点LP低功耗W200KHZXT标准晶体200KHZWW4MHZHS高速晶体4MHzWW20MHzRC阻容振荡0WW4MHz节约成本、频率不稳定4.7K22pF时约为4MHz外部时钟3.复位表2.2PIC单片机的复位方式解释复位方式上电复位每次加电、检测VDD上升过程,上升到1.6V-1.8V,有效复位,会自动延时72111S+1024个时钟周期人工复位通常使用按键看门狗复位为防止程序跑飞而有意安排的复位,必须周期性对看门狗AVDT清零欠压复位工作电压跌落到Vbor以卜的时间超过200uS时就会复位DIO

8、DE1RL10kU1P3C1OT2Au100RB益gRBRBRBRBVDDvcsRDtRC器gugus富説就益卷迓鬆芒运盂40RB39REd33RB537RD430RE335RE:34RBI33KEOVCC2331*R1电阻值应小J:40KH乙以保证压降不人J0.2V,MCLR漏电流为5uA*R7电阻取值为1001000欧,用于限流保护MCLR引脚*D1二极管能够使C能快速放电,如果掉电又上电,C的积累电荷会造成复位电路失去作用合MCLR引脚不能悬空图21复位电路和振荡电路看门狗目的:增加系统的稳定性、可靠性和安全性,是一种亡羊补牢的措施,当单片机一旦发生程序失控或者死机,设法把系统回复到正常

9、工作状态。造成程序失控的原因:电源电压的波动、电源电压叠加的噪声、电磁干扰、软件故障等结构图:自带时钟源、定时周期733ms,典型18ms,可分频1:128,达到2.3s正常情况:在主程序或者耗时较长的函数体内,周期性的“喂狗”CLRWDTFIGURE14-11:WATCHDOGTIMERBLOCKDIAGRAMFromTMRC*CockSou/w.(明WQ6-1)Y/DTTime-ojiNoce:P$A9ndPS2PS0rehterheOhnON.REGp*图2.2看门狗结构图睡眠模式为了降低功耗的又一措施,sleep2.2中断系统中断的概念:当CPU正在执行当前程序的过程中,由某种突发事件

10、的发生,CPU暂停当前的操作,转去执行对突发事件的处理程序,完成后,再返回原來被打断的地方继续执行。中断作用:対主要的时间可以得到及时处理,可在实时性较高的程序中使用。PIC16F877的中断源表2.3PIC单片机的中断源中断源种类标志位中断使能位外部中断1NT1NTFINTETMR0溢出中断T0IFT0IETMR1溢出中断T1IFT1IETMR2溢出中断T2IFT2IERB口电平变化中断RBEFRBIECCP1中断CCPIDFCCP1IECCP2中断CCP2IFCCP2IESCI同步发送中断TXDFTXIESCI同步接收中断RCIFRCIESSPIIC总线碰撞ADEEPROM写操作PSP并行

11、从口读写中断PIC16F877的中断逻辑与中断相关的寄存器名称解释内容INTCON中断控制寄存器全局.外围、TO、RB、INTPIE1第一外设中断屏蔽寄存器打开或者关闭中断用PIR1第一外设中断标志寄存器存放中断标志用PIE2第二外设中断屏蔽寄存器打开或者关闭中断用PIR2第二外设中断标志寄存器存放中断标志用OPTIONRBPU、INTEDG、TOCS常用中断介绍CMIE图23PIC16F877A中断逻辑6.外部断(INTpinIntempt)TMRO+断OxFF-OxOORBII电平变化中断TMR1中断OxFFFF0 x0000TMR2中断0 xPR20 x00CCP1中断:捕捉模式、比较模

12、式CCP2中断#includevoidmam()unsignedcharkeysendkev;OPTION=0X00;PIE!=OXFF;TXIE=1;SSPIE=0;INTCON=0X80;作业:画出PIC16F877A单片机的中断逻辑图。并书写程序段,开放PE电平中断为上升沿,AD使能和SCI中断。列举PIC16F877A单片机的振荡方式,说明各振荡方式的工作频率范I羽。画出单片机的基本复位电路.时钟电路,注明参数,并说明作用。PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 页第 #页命IC单片机原理及其应用牛军浩第 #页第3章PIC单片机的指令系统(2)3.1PIC汇编语

13、言指令格式每条汇编指令由4部分组成,格式如下:标号操作码助记符操作数1,操作数2;注释标号。代表指令的符号地址,为了便丁查看、修改,以及指令转移地址的表示。切记不能与系统的操作码助记符同名。可选项操作码助记符。必选项,可以是指令助记符、伪指令、宏指令。操作数。可选项,注意表示方式,0011001100B,OxOA,0AH,1250,213D注释。可选项,用来对程序进行注释,便J:用户理解、修改和调试。用分号隔开3.2PIC汇编语言指令集3.3伪操作指令3.4寻址方式pic单片机原理及其应用牛军浩1pic单片机原理及其应用牛军浩1命IC单片机原理及其应用牛军浩第 #页pic单片机原理及其应用牛军

14、浩1pic单片机原理及其应用牛军浩1命IC单片机原理及其应用牛军浩第 #页第5章IO输入输出模块(2)一、io1-1分布表5.1PIC16F877A单片机IOII分布端【1名称端口数量复用功能PA6模拟输入PB8外部中断(RB0)上拉PC8定时器1.CCP、SPEUSARTPD8并行从动端口PE3并行从动端口、模拟输入二、IOII使用注意事项使用时,必须设置输入输出方向作为IO使用时,必须关闭复用功能寄存器,默认上电为IO状态每个IO输入输出驱动能力为20niA,可简化外围电路每个IO有恢位保护电路(可防止外部输入超出电压范围)三、IO口相关寄存器TRISX端II方向寄存器PORTX端I数据寄

15、存器OPTION寄存器BIT7-RBPU,RBII上拉功能四、IO口使用方法数据输入UnsignedcharIiiputdata=0;BITIiiputFlag=0;TRISB=OxFF;/设置端II输入输出方向,0为输出,1为输入Inputdata=PORTB;寄存器操作,读取外部端II8位状态数据InputFlag=RB0;位操作,读取单个输入状态数据输出UnsignedcharOutputdata=0 x55;TRISB=0 x00;/设置端II输入输出方向,0为输出,1为输入PORTB=Outputdata;设置外部端口状态数据RB0=1;五、应用实例一、独立式按键输入独立式按键电路u

16、ipiciers*Aoo_KEORDRrmREICSBDVSSORCLK1OgCLKORCORC1RC:gRDORDlW4BlW4BLW4BLW4Bl图5.1独立式按键电路Z9REC58RB;STRE455RE2RE1RB0PC卜870s1FXYOKEYKEY:KEY,第10页PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩第 #页第 页命IC单片机原理及其应用牛军浩第 #页电路原理:在无按键的情况卜:RB4-RB7在上拉电阻(或者RBPU)的作用下保持高电平。当有键按下时,对应的单片机管脚输入为低电平;当RB4RB7中有低电平存在时,进行判断并执行和关程序。按键去抖按键抖动过程

17、:通常的按键所用开关为机械弹性开关,当机械触点断开、闭合时,电压信号如卜图。由机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一卜子断开。因而在闭合及断开的瞬间均伴随有一连串的抖动,如卜图PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页抖动时间:抖动时间的长短由按键的机械特性决定,一般为5ms20ms,甚至100ms。依据实际使用来定。抖动危害:按键稳定闭合时间的长短则是由操作人员的按键

18、动作决定的,一般为零点几秒。键抖动会引起一次按键被误读多次。处理方法:硬件去抖和软件去抖,碾件是在每个按键处添加RS触发器,成本高,设计麻烦。主要讲软件方法通过延时去抖。为确保CPU对键的一次闭合仅作一次处理,必须去除键抖动。在键闭合稳定时读取键的状态,并且必须判别到键释放稳定后再作处理。所以,所谓去抖并不是把按键的抖动消除了,而是通过延时避开抖动的时间。实际去抖是否成功,需根据按键功能程序是否出现非正常重复处理来判定。程序编写流程设賈RB口方向设柠RBLII:拉PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页PIC单片机原理

19、及其应用牛军浩1PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页图5.2按键打描流程图PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩第 页第 页命IC单片机原理及其应用牛军浩第 #页4.C语言程序设计#includevoidDelayXins(mttune);unsignedchaiGetKeyNumbei(unsignedcharx);voidmain()unsignedcharkey,keytemp;TRISB=0 xf0;设置RB口的03方向RBPU=1;/OPTIONbit7使能RB口弱卜杓功能while(l)kevtemp=PORT

20、B&OxfO;高四位的值即保留RB4-RB7if(keytemp!=OxfO)DelavXms(125);延时125ms消抖if(kevtemp=(PORTB&OxFO)key=GetKevNumber(kevtemp);:扳行按键处理鹵数while(PORTB&OxfO!=OxFO);voidDelayXins(mttune)mtx,y;foi(x=0;xtune;x+)foi(y=0;y1000;v+);unsignedchaiGetKevNumbei(unsignedcharx)unsignedchaikey;switch(x)case0 x70:kev=l;break;caseOxBO

21、:kev=2;break;caseOxDO:kev=3;bieak;caseOxEO:kev=4;break;default:kev=0 xFF;break;returnkey;备注六、应用实例二、采用中断方式处理按键输入RBII中断相关寄存器INTCON:bit7GIE,bit3RBIE,bitORBIF中断处理程序voidiiitenuptISR(void)中断服务程序0 x0004if(RBIE&RBIF)判RBI丨中断RBIF=0;清除RBII中断标,忐在此加入TMR0中断服务if(TOIE&T0IF)判TMR0中断图5.3采用中断的按键处理程序4.C语言程序设计#includevoi

22、dDelayXins(mttune);unsignedchaiGetKeyNumbei(unsignedcharx);unsignedcharkey,keytemp;voidmain()TRISB=OxfO;设置RB口的03方向RBPU=1;/OPTIONbit7使能RB口弱卜越功能while(l)voidinterruptISR(void)/中断服务程序if(RBIE&RBIF)/列RB口申断RBIF=O;清除RB口中断标志keytemp=PORTB&0 xf0;保留高四位的值即保留RB4-RB7if(keytemp!=OxfO)DelayXms(125);延时125ms消抖if(kevte

23、mp=(PORTB&OxfO)kev=GetKeyNumber(kevtemp);执行按键处理誌数备注第 #页第 页命IC单片机原理及其应用牛军浩第 #页PIC单片机原理及其应用牛军浩1whiIe(PORTB&OxfO!=OxFO);PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 页第 #页命IC单片机原理及其应用牛军浩第 #页七、应用实例三:数码管控制设计1、数码管内部结构及工作原理LED数码管就是一组LED灯的排列。分共阳极和共阴极两种。AbcdcfgdpK*DS?DpyRed-CADS?DpyRedVCPIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第

24、 #页命IC单片机原理及其应用牛军浩第 #页PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页图5.1数码管结构图2、电路原理设计.0IlPIC16FS77A157is320111213HRBPBRBgRBRBsoVDDwRDgRCRCRCRCRDRDsRAlESz恣魁迓盟s箔帑VCCIVCCIkSDG?9T64PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页图5.2单个(共阳极)数码管控制电路图注意:如果数码管为共阴极的,则公共端接地,如果是共阳极的,公共端接VC

25、C,注意限流电阻的位置,不能放在公共端部分。2、程序流程设计PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 #页命IC单片机原理及其应用牛军浩第 #页PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 页命IC单片机原理及其应用牛军浩第 #页图5.3程序设计流程图PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩1第 页第 #页命IC单片机原理及其应用牛军浩第 #页程序设计实现#include/tableforCom-ASHMGstaticvolatileunsignedchartablell=0 xC0,0 xf9,0 xa4,0 xb0

26、,0 x99,0 x92,0 x82,Oxd8,0 x80,0 x90,0 xff;/0123456789全灭voiddelayXins(unsignedintXins);voidniainQunsignedchari;TRISB=0;while(l)fbr(i=0;i10;i+)PORTB=tablei;/PORTB=-tablei;forCom-KSHMGdelayXins(lOOO);voiddelayXins(unsignedintXins)unsignedintij;for(i=0;iXms;i+)for(j=0;j90j+);注意:如果使用的是共阴极的数码管,在不需更改位码表内容,

27、只需将PORTB=tablei;改为PORTB=tablei;即可应用实例三:多个数码管控制设计电路设计二pfTT近烈韵恙黑疼监盘运益fJvccW1210DPRed-CSrit-.D:IX:4Dpj*KeJ-CAvccvcuDpyKffd-CA901:PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩1第 #页第 #页命IC单片机原理及其应用牛军浩第 #页PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩1第 #页第 #页命IC单片机原理及其应用牛军浩第 #页图5.4多个(共阳极)数码管控制电路图2、程序流程PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩1第

28、#页第 页命IC单片机原理及其应用牛军浩第 #页图5.5多个(共阳极)数码管控制流程图3、程序设计实现/多个数码管显示实例/PORTB0.7a.dp/PORTD0.3CS3.Oinclude/tableforCom-ASHMGstaticvolatileunsignedchartablell=0 xC0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xd8,0 x80,0 x90,Oxff;/0123456789全灭voiddelayXms(unsignediiitXnis);voidmain()iiiti;intloopnum;unsignedcharcQian

29、,cBai,cShi,cGe;TRISB=0;TRISD=0;while(l)for(i=0;i10000;i+)eQian=i/1000;cBai=(1%1000)/100;cShi=(i%100)/10;eGe=(i%10);for(loopnum=0;loopnum60;loopnum+)PORTB=tablecQian;PORTD=0 x07;delayXms(lO);PORTB=tablecBai;PORTD=OxOB;delayXms(lO);PORTB=tablecShi;PORTD=OxOD;delayXms(lO);PORTB=tablecGe;PORTD=OxOE;dela

30、vXms(lO);voiddelavXms(unsignedmtXnis)/4MHzunsignedmtij;for(i=0;iXnis;i+)for(j=0j90;j+);应用实例四:继电器控制电路通常采用PNP管进行驱动、NPN管PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩1第 页第 页命IC单片机原理及其应用牛军浩第 #页第7章定时器/计数器模块(4)一、定时器/计数器模块用途1、按一定周期控制输出如空调变频控制、VCD、光驱、照和机镜头、打印机、传真机、遥控玩具车等步进电机的控制。也可以用软件延时的方法实现,但是耗费CPU的时间,而且在插入其他功能程序后,延时长度会被破

31、坏,造成时间不准确。2、检测外部信号的脉宽、周期等3、计数用,対外部事件产生的触发信号进行准确计数。二、16F877A单片机的TMR构成1、TMRO、TMR1.TMR2三个定时器2、TMRO:8位宽、可选预分频器、通用目的3、TMR1:16位宽、可编程预分频器、可选低频时钟、适合CCP配合使用4、TMR2:16位宽、可编程预分频器、可编程后分频器、周期寄存器和比较器、适合CCP配合实现PWM三、定时器TMRO工作原理四、定时器TMRO相关寄存器1、OPTION寄存器表7.1OPTION控制寄存器Bit76543210RBPUINTEDGTOCSTOSEPSAPS2PSIPSORBPU:PORT

32、B内部弱上拉设置,低电平有效INTEDG:外部中断边沿选择,0:RB0/INT卜降沿触发中断;1:上升沿中断TOCS:TMR0时钟源选择位,0:内部提供的指令周期;1:T0CK引脚输入TOSE:TMR0时钟边沿选择位,(外部时钟时,即TOCS=1时有效),0:上升沿,1:卜降沿PSA:分频器分配位,0:分配给TMR0;1:分配给WDTPS2-PS0:分频器分频比选择,BitvalueTMRORateWDTRate000120011401018Oil116100132101164no1128111125686242124813612、INTCON中断控制寄存器TOIF:TMRO溢出标志位,1:表

33、示溢出TOIE:TMRO溢出中断使能位,1:使能GLE:全局中断使能位,1:使能3、TRISA端LIRA方向控制寄存器TRISA4:当TMR0工作在计数器模式时,要求该脚必须设定为输入方式。三、定时器定时时间计算方法定时时间=(2+(256TMRO)*PS)*(l/FOS/4)例如:外部4Mhz晶体时,FOS=4Mh乙每个机器周期频率为1MHz,机器周期为lus定时单位为:lus要求定时1ms时:取PS=4,TMRO初始值为6。理论误差为2us四、应用实例一:使用定时器控制输出方波信号(查询方式)1、电路原理设计8vccvccI10IT1213T?T3T?nT9TPMCLRRAORAIRA2R

34、A3RA4RA5REQRDRE1MRRE2CSX-DDVSSOSC1.CLK1OSC2CLKORCORC1RC2RC3RDORD1RB阳RBRBRBRBRBRB黑rdrd5rd4rcrcrcrcrdrdR110kSW-PB1OO-KMDS?PIC-16FS77A图7.2TMRO定时器应用原理图PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 #页PIC单片机原理及其应用牛军浩1第 页2、程序流程设计PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩第 #页第 #页PIC单片机原理及其应用牛军浩1第 #页PIC单片机原理及其应用牛军浩PIC单片机原理及其应用牛军浩

35、第 页第 页PIC单片机原理及其应用牛军浩1第 #页图73TMRO定时器延时应用流程图3、程序设计实现/TMRO作为定时延时用/PORTC7LED/PORTB0KEYinclude/tableforCom-ASHMGstaticvolatileunsignedchaitablefl1=0 xC0,0 xf9.0 xa4,0 xb0.0 x99.0 x92,0 x82.0 xd&0 x80,0 x90,0 xff;/0123456789全灭voiddelavXins(unsignedintXins);voiddelavTMROO;voidniainQTRISB=OxFF;TRISC=0 x7F;

36、OPTION=0 x7;/TOCS=0;PSA=0;PS2.PS0=111;/tmrO使用内部时钟,使用预分频器,分频比1:256T0IF=0;RC7=1;wlule(l)delayTMRO();RC7=?RC7;voiddelavXins(unsignedintXins)/4MHzunsignedmtij;fbi(i=0;iXins;i+)for(J=0j90;j+);/delay64us4MHzvoiddelavTMROQ五、应用实例二:使用定时器控制数码管数据(中断方式)1、电路原理设计2、程序流程设计3、程序设计实现使用TMRO+断,控制输出/PORTC7LED/PORTB0KEY#i

37、iicludevoidniainQTRISB=OxFF;TRISC=0 x7F;OPTION=0 x5;/TOCS=0;PSA=0;PS2.PS0=101;/tmrO使用内部时钟,使用预分频器,分频比111:256;101:64T0IF=0;TMR0=0 x08;T0IE=1;GIE=1;wliile(l)/delay10mswithtimerOinterrupt(256-100)*644MHzvoidinterruptISR_Timer()If(TOIE&TOIF)TMR0=100;T0IF=0;RC7=!RC7;六、应用实例三:使用定时器/计数器模式测试外部信号频率1、电路原理设计使用两个

38、定时器完成计数、测频功能。使用TMR0进行精确定时,使用TMR1进行外部信号频率计数。TMR0定时时间到后,TMR1的计数ffi/TMRO的定时时间即得外部信号频率,方法为测频方式。2、程序流程设计3、程序设计实现七、Timer。、Timed、Tmier2的不同及应用第8章A/D模块(2)AD转化原理及过程1、PIC单片机AD类型:逐次比较型、10位、8个通道工作原理图8.1PIC单片机AD通道框图3、转换时间要求T=(10+2)*Tad每一位数据的转换时间定义为Tad,Tad不得小于1.6uso在转换完成后,卜次采样重新开始之前,必须有2Tad的等待时间。完成10位转换时间为10名Ta二、A

39、D和关寄存器ADCON0控制寄存器0表ADCONO控制寄存器Bit76543210ADCS1ADCS0CHS2CHS1CHS0GO/DONE-ADONADCS1.0:AD转换时蚀选择位。00:fosc/201:fosc/810:fosc/3211:自带阻容(RC)振荡器CHS2.0:AD转换通道选择位。000:RA0/AN0001:RA1/AN1010:RA2/AN2Oil:RA3/AN3100:RA5/AN4101:RE0/AN5110:RE1/AN6111:RE2/AN7GODONE:AD转换启动控制/状态位。1启动,0未启动或者转换完成ADON:AD转换开关位,1使用,0关闭ADC2、A

40、DCONO控制寄存器1表&2ADCON1控制寄存器Bit76543210ADFM-PCFG3PCFG2PCFG1PCFG0ADFM:AD转换结果格式选择位。0:左对齐;1:右对齐PCFG:AD转换引脚功能选择位。表8.3AD转换引脚功能选择PCFGAN7AN6AN5AN4AN3AN2AN1ANOVREF+VREF-C/R0000AAAAAAAAVDDvss&00001AAAAVREFi-AAAAN3vss7/10010DDDAAAAAVDDvss0011DDDAVREF+-AAAAN3vss4/10100DD0DADAAVDDvss300101DUUDVREF4-UAAAN3vss2/1011

41、XDDDDDnDD-0/01000AAAAVREFi-VREF-AAAN3AN2&21001DUAAAAAAVDDvss691010DDAAVREF-t-AAAAN3vss311011DDAAVREFi-VREF-AAAN3AN24/21100DDDAVREF4-VREF-AAAN3AN23/21101DDDDVREF+-VREF-AAAN3AN22/21110DDDDDDDAVDDVSS1/01111DDDDVREF4-VREF-DAAN3AN21/2A二AnaloginputD=DigitalI/OC/R=#ofanaloginputchannels.*ofA/Dvoltagerefere

42、nces3、AD转换结果寄存器ADRESH.ADRESL4、端II方向寄存器TRISATRISE5、第1外设中断使能寄存器PIE1ADIE6、第1外设中断标志寄存器PIRK6ADIF7、中断控制寄存器INTCONGIEINTCONPEIE三、AD转化结果计算方法Ain=-Vref-)*ADRES+Vie匸1024四、应用实例一:使用AD通道测试外部电压(查询方法)电路原理设计VCC图8.2PIC单片机AD转换通道PIC单片机原理及其应用牛军浩1PIC单片机原理及其应用牛军浩1第 页第 页PIC单片机原理及其应用牛军浩1第 #页2、程序流程设计图8.2PIC单片机AD转换流程图3、程序设计实现v

43、oidniainQinti;intloopnum;intADData;unsignedchaicQian,cBai,cShi,cGe;TRISA=0 xFF;TRISE=OxFF;ADCON1=0X80;ADCONO=Ox81;while(l)ADGO=1;wlule(ADGO)ADData=(iiit)ADRESH;ADData=(ADData8)&0 x0300)+ADRESL;display(ADData);五、应用实例二:使用AD通道测试外部电压(中断方法)1、程序流程设计2、程序设计实现第15章网络通信与数据传输模块(3)一、USART串行通信模块介绍串行通信的两种基本方式:同步传输、异步传输1、异步传输只有数据线,没有时钟线必须预先约定:双方通信速率,每个字符的长度、起始位同步技术起始位:空闲为逻辑1,1个逻辑0表示起始数据位串:5、6、7、8、9位等,LSE在前。奇偶校验位:1位停止位:表示一个字符的结束,1位、1.5位、2位2、同步传输夕卜加时钟线,提高了传输效率,不需开始位、停止位等,如SPLIIC3、串行通信的数据传输单工传送、半双工传送、全双工传送4、组网方式点对点、多机通信二、相关寄存器1、INTCON控制寄存器GIE、PEIE2、PLE1第一外设允许RCIE、TXIE3、

温馨提示

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

评论

0/150

提交评论