版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
P87LPC76014脚封装的单片机适合于许多要求高集成度低成本的场合可以满足多方面的性能要求作为Philips小型封装系列中的一员P87LPC760RC振荡方式可编程选择具有较宽的操作电压范围可编程I/O口线输出模式选择可选择施密特触发输入LED驱动输出有内部看门狗定时器P87LPC76080C51处理器结构指令执行速度是标准80C51MCU的两倍操作频率为20MHz80C51指令执行时间为300600ns6.0V时时钟频率可达6.0V时时钟频率最大为用于数字功能时操作电压范围为2.71KOTP程序存储器128RAM32216位定时/全双工通用异步接收/发送器UARTI2P87LPC76014脚封装的单片机适合于许多要求高集成度低成本的场合可以满足多方面的性能要求作为Philips小型封装系列中的一员P87LPC760RC振荡方式可编程选择具有较宽的操作电压范围可编程I/O口线输出模式选择可选择施密特触发输入LED驱动输出有内部看门狗定时器P87LPC76080C51处理器结构指令执行速度是标准80C51MCU的两倍操作频率为20MHz80C51指令执行时间为300600ns6.0V时时钟频率可达6.0V时时钟频率最大为用于数字功能时操作电压范围为2.71KOTP程序存储器128RAM32216位定时/全双工通用异步接收/发送器UARTI2C4个键盘中断输入另加1低电平复位使用片内上电复位时不需要外接元件I/O,有口线均有20mA的LED驱动能力9I/O口,选择片内振荡和片内复位时可多达12I/O口如果选择片内振荡及复位时,P87LPC760仅需要连接电源线和地线EPROM编程允许在线编程2EPROM1µA14DIPTSSOP1温度范围(070PDIP20MHz5V,10MHz-4085PDIP20MHz5V,10MHz0 TSSOP(塑料极小型表贴封装20MHz5V,10MHz-45 TSSOP(塑料极小型表贴封装20MHz5V,10MHz管脚配置14DIPSO2123456978管脚配置14DIPSO21234569781P87LPC760 1P87LPC760 3410PORT0P04I/O口P0锁存器在准双向模式中配置由UCFG1中的PRHI位确定复位后写入1还是0P0口由口配置寄存器设定为输出或输入模式每一位均可单独设定详细请参考I/O口配置和DC电气特性部分IP0.3 IP0.4410PORT0P04I/O口P0锁存器在准双向模式中配置由UCFG1中的PRHI位确定复位后写入1还是0P0口由口配置寄存器设定为输出或输入模式每一位均可单独设定详细请参考I/O口配置和DC电气特性部分IP0.3 IP0.4 IP0.5CMPREF1参考反向输入OP0.6 P1.51~2PORT1除了下面说明的三个管脚外,P1是一个用户可定义输出类型的6I/O口P1锁存器在准双向模式中配置由UCFG1PRHI位确定复位后写入1还是0P1口由口配置寄存器设定为输出I/ODC电气9OP1.0 8IP1.1 7P1.2 I2CI2C6IP1.3 I2CI2C格式一致当配2IP1.5RST 外部复位输入(可通过EPROM配置选择),低电平复位,I/O口和外围器件为默认状态,0地址开始执行,当用作I/O口时,P1.5只能用作施密特输入4PORT2P22I/O口P2锁存器在准双向模式中配置由UCFG1中的PRHI位确定复位后写入1 P2设定详细请参考I/O口配置和DC电特性部分5OP2.0 CLKOUTSFR位,RC振荡或外部时钟输入的频率除以6后输出4IP2.1 由EPROM选择为振荡器输入或内部时钟发生器电3I地I电源:注带*带#SFRS80C511在特殊功能寄存器 x位表示无效位保留这些位以备将来扩展5名定地位功能和位复位累加辅助功能寄B寄存器数据指针双字节指针低字中断中断中断优先级中断优先级0高字中断优先级中断优先级1高字节口口口0口输出模式选择口输出模式选择口输出模式选择口输出模式选择口输出模式选择2口输出模式选择电源控制寄程序状态0口数字输入禁串行口控定时器0/1控制定时器0定时器1高字定时器0低字定时器1低字定注带*带#SFRS80C511在特殊功能寄存器 x位表示无效位保留这些位以备将来扩展5名定地位功能和位复位累加辅助功能寄B寄存器数据指针双字节指针低字中断中断中断优先级中断优先级0高字中断优先级中断优先级1高字节口口口0口输出模式选择口输出模式选择口输出模式选择口输出模式选择口输出模式选择2口输出模式选择电源控制寄程序状态0口数字输入禁串行口控定时器0/1控制定时器0定时器1高字定时器0低字定时器1低字定时器0/1工作模看门狗控制寄D8H读D8H写D9H读D9H 0 0 0000000XXXXXXX P PCONxxBOFPOF0000b复位不影BOFPOF位当上电时由硬件置位POF掉电复位/中断和加电均可使BOF置位4WDCONxx110000bWDCONxx010000bWDCONP87LPC76080C51MCU80C512倍这意味着P87LPC7605MHz80C5110MHz6612个振荡周期用户亦可选择工作在标准80C51MCU时序这时一个机器周期变为12个振荡周期以下章节中PCONxxBOFPOF0000b复位不影BOFPOF位当上电时由硬件置位POF掉电复位/中断和加电均可使BOF置位4WDCONxx110000bWDCONxx010000bWDCONP87LPC76080C51MCU80C512倍这意味着P87LPC7605MHz80C5110MHz6612个振荡周期用户亦可选择工作在标准80C51MCU时序这时一个机器周期变为12个振荡周期以下章节中MCU80C51位确定或通过设定DIVMMCU时钟和外部所加时钟不同参考振荡器P87LPC760内部集成了1个模拟比较器为了获取最佳性能和降低功耗作为模拟功能使用的管脚必I/O使用PT0ADPORT0口的数字输入功能在PT0AD寄存器中每位均对应PORT0相应位置位PT0AD中相应位禁止此管脚作为信号数字输入当数字输入功能被禁止时任何指令读取该位时均为0P87LPC7601可选择脚之一电压大于反向输入时输出信号为反之则输出为CMP123所示比较器可实现8CMPn寄存器中的CPnCNnOEn决定如图4所示比较器功能操作电压可低至3V当每个比较器刚被使能时1026 地址 复位值不可位寻 符 功 保留未用用户请勿将其写为 CE110 比较器正向输入选择为0CIN1A作为正向输入为1 比较器反向输入选择为0时选择CMPREF作为比较器反向输入 输出使能为1CMP1脚此输出和MCU 比较器输出和MCU同步以便于软件读取 CO1时该位置位可产生硬件中断当比较器禁能(CE1=0)时,通过软件清零4Vref=1.28V比较器配置寄存器中有一个比较器中断标志位CMF1当比较器输出状态变化时中断标志位置位此IEN1EC1IEN0EA位置位时系统将会产生在掉电模式或空闲模式下比较器可以继续保持使能状态比较器功能可在低功耗模式下继续保持当比较器中断使能时比较器输出发生变化时将会产生一个中断并将MCU唤醒当比较器输出管脚使能时4Vref=1.28V比较器配置寄存器中有一个比较器中断标志位CMF1当比较器输出状态变化时中断标志位置位此IEN1EC1IEN0EA位置位时系统将会产生在掉电模式或空闲模式下比较器可以继续保持使能状态比较器功能可在低功耗模式下继续保持当比较器中断使能时比较器输出发生变化时将会产生一个中断并将MCU唤醒当比较器输出管脚使能时下面是一段初始化比较器的程序比较器1CIN1ACMPREF输入比较器结果输出到CMP1由中断返回前必须清除中断标志位CMF17CIN1ACMPREFCIN1ACMPREF1并进行如下设置正向输入为CIN1A选择CMPREF脚作为参考电1I2C总线用两SDA从设备串行寻址无需额外接线CIN1ACMPREFCIN1ACMPREF1并进行如下设置正向输入为CIN1A选择CMPREF脚作为参考电1I2C总线用两SDA从设备串行寻址无需额外接线I2C总线系统包括一个可简化软件驱I2C总线硬件除了必要的总线仲裁帧错误检测时钟扩展和总线超时定时器外还包括一个一位接口这个接口通过循环查询或中断来同步软件详细参考/8xC751I2C总线主机部分P87LPC760I2CP87LPC760I2C87C75187C752照搬而来I2CSFR地址I2CONI2CFGI2CSFR的名称EI2IEN1ISFR的名称ETIIEN1II2C总线的定时和检测总线被锁的情况在数据进行传送时I2C总线操作中有6个时间宽度非常重要由定时器I确定 SCLSCLI2CI将会确保I2CSDA由变为高电平到变为低电平的最小时间4.7µs,I2C总线 I2CSCL跳变的最大时间在起始信号和停止信号之间为数据帧处理过程I2CI2C装置SCL强制为低表明装置SCLI2CI2C上述前5种时间为4.7µs见I2C总线标准)并且由定时器I的低3位确定,定时器I由P87LPC760的8,I4,软件响应时间增加将会降低I2C总线的性能参阅特殊功能寄存器I2CFG有关预分频值(CT0CT1)的描述SCL跳变的最大时间很重要,10II2C使能时SCLI清零在I2C等待时定时器不运行()当计数I运行时,SCL10201023I2CI中断使能如果由于软件响应时间不够而造成总线挂起装置复SCL并且允许其他装置对I2C继续操作,I4,软件响应时间增加将会降低I2C总线的性能参阅特殊功能寄存器I2CFG有关预分频值(CT0CT1)的描述SCL跳变的最大时间很重要,10II2C使能时SCLI清零在I2C等待时定时器不运行()当计数I运行时,SCL10201023I2CI中断使能如果由于软件响应时间不够而造成总线挂起装置复SCL并且允许其他装置对I2C继续操作IEN1ETI位使能并且它的优先级分别通过IP1HIP1PTIHPTI位设定I2C中断使能EAEI2ATNI2CATN在实际应用中用这种方式并不能I2CI2CI2C行如果程序仅仅是等待I2C接口软件将执行得更快典型情况下当装置为空闲从机时I2C中断仅用来表明起始信号时5I2C控制寄存器RDATSCLSDARDAT中RDATI2DAT中得到I2DAT7DRDYI2C7I2DAT中读取第8RDATI2DAT写入数据发送应答位同时清除DRDY9 地址 复位值可位寻址 符 功 DRDYARLSTRSTP1时 I2C从器件模式中向此位置1I2C 数据准备标志在SCL 向此位写入1CARL I2CON.1MASTER指示本装置目前是否是总线主 向此位写入1 向此位写入1*80C51SETBCLRCPLMOV位和JBCI2CON寄存器的值这是因为对于这个寄存器读和写操作意义不同但可通过JB和JNB指令对I2CON进行位测试DRDYARLSTRSTP1ATN1因此通过测试DRDY除空闲从机外SCL上升沿数据准备DRDYATN被置位CDR1I2DATDRDY被清零SCLDRDYATN=1DRDY位如果DRDY=1并且装置接收到最后一位数据I2DATI2CONRDATI2DAT无论如何都应清除DRDYATN位注意如ARLSTRSTPDRDYSCLI2CATN=1ARLSTR当装置处于发送激活状态但是总线仲裁失败时ARL置 当ARL为1时装置应该退发送激活状态ARL1如果程序发送SDA上数据为如果程序发送或者重复起始信号时但其他设备发送0或停止信号这样在SCL0时如其他设备发送停止信号在STPARL但是其他设备发送重复起始信号时在SCLSDA首先变低此类型21SDASCL变低主模式下由于其它设备发送0而使程序无法发送停止信号时34STR当检测到DRDYARLSTRSTP1ATN1因此通过测试DRDY除空闲从机外SCL上升沿数据准备DRDYATN被置位CDR1I2DATDRDY被清零SCLDRDYATN=1DRDY位如果DRDY=1并且装置接收到最后一位数据I2DATI2CONRDATI2DAT无论如何都应清除DRDYATN位注意如ARLSTRSTPDRDYSCLI2CATN=1ARLSTR当装置处于发送激活状态但是总线仲裁失败时ARL置 当ARL为1时装置应该退发送激活状态ARL1如果程序发送SDA上数据为如果程序发送或者重复起始信号时但其他设备发送0或停止信号这样在SCL0时如其他设备发送停止信号在STPARL但是其他设备发送重复起始信号时在SCLSDA首先变低此类型21SDASCL变低主模式下由于其它设备发送0而使程序无法发送停止信号时34STR当检测到主机或非空闲从机发送起始信号STR激活时STR位不置STP当检测到主机或非空闲从机发送停止信号时STP空闲从机的停止信号不置位STPMASTER如果装置作I2C总线的主机MASTER1MASTRQ11计时溢出后未接收到起始位或在上一次起始位后又接收到停止位而后I2CONI2CATN1DRDYARLSTP位中的一位或几位写入CXACXA写入1清除发送激活状态读取I2DATI2DATI2CONXSTRXSTP1I2CSDA线拉低且ARL1I2DATCXA=1将清除发送激活状态当ARL=1时自动清除发送激活状态将IDLE写为 直到下一次起始信号发送时从机才接收I2C总线信如果CDRCLEARDATAREADY位写入1DRDYI2DATCSTR位写入CSTP位写入111STR位清除STP位如果DRDYARLSTRSTP1SCL仅当装置为主机时向XSTR和CDR写入 I2C总线发送重复起始信号注意不需要也不应该用于发送初始非重复起始信号I2C硬件自动发送XSTR置1I2DATXDAT1的作用SCLSDASCL变为高后当的时间然后置SDA为低发出起始信号仅当装置为主机时向XSTPCDR1I2CXSTP1I2CFGMASTRQ位将置1I2DATXDAT位置0的作用在SCL为低期间XSTPI2DATXDAT写入SDASCLI2C硬件由于P87LPC76020MHzI2CDRDYSCL的上升沿置位并在SCLSDAI2CSCLXDATSDA线所以不必担心出现这种情况I2CDRDY典型情况是在其它外围功能中断使能的情况下I2CI2C服务程序I2DATXDAT写入SDASCLI2C硬件由于P87LPC76020MHzI2CDRDYSCL的上升沿置位并在SCLSDAI2CSCLXDATSDA线所以不必担心出现这种情况I2CDRDY典型情况是在其它外围功能中断使能的情况下I2CI2C服务程序I2CSCL唯一的约束是等待响应的时间不能超过定时器I的溢出时间CT1CT03所示,I2C总线运行于最大速率Fosc最大值栏如表中所示表中第一栏为CT1CT0的值MCU时钟最大值大于或等于实际频率CT1CT0的不同设定值表3给出了机器周期计数值SCLSCL最小高/低时间(µs)6*MCU例如在8MHz频率下,CT1/CT010时最小SCL 地址不可位寻 复位值 符 功 0I2C硬件被禁能复位或I2C MASTRQ主机请求向此位写入1I2C总线申请成为主机如果当此位01DRDYATNI2C中断主机想放弃I2CI2CONXSTP1MASTRQI2C定时器超时 写入1清除定时器I溢出标志读此位时总 写入1I开始运行写0I运行并将定时器清零SLAVENMASTRQMASTER这些位一起控制选择操作模式如 CT1,CT0MCU时钟分频比率当此装置为I2C主机时获得最佳SCLSCL的时间参数以及起始和停止 地 复位值不可位寻 符 功 最后接收到数据位每个SCL上升沿由SDA取值读取I2DAT清除RDY位和发送激活状态 I2DATDRDY和置位发I2DAT.6 )平时间的测量方式不同从而定时器溢出周期也不同对I2C接口操作时SCLCT1CT0SCL008(2TIRUN与3CT1CT0P87LPC760有四个优先级别的中断结构这为IP0IP0HIP1IP1H应位来实现00--最低11--4向量地址使能位优先级别仲裁队列顺序和是否中断可将MCU从掉电方式中唤醒1(最高4TxTIES)平时间的测量方式不同从而定时器溢出周期也不同对I2C接口操作时SCLCT1CT0SCL008(2TIRUN与3CT1CT0P87LPC760有四个优先级别的中断结构这为IP0IP0HIP1IP1H应位来实现00--最低11--4向量地址使能位优先级别仲裁队列顺序和是否中断可将MCU从掉电方式中唤醒1(最高4TxTIES2I2C中5KBI83913(最低(100KHzI2C170605140I2C接口禁定时I被清零并停I2C应用中在特定时间不想执I2C功能应将SLAVENMASTRQTIRUN均置010I2C接口使能定时器I的低3位产生最小时间和高位无关这样不检测I2C是否被挂起 此配置可用于低速I2C操作1I2C接口使I2C传送数据时运SCL的跳变沿起始信号或停止信号清零定时器I在I2C正常操作模式下使用此配置P87LPC7601标准80C51微控制器相同TCON寄存器中的IT0IT0=0时INT0脚上出现低电平时将产生中断如果IT0=1INT0上一个周期为高而本周期为低时将会产生有效采样TCON中的中断标志IE0被置位当中断服务程序响应中断时IE0自动清零IE0无关紧要因为中断只和输入P87LPC7608中断源,中断使能,I/OP87LPC7603I/OP87LPC7601标准80C51微控制器相同TCON寄存器中的IT0IT0=0时INT0脚上出现低电平时将产生中断如果IT0=1INT0上一个周期为高而本周期为低时将会产生有效采样TCON中的中断标志IE0被置位当中断服务程序响应中断时IE0自动清零IE0无关紧要因为中断只和输入P87LPC7608中断源,中断使能,I/OP87LPC7603I/OP0P1P2I/O位时可使用多达12个脚作为I/O口线3个口以外P87LPC760I/O4种输出类型之一如表5所示四种输出类型分别为准双向口(8051输出模式)推挽开漏输出或只有输入高阻功能每个口配置2个控制寄存器控制每个管脚输出类型5口输出方式设定80C51及其派生品的输出模式这是P87LPC760的一种默认输出方式这种输出类型可000110111将它拉为低当管脚输出为低时它的驱动能力很强可吸收很大的电流准双向口除了有三个上拉晶体管适应不同的需要外和开漏输出有点相似在三个上拉晶体管中有一个极弱上拉 当口线锁存为1时打开当引脚悬空时这个极弱的 弱上拉当口线寄存器为1且管脚本身也为1时打开此上拉提供基本动电流使准双向口输出为如果一个管脚输出为11将它拉为低当管脚输出为低时它的驱动能力很强可吸收很大的电流准双向口除了有三个上拉晶体管适应不同的需要外和开漏输出有点相似在三个上拉晶体管中有一个极弱上拉 当口线锁存为1时打开当引脚悬空时这个极弱的 弱上拉当口线寄存器为1且管脚本身也为1时打开此上拉提供基本动电流使准双向口输出为如果一个管脚输出为1第三个上拉晶体管相对而言为强上拉 当口线锁存器由0到1跳变时这个上拉用来加快准双向口由逻辑0到逻辑1转换当发生这种情况时强上拉打开约2个机器周期以便尽快将管脚上拉到高电平9当口线锁存器为0’时开漏输出关闭所有的上拉晶体管作为一个逻辑输出这种配置方式必须有这种方式的下拉和准双向口相同1010推挽输出方式中的下拉结构和开漏输出与准双向口的下拉结构相同但当锁存器为1时提供持续的强上拉推挽模式一般用于需要驱动多路输入的情况11P1.2,P1.3P1.5P1.2P1.3P87LPC760P1.5另外选择晶体振荡器时P2.0P2.1I/O口当复位后口线被设置为高时这些口线为准双向口P87LPC76020mALED但是所有口的输出电流总和不能超过P87LPC760由出厂时设定上升时间和下降时间大约为11P1.2,P1.3P1.5P1.2P1.3P87LPC760P1.5另外选择晶体振荡器时P2.0P2.1I/O口当复位后口线被设置为高时这些口线为准双向口P87LPC76020mALED但是所有口的输出电流总和不能超过P87LPC760由出厂时设定上升时间和下降时间大约为10ns时间P2.0P2.1P2M1201RC122 地址 复位值不可位寻 符 功 当P2S=1时端口2施密特触发器输入使能 当P1S=1时端口1施密特触发器输入使能 当P0S=1时端口0施密特触发器输入使 一时钟详见振荡器部分 0溢出将使P1.2溢出频率的一半详见定时/ P2M2P2.1P2.0的输出配置详5键盘中断P87LPC760特殊脚的键被按下时能产生一个中断见图 P87LPC7600KBI寄存器对应位置位完成14KBIAUXR1寄存器内键盘中断标KBF置位如若中断允许则将产生一中断KBF由于人对时间分辨精度及键开关闭合的机械延迟KBI以确定按下的是哪个键甚至决定是否将处理器从低功耗模式唤醒注键盘中断P87LPC760特殊脚的键被按下时能产生一个中断见图 P87LPC7600KBI寄存器对应位置位完成14KBIAUXR1寄存器内键盘中断标KBF置位如若中断允许则将产生一中断KBF由于人对时间分辨精度及键开关闭合的机械延迟KBI以确定按下的是哪个键甚至决定是否将处理器从低功耗模式唤醒注:KBI(KBF)AUXR1714键盘中断寄存器P87LPC760择这些选项在EPROM编程时配置支持的基本振荡器类型包括:低中及高速晶振范围20KHz20MHz陶瓷振荡器及片内RC振荡器20KHz100KHz 地址不可位寻 复位值 符 功 ----100KHz4MHz的外部晶振同时也支持陶瓷谐振器4MHz20MHzRC6MHzDIVMAC特性表使用RC振荡器时可选择从X2/P2.0在此配置中提供MCUX1/P2.14.5V时频率可从0Hz4.5V时频率可达到10MHz当使用外部时钟输入模式 X2/P2.0脚可用作标准X2/P2.0P87LPC760在选择片内RC振荡器或外部时钟输入时支持时钟输出功能这使得外部器件可与P87LPC760同步对P2M1寄存器的ENCLK置位后,无论是否处于空闲模式,只要片内振荡器运行,X2/CLKOUT就有信号输出输出时钟频率为MCU1/6如果空闲模式时不需要时钟输出可100KHz4MHz的外部晶振同时也支持陶瓷谐振器4MHz20MHzRC6MHzDIVMAC特性表使用RC振荡器时可选择从X2/P2.0在此配置中提供MCUX1/P2.14.5V时频率可从0Hz4.5V时频率可达到10MHz当使用外部时钟输入模式 X2/P2.0脚可用作标准X2/P2.0P87LPC760在选择片内RC振荡器或外部时钟输入时支持时钟输出功能这使得外部器件可与P87LPC760同步对P2M1寄存器的ENCLK置位后,无论是否处于空闲模式,只要片内振荡器运行,X2/CLKOUT就有信号输出输出时钟频率为MCU1/6如果空闲模式时不需要时钟输出可15P2M1CLK1615P2M1CLK16CLOCKCLKR 17MCU时钟调整CLKR为了向下兼容CLKR配置位允许设置P87LPC760指令及外围时序符合标准的80C51时序将MCU2分频P87LPC760的默认时序是每一机器周6MCU时钟而标准80C51时序是每一机器周期12MCU时钟CLKREPROM配置寄存器UCFG1内另外MCU时钟可由振荡器频率通过可编程分频器降频得到DIVM寄存器控制DIVM寄存器置为0默认 MCU的时钟则根据前述CLKR功能取振荡器频率或振荡器频率的二分DIVMCLOCKCLKR 17MCU时钟调整CLKR为了向下兼容CLKR配置位允许设置P87LPC760指令及外围时序符合标准的80C51时序将MCU2分频P87LPC760的默认时序是每一机器周6MCU时钟而标准80C51时序是每一机器周期12MCU时钟CLKREPROM配置寄存器UCFG1内另外MCU时钟可由振荡器频率通过可编程分频器降频得到DIVM寄存器控制DIVM寄存器置为0默认 MCU的时钟则根据前述CLKR功能取振荡器频率或振荡器频率的二分DIVMN1N+1分频所以实际分频值4512特性可用于暂时使MCU以较低频率工作以降低功耗,类似于空闲模式通过分频,程序以较低速度运行时MCU仍保持对事件响应的能力而不只是对能产生中断的事件MCU从空闲模式退出才响应P87LPC760完成的上电检测及掉电检测1AUXR1BOI位AUXR1.5返升至掉电检测电平之上当掉电检测产生一次处理器复位,该复位将一直保持到VDDVDD从检测电平以上降到检测电平以下掉电检测产生一次中断,为了处理中断BOI都被使能(IEN0EA当检测到掉电时PCONBOF50mV/µsVDD2掉电电压2.5V3.8VEPROMUCFG1BOV位来选择未编程时2.5VAUXR1寄存器中BOD位位AUXR1.6来关闭此2上电检测功能类似于掉电检测,但设计成为首次上电时有效,在供电电压上升到掉电检测门槛电平时有效当检测到上电时PCON寄存器内POF标志置位该标志需要软件清除1空闲模式式将PCONIDL位置位即可进入空闲模式见图2掉电模式将振荡器停振以使功耗最小50mV/µsVDD2掉电电压2.5V3.8VEPROMUCFG1BOV位来选择未编程时2.5VAUXR1寄存器中BOD位位AUXR1.6来关闭此2上电检测功能类似于掉电检测,但设计成为首次上电时有效,在供电电压上升到掉电检测门槛电平时有效当检测到上电时PCON寄存器内POF标志置位该标志需要软件清除1空闲模式式将PCONIDL位置位即可进入空闲模式见图2掉电模式将振荡器停振以使功耗最小将PCON寄存器内PD位置位即可进入掉电模式(在此模式下电压降至RAMRAM内容被保存SFRVDDVDDVDD配置成中断并使能该中断当MCU1024时钟对于内部RC256在掉电模式下包括掉电检测看门狗定时器比较器在内的一些功能继续工作,9掉电模式唤醒事件VDD4V时是不需要的但VDD4V唤醒事 条外部中断 相应中断须使键盘中 键盘中断须使能并正确设比较器 比较器须使能并正确设置相应的中断须使看门狗定时器复 看门狗须使能(通过UCFG1EPROM配置字节内WDTE位看门狗定时器中 UCFG1EPROM配置字节内WDTE位不可置位相应中断须使 AUXR1内BOD位不可置位AUXR1内DOI位不可置位相应中断须使能 AUXR1内BOD位不可置位AUXR1内BOI位须置位相应中断须使能 LPEDAUXR.4将这些模拟电路断电以降低耗18电源控制寄存器P87LPC760省外部元件并可将P1.5作为通用的输入口使用P87LPC760UCFG1RPD0LPEDAUXR.4将这些模拟电路断电以降低耗18电源控制寄存器P87LPC760省外部元件并可将P1.5作为通用的输入口使用P87LPC760UCFG1RPD0将P1.5RSTRST脚的信号为低电平时P87LPC760保持复位直看门狗定时器可用于检测振荡器是否正常工作因为看门狗定时器使用的是独立的片内振荡器UCFG1的描述见本手册的系统配置字节一节(19P1.5内部上电复位 地址 复位值30H–––上电复20H–––掉电复 符 功 123UART SCONSFR7,SCON.7SM0位,1时,SCON.7FE帧错误标志 掉电标志当掉电复位或中断产生时自动置位上电时亦置位须软件清 上电标志上电复位时自动置位通过软件清零 1可通过软件读写但对操作并无影响 0可通过软件读写但对操作并无影响 SQRCPU时20定时器计数器80C5101兼容两者均可选择以计数器或0T016MCUMCU1/6MCUMCU0T01采样一次当某一周期时引脚状态采样为高而下一周期采样为低,计数器加1检测到跳变的下一周期寄存器更换新值由于检测下降沿跳变需两个机器周期所以计数频率最大值为MCU1/6外部输入信号占空比并无限制但必须保证信号在改变之前至少被采样一次信号必须保持至少一个机器周期TMODC/T0的定时或计数功能此外定时器01SQRCPU时20定时器计数器80C5101兼容两者均可选择以计数器或0T016MCUMCU1/6MCUMCU0T01采样一次当某一周期时引脚状态采样为高而下一周期采样为低,计数器加1检测到跳变的下一周期寄存器更换新值由于检测下降沿跳变需两个机器周期所以计数频率最大值为MCU1/6外部输入信号占空比并无限制但必须保证信号在改变之前至少被采样一次信号必须保持至少一个机器周期TMODC/T0的定时或计数功能此外定时器014种工作模式TMODM1M0选择模式012对于定时器及计数器是一样的 地址不可位寻 复位值 符 功 M1 TMOD.3 时器/计数器0清零时置位TR0即可打开定时器/计数器0TMOD 00WDT21定时/计数器模式控制寄存器008048定时器即832分频的预分频器图23此模式下定时器寄存器配置为13位寄存器当计数从全为1翻转为全为0时置位定时器TFnTR0=1GATE=0INT0=10INT0对定时器进行控制以方便实现21定时/计数器模式控制寄存器008048定时器即832分频的预分频器图23此模式下定时器寄存器配置为13位寄存器当计数从全为1翻转为全为0时置位定时器TFnTR0=1GATE=0INT0=10INT0对定时器进行控制以方便实现脉宽的测 TRn是TCON寄存器中的控制位GATE是TMOD13THn8TLn5位TLn3位不定且可忽略置位运行标志0101THnTLn160相同见图8位计数器26所示TLnTFnTHnTLnTHnTHn01在31关闭就等效于图TL00的控制位C/TGATETR0INT0TF0TH0限定为定时器功能计数机器周期占用定时器1TR1TF1TH0控制定时器1中断3803时P87LPC7603定时器/031可通过开关进入/3, M1 M1 0 16位定时器/计数器无预分频器 8位自装载定时器当溢出时将THn11 定时器0此时作为双8位定时/计数器TL0作为一个8位定时器/计数器0TH081控制位控制在这种模式下定时/122定时器/230时的定时/013241时的定时/01622定时器/230时的定时/013241时的定时/016位定时/251116 地址可位寻 复位值 符 功 1/清除或用软件清除 1运行控制位由软件置位/ 定时器0溢出标 功能同 0/清零TR11 01边沿时由硬件置位中断处理时由硬件清除或由软件清除 0/清零以选择外部中断以下降沿262时的定时/082721262时的定时/0827218283时的定时/计数器80可配置为定时器溢出时自动触发一端口输出T0P2M1T0OE0P87LPC76080C51UART131作为波特率可变模式0P87LPC760MCU80C5180C51SBUFSBUFSBUF写操作则装入发送寄存器读SBUFRxDTxD输出移位时钟波特率固定为MCU时钟频率的1/6LSB低位作首位每次8一个起始位逻辑8个数据位LSB作首位TxD脚发送RxD脚接一个停止位逻辑SCONRB8内波特率可变由定时器1当接收数据时停止位存于P87LPC76080C51UART131作为波特率可变模式0P87LPC760MCU80C5180C51SBUFSBUFSBUF写操作则装入发送寄存器读SBUFRxDTxD输出移位时钟波特率固定为MCU时钟频率的1/6LSB低位作首位每次8一个起始位逻辑8个数据位LSB作首位TxD脚发送RxD脚接一个停止位逻辑SCONRB8内波特率可变由定时器1当接收数据时停止位存于TxD脚发送RxD脚接收每次数据为11位一个起始位逻辑9位数据及一个停止位逻辑8个数据位LSB一9个数据位SCONTB8位可置为01例如奇偶位PSWP位移至TB89SCONRB8位停止位忽略波特率可编程为MCU1/161/32由PCON内SMOD1位决定TxD脚发送RxD脚接收每次数据为11位一个启始位逻辑 8个数据位LSB为首一932相同其波特率可变并由定时4SBUF0时接收过程开始应设置R1=0REN=1其它模式下如若REN=1则通过起始位初始化串行端口控制寄存器SCON29所示其中包括模式选择位以及发送接收时第位数据TB8以及串行端口中断位TI帧错误位FE可用于对接收到的数据流进行检测是否丢失停止位FESM0PCONSMOD0SMOD0=0SCON.7SM0FE位置位后FE29串行控制寄存器0MCU时钟/62MCU时钟/32或MCU时钟/16取决于PCONSMOD129串行控制寄存器0MCU时钟/62MCU时钟/32或MCU时钟/16取决于PCONSMOD1SMOD1=0复位值波特率为MCU时钟/32SMOD1=1波特率为MCU时钟/162波特率1SMOD1CPU1131SMOD1的值决定在 地址可位寻 复位 符 功 UART接收器设置该但它必须由软件清零要使该位有效PCON寄存器中的SMOD0位必须置1 SM1定义串行口操作模式要使该位有效PCONSMOD0必0 SM0定义串行口操作模式SM0 UART模 波特0 0同步移位寄存 MCU时钟 18位 可 29位 MCU时钟/32或MCU时钟1 39位 可 2323中若SM2=1且接收9位数据RB80RI接收中断标志不会被激活在模式1中若SM2=1且没有接收到有效的停止位则RI不会被激活在模式0中SM2必须是0 允许接收位由软件置位或清除REN=1时允许接收REN=0时禁止接 239 2391中或sm2=0RB8是已接收的停止位在模式0中RB8未用 发送中断标志模式0中在发送完第8位数据时由硬件置位其它模式中在发送停止位之初由硬件置位在任何模式中都必须由软件来清除TI 接收中断标志模式0中接收第8位结束时由硬件置位其它模式中在接收停止位的中间时刻由硬件置位在任何模式SM2所述情况除外必须由软件清除RI113种工作模式中任何一个在最典型应用中它用作定时器方式工作自动重装载模式TMODCPU时钟频率192or96ifSMOD1模式1,3波特率256(TH注1011UART13可变模2400115.12K和MCU时钟频率(MHz)的标准波特从10MCU时钟频率在PCONSMOD1复位值情况的波特率表MCU20MHz9600115.2K波特其它仅能提供较低波特率的MCU时钟频率没有列出TimerBaud---------------------------------------------------------113种工作模式中任何一个在最典型应用中它用作定时器方式工作自动重装载模式TMODCPU时钟频率192or96ifSMOD1模式1,3波特率256(TH注1011UART13可变模2400115.12K和MCU时钟频率(MHz)的标准波特从10MCU时钟频率在PCONSMOD1复位值情况的波特率表MCU20MHz9600115.2K波特其它仅能提供较低波特率的MCU时钟频率没有列出TimerBaud--------------------------------------------------------------------------------------TimerBaud--------------------------------表中标记*RxD端出入TxD8位数据低位在先其波特率固MCU1/630是串行口模式0的功能方框简图和有关的时序图SBUF作为目的寄存器的指令时就开始发送当S6P2出现SBUF信号S6P2时刻写SBUF19完整的机器周期后SEND端有效SENDRxDP1.1端送出数据TxDP1.0输出移位时钟每个机器周期的S3S4及S5状态内移位时钟为低电平而S6S1S2状态内为高在SEND有效时每一机器周期的S6P2时刻发数据位向右移时左边添加零当数据字节最高位MSB19位再左的内容均为0,TxSEND并置位T1,SBUF10S1P1REN=1R1=0S6P2RX11111110RECEIVERECEIVE使能移位时钟转换P1.0S3P1及S6P1跳变在数据从右边移入时左边移出为当初始时置入最右端的0移至最左端时表中标记*RxD端出入TxD8位数据低位在先其波特率固MCU1/630是串行口模式0的功能方框简图和有关的时序图SBUF作为目的寄存器的指令时就开始发送当S6P2出现SBUF信号S6P2时刻写SBUF19完整的机器周期后SEND端有效SENDRxDP1.1端送出数据TxDP1.0输出移位时钟每个机器周期的S3S4及S5状态内移位时钟为低电平而S6S1S2状态内为高在SEND有效时每一机器周期的S6P2时刻发数据位向右移时左边添加零当数据字节最高位MSB19位再左的内容均为0,TxSEND并置位T1,SBUF10S1P1REN=1R1=0S6P2RX11111110RECEIVERECEIVE使能移位时钟转换P1.0S3P1及S6P1跳变在数据从右边移入时左边移出为当初始时置入最右端的0移至最左端时RXSBUFSCONR110个机器周期RECEIVE串行口工作于模式1时传输的是10位1位起始位08位数据低位在先及一位停止位1.RxD接收TxD发送接收时停止位存入SCONRB8P87LPC760波特率取决定时器1的溢出速率图31所示为串行口的功能简图及相应的发送/接收时序SBUF1TB89位同时通知发送控制器进行发送实际上发送过程开始于16分频计数器下次翻转后的那个机器周期的S1P1时刻每位的发送时序与16分频计数器同步而并不与写SBUF信号同步SEND端开始向TxD发送一起始位一位时间以后DATA端有效使输出移位寄存器中数据得以送至TxD再过一位产生第一个移位脉冲数据向右移出左边不断填以019位再左的内容均为0TX控制器作最后一次移位然后禁能SEND这都发生于写SBUF1610RxDMCURxD16倍当检测到负跳变时16分频计数器立即复位同时将1FFH写入输入移位寄存器复位16分频计时器确保计时器翻16个状态将每个位时间分为16份在第789状态时位检测器对RxD端的值采样取值为三个采样值中取多数至少20说明位如果起始位有效则被移入输入移位寄存器并开始接收这一帧中的其它位当数据位逐一由右边移入 1从左边被移出当起始位0移到最左边时模式1为9位寄存通知接收控制器进行最后一次移位将移位寄存器内容9SBUFRB8RI=1SM2=0或接收到的停止位=1RB88SBUF23中发送这时无论上述条件满足与否11位1位起始位8TxD和接收通过位LSB在 1位可编程数据位第9位及一位停止位发送时9位数据位TB801接收时第9SCONRB82MCU1/163233231相同发送部分仅发送移位寄RB88SBUF23中发送这时无论上述条件满足与否11位1位起始位8TxD和接收通过位LSB在 1位可编程数据位第9位及一位停止位发送时9位数据位TB801接收时第9SCONRB82MCU1/163233231相同发送部分仅发送移位寄SBUFTB8周期的S1P1时刻开始SENDTxD端一位时间后DATA寄存器送入TxD端再过一位后产生第一个移位脉冲第一个移位时钟将 停止位送入移位寄存909位所以当数据位向右移出时0从左边移入当TB8SEND无效TI这些均发生在写SBUF11次计数器翻转时MCU16RxD脚进行采样一旦检测到负跳变16分频计数器立即复位同时将1FFH写入输出移位寄存器789状态时位检测器对RxD端值进行采样对三个采样值取多数至少2次0位有效则被移入输入移位寄存器并开始接收这一帧中的其它位 1从左边移出当起始位移至寄存器模式2~3时为9位寄存器的最左端RI=0,SM2=091时,SBUFRB8上述两个条件任一不满足,所接收到的数据帧就会丢失RI0当两者都满足时83030图 串口模式图 串口模式32323333UART239位9RB8UART可编程为接收到停止位时仅当RB8=1时串口中断才有效可通过置位SCON内SM2位来选择这一特性下述为多处理机系统利用这一特性的一种方法当主机需要发送一数据块给某一台从机时首先发送出目的从机的地址字节地址与数据字节通过第9910SM2=1SM2位以准备接收随后数据内容未被寻址的从机的SM21则不理睬随后数据继续各自工作0SM21SM2FE胜任在模式1时如果SM2=1那么只有接收到有效的结束位才可产生接收中断地址自动识别是这样一种特性它使UART可以通过硬件比较从串行数据流中识别出特定的地址这SCONSM2置位可使能该特性在9UART239位9RB8UART可编程为接收到停止位时仅当RB8=1时串口中断才有效可通过置位SCON内SM2位来选择这一特性下述为多处理机系统利用这一特性的一种方法当主机需要发送一数据块给某一台从机时首先发送出目的从机的地址字节地址与数据字节通过第9910SM2=1SM2位以准备接收随后数据内容未被寻址的从机的SM21则不理睬随后数据继续各自工作0SM21SM2FE胜任在模式1时如果SM2=1那么只有接收到有效的结束位才可产生接收中断地址自动识别是这样一种特性它使UART可以通过硬件比较从串行数据流中识别出特定的地址这SCONSM2置位可使能该特性在9UART模式模式2和模式3下如果接收的字节中包含给定地址或广播地址接收中断标志RI将自动置位在9位模式下要求第91以表明该信息内容是地址而非数据所有从机都被联系在此使用了两个特殊功能寄存器SADDR表示从机地址SADEN表示地址屏蔽SADENSADDR内哪几位需使用而哪几位不予考虑SADENSADDR逻辑与得SADDR=1100SADEN=1111特定地址=1100SADDR=1100SADEN=1111特定地址=1100SADDR相同而SADEN不同以区分两个从机从机0001位从机1则100位由于从机110011000010以区别由00111100000111000000时两从机都可12SADDR=1100SADEN=1111特定地址=1100SADEN=1111特定地址=1100SADEN=1111特定地址=1110300=011100110单独寻址从机11=011100101220111000112位为121110010001SADEN相或后产生每个从机的广播地址结果为零的位视为无关位大多数情况下1广播地址为FFHSADDRSADEN00H是无关位的给定地址也即广播地址这样有效地禁止了自动寻址模式看门狗定时器由一个完全独立的振荡器控制以保证其最大限度的可靠性WDTEMCU复位并且它不能被关闭UCFG1WDTE生中断看门狗定时器如图24816ms2.1RC振荡器的频率误差为37%35WDCON写入数据以设定看门狗溢出时间建议初始化WDCON时先清看门狗然后写WDCONWDS20位采用这种方式能在10ms由于看门狗定时器振荡器是完全的片内振荡电路它独立于MCU使用的任何外部振荡电路它实质上执行的是内部振荡器失效的检测功能当看门狗功能被启动无论MCU振荡器因何故失效看门狗定时器都会溢出并使MCU复位例如上电复位掉电复8TO18 1=011100101220111000112位为121110010001SADEN相或后产生每个从机的广播地址结果为零的位视为无关位大多数情况下1广播地址为FFHSADDRSADEN00H是无关位的给定地址也即广播地址这样有效地禁止了自动寻址模式看门狗定时器由一个完全独立的振荡器控制以保证其最大限度的可靠性WDTEMCU复位并且它不能被关闭UCFG1WDTE生中断看门狗定时器如图24816ms2.1RC振荡器的频率误差为37%35WDCON写入数据以设定看门狗溢出时间建议初始化WDCON时先清看门狗然后写WDCONWDS20位采用这种方式能在10ms由于看门狗定时器振荡器是完全的片内振荡电路它独立于MCU使用的任何外部振荡电路它实质上执行的是内部振荡器失效的检测功能当看门狗功能被启动无论MCU振荡器因何故失效看门狗定时器都会溢出并使MCU复位例如上电复位掉电复8TO18 SQBOF(PCON.5) POF(PCON.4) R看门狗清0顺序如果看门狗定时器正在进行必须在其溢出产生复位前清数看门狗清0顺序包括1EH0E1H到WDRSTWDRSTWDRST的命令不必是连续的两条指令一个不正确的看门狗清0定时器的任何即刻反应如果在溢出之前没有给它一个正确的清发生芯片复位后用户程序只有有限的时间清看门狗或改变溢出时间如果应用中使用较低的500kHz1µsMCU35看门狗时钟控制寄存器AUXR1寄存 地址 复位值不可位寻 1µsMCU35看门狗时钟控制寄存器AUXR1寄存 地址 复位值不可位寻 符 功AUXR1.7 P0置位它必须通过软件清零 BOD 掉电检测中断当BOI置位时禁止掉电检测产生芯片复位但允许掉电检测作为一个中断详细资料见电源监控功能 EPROM电和掉电复位时LPEP才被清零详细资料见节电模式章节AUXR1.3SRST 软件复SRSTP87LPC760就象硬件复位一样复位AUXR1.20该位0允许通过DPTR1DPS位而不影响寄存器的其它位AUXR1.1-以后扩展用用户程序不能将其置1AUXR1.0 0- 地址 30H––看门狗复WDTEWDTE 符 功 看门狗定时器溢出标志当看门狗复位或定时器置位 看门狗运行控制当WDRUN=1时看门狗定时器开始工作当WDRUN=0时看门狗定时器停止工作如果WDTE位为1 看门狗时钟选择WDCLK=1时看门狗定时器时钟为MCU1/6WDCLK=0RC振荡器WDTE1WDCLK0RC振WDCON.2- WDS2- WDS2- 溢出时 最小时 标称时 最大时 20 --AUXR1寄存器的SRST位使软件能象发生外部复位或看门狗复位一样彻底复位如果写AUXR1的3位为SFRS0000开始执行写入AUXR1时务必当心防止突发性双数据指针DPTR增加了处理器指向确定指示地址的方式AUXR1寄存器的SRST位使软件能象发生外部复位或看门狗复位一样彻底复位如果写AUXR1的3位为SFRS0000开始执行写入AUXR1时务必当心防止突发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 碎石加工合同版
- 监理罚款补充协议2024
- 心源性猝死护理
- 数学指导教育课件
- 《建设工程投标实务》课件
- 2024年度在线租赁平台合同履行与纠纷处理2篇
- 2024版建筑施工用钢管及配件采购合同2篇
- 2024年度建设项目工程分包合同2篇
- 2024年度农用三轮车生产设备采购与租赁合同2篇
- 幼儿园安全教育方案
- 水凝胶剂项目商业计划书范文参考
- 城中村改造合作框架协议书范本
- 在一个长方形中画一个最大的正方形
- 基于单片机的温度传感器制作
- 10以内加减法口算题(13套100道题-可直接打印)
- 企业中层管理人员绩效考核中存在的问题及对策
- 桩基检测静载试验培训教材ppt课件
- 新教科版五年级上册科学期末试卷
- 汽车维修价格表格模板
- 第七章 行为修正模式
- 小猪吃的饱饱教案
评论
0/150
提交评论