已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
TheAT89C52isalow-power,high-performanceCMOS8-bitmicrocomputerwith8KbytesofFlashprogrammableanderasablereadonlymemory(PEROM).Thedeviceismanufac-turedusingAtmelshighdensitynonvolatilememorytechnologyandiscompatiblewiththeindustrystandard80C51and80C52instructionsetandpinout.Theon-chipFlashallowstheprogrammemorytobereprogrammedin-systemorbyaconventionalnonvolatilememoryprogrammer.Bycombiningaversatile8-bitCPUwithFlashonamonolithicchip,theAtmelAT89C52isapowerfulmicrocomputerwhichprovidesahighlyflexibleandcosteffectivesolutiontomanyembeddedcontrolapplications.TheAT89C52providesthefollowingstandardfeatures:8KbytesofFlash,256bytesofRAM,32I/Olines,three16-bittimer/counters,asix-vectortwo-levelinterruptarchitecture,afullduplexserialport,on-chiposcillator,andclockcircuitry.Inaddition,theAT89C52isdesignedwithstaticlogicforoperationdowntozerofrequencyandsupportstwosoftwareselectablepowersavingmodes.TheIdleModestopstheCPUwhileallowingtheRAM,timer/count-ers,serialport,andinterruptsystemtocontinuefunctioning.ThePowerDownModesavestheRAMcontentsbutfreezestheoscillator,disablingallotherchipfunctionsuntilthenexthard-warereset.Amapoftheon-chipmemoryareacalledtheSpecialFunctionRegister(SFR)spaceisshowninTable1.Notethatnotalloftheaddressesareoccupied,andunoccupiedaddressesmaynotbeimplementedonthechip.Readaccessestotheseaddresseswillingeneralreturnrandomdata,andwriteaccesseswillhaveanindeterminateeffect.Usersoftwareshouldnotwrite1stotheseunlistedlocations,sincetheymaybeusedinfutureproductstoinvokenewfea-tures.Inthatcase,theresetorinactivevaluesofthenewbitswillalwaysbe0.Controlandstatusbitsarecontainedinreg-istersT2CONandT2MODforTimer2.Theregisterpair(RCAP2H,RCAP2L)aretheCapture/ReloadregistersforTimer2in16-bitcapturemodeor16-bitauto-reloadmode.TheindividualinterruptenablebitsareintheIEregister.Twoprioritiescanbesetforeachofthesixinter-ruptsourcesintheIPregister.TheAT89C52implements256bytesofon-chipRAM.Theup-per128bytesoccupyaparalleladdressspacetotheSpecialFunctionRegisters.Thatmeanstheupper128byteshavethesameaddressesastheSFRspacebutarephysicallyseparatefromSFRspace.Whenaninstructionaccessesaninternallocationaboveaddress7FH,theaddressmodeusedintheinstructionspecifieswhethertheCPUaccessestheupper128bytesofRAMortheSFRspace.InstructionsthatusedirectaddressingaccessSFRspace.Forexample,thefollowingdirectaddressinginstructionac-cessestheSFRatlocation0A0H(whichisP2).MOV0A0H,#dataInstructionsthatuseindirectaddressingaccesstheupper128bytesofRAM.Forexample,thefollowingindirectaddressinginstruction,whereR0contains0A0H,accessesthedatabyteataddress0A0H,ratherthanP2(whoseaddressis0A0H).MOVR0,#dataNotethatstackoperationsareexamplesofindirectaddressing,sotheupper128bytesofdataRAMareavailableasstackspace.Timer0and1Timer0andTimer1intheAT89C52operatethesamewayasTimer0andTimer1intheAT89C51.Timer2Timer2isa16-bitTimer/Counterthatcanoperateaseitheratimeroraneventcounter.ThetypeofoperationisselectedbybitC/T2intheSFRT2CON(showninTable2).Timer2hasthreeoperatingmodes:capture,auto-reload(upordowncount-ing),andbaudrategenerator.ThemodesareselectedbybitsinT2CON,asshowninTable3.Timer2consistsoftwo8-bitregisters,TH2andTL2.IntheTimerfunction,theTL2registerisincrementedeverymachinecycle.Sinceamachinecycleconsistsof12oscillatorperiods,thecountrateis1/12oftheoscillatorfrequency.IntheCounterfunction,theregisterisincrementedinresponsetoal-to-0transitionatitscorrespondingexternalinputpin,T2.Inthisfunction,theexternalinputissampledduringS5P2ofeverymachinecycle.Whenthesamplesshowahighinonecy-cleandalowinthenextcycle,thecountisincremented.ThenewcountvalueappearsintheregisterduringS3P1ofthecyclefollowingtheoneinwhichthetransitionwasdetected.Sincetwomachinecycles(24oscillatorperiods)arerequiredtorecog-nizea1-to-0transition,themaximumcountrateis1/24oftheoscillatorfrequency.Toensurethatagivenlevelissampledatleastoncebeforeitchanges,thelevelshouldbeheldforatleastonefullmachinecycle.CaptureModeInthecapturemode,twooptionsareselectedbybitEXEN2inT2CON.IfEXEN2=0,Timer2isa16-bittimerorcounterwhichuponoverflowsetsbitTF2inT2CON.Thisbitcanthenbeusedtogenerateaninterrupt.IfEXEN2=1,Timer2per-formsthesameoperation,butal-to-0transitionatexternalinputT2EXalsocausesthecurrentvalueinTH2andTL2tobecap-turedintoRCAP2HandRCAP2L,respectively.Inaddition,thetransitionatT2EXcausesbitEXF2inT2CONtobeset.TheEXF2bit,likeTF2,cangenerateaninterrupt.ThecapturemodeisillustratedinFigure1.Auto-Reload(UporDownCounter)Timer2canbeprogrammedtocountupordownwhenconfig-uredinits16-bitauto-reloadmode.ThisfeatureisinvokedbytheDCEN(DownCounterEnable)bitlocatedintheSFRT2MOD(seeTable4).Uponreset,theDCENbitissetto0sothattimer2willdefaulttocountup.WhenDCENisset,Timer2cancountupordown,dependingonthevalueoftheT2EXpin.Figure2showsTimer2automaticallycountingupwhenDCEN=0.Inthismode,twooptionsareselectedbybitEXEN2inT2CON.IfEXEN2=0,Timer2countsupto0FFFFHandthensetstheTF2bituponoverflow.Theoverflowalsocausesthetimerregisterstobereloadedwiththe16-bitvalueinRCAP2HandRCAP2L.ThevaluesinRCAP2HandRCAP2Larepresetbysoftware.IfEXEN2=1,a16-bitreloadcanbetriggeredeitherbyanoverfloworbyal-to-0transitionatexter-nalinputT2EX.ThistransitionalsosetstheEXF2bit.BoththeTF2andEXF2bitscangenerateaninterruptifenabled.SettingtheDCENbitenablesTimer2tocountupordown,asshowninFigure3.Inthismode,theT2EXpincontrolsthedi-rectionofthecount.Alogic1atT2EXmakesTimer2countup.Thetimerwilloverflowat0FFFFHandsettheTF2bit.Thisoverflowalsocausesthe16-bitvalueinRCAP2HandRCAP2Ltobereloadedintothetimerregisters,TH2andTL2,respectively.Alogic0atT2EXmakesTimer2countdown.Thetimerunder-flowswhenTH2andTL2equalthevaluesstoredinRCAP2HandRCAP2L.TheunderflowsetstheTF2bitandcauses0FFFFHtobereloadedintothetimerregisters.TheEXF2bittoggleswheneverTimer2overflowsorunder-flowsandcanbeusedasa17thbitofresolution.Inthisoperat-ingmode,EXF2doesnotflaganinterrupt.BaudRateGeneratorTimer2isselectedasthebaudrategeneratorbysettingTCLKand/orRCLKinT2CON(Table2).NotethatthebaudratesfortransmitandreceivecanbedifferentifTimer2isusedforthereceiverortransmitterandTimer1isusedfortheotherfunction.SettingRCLKand/orTCLKputsTimer2intoitsbaudrategen-eratormode,asshowninFigure4.Thebaudrategeneratormodeissimilartotheauto-reloadmode,inthatarolloverinTH2causestheTimer2registerstobere-loadedwiththe16-bitvalueinregistersRCAP2HandRCAP2L,whicharepresetbysoftware.TheTimercanbeconfiguredforeithertimerorcounteropera-tion.Inmostapplications,itisconfiguredfortimeroperation(CP/T2=0).ThetimeroperationisdifferentforTimer2whenitisusedasabaudrategenerator.Normally,asatimer,itincre-mentseverymachinecycle(at1/12theoscillatorfrequency).Asabaudrategenerator,however,itincrementseverystatetime(at1/2theoscillatorfrequency).Timer2asabaudrategeneratorisshowninFigure4.Thisfig-ureisvalidonlyifRCLKorTCLK=1inT2CON.NotethatarolloverinTH2doesnotsetTF2andwillnotgenerateaninter-rupt.Notetoo,thatifEXEN2isset,al-to-0transitioninT2EXwillsetEXF2butwillnotcauseareloadfrom(RCAP2H,RCAP2L)to(TH2,TL2).ThuswhenTimer2isinuseasabaudrategenerator,T2EXcanbeusedasanextraexternalinterrupt.NotethatwhenTimer2isrunning(TR2=1)asatimerinthebaudrategeneratormode,TH2orTL2shouldnotbereadfromorwrittento.Undertheseconditions,theTimerisincrementedeverystatetime,andtheresultsofareadorwritemaynotbeaccurate.TheRCAP2registersmaybereadbutshouldnotbewrittento,becauseawritemightoverlapareloadandcausewriteand/orreloaderrors.Thetimershouldbeturnedoff(clearTR2)beforeaccessingtheTimer2orRCAP2registers.ProgrammableClockOutA50%dutycycleclockcanbeprogrammedtocomeoutonP1.0,asshowninFigure5.Thispin,besidesbeingaregularI/0pin,hastwoalternatefunctions.ItcanbeprogrammedtoinputtheexternalclockforTimer/Counter2ortooutputa50%dutycycleclockrangingfrom61Hzto4MHzata16MHzoperatingfrequency.ToconfiguretheTimer/Counter2asaclockgenerator,bitC/T2(T2CON.1)mustbeclearedandbitT2OE(T2MOD.1)mustbeset.BitTR2(T2CON.2)startsandstopsthetimer.Theclock-outfrequencydependsontheoscillatorfrequencyandthereloadvalueofTimer2captureregisters(RCAP2H,RCAP2L).Intheclock-outmode,Timer2roll-overswillnotgenerateaninterrupt.ThisbehaviorissimilartowhenTimer2isusedasabaud-rategenerator.ItispossibletouseTimer2asabaud-rategeneratorandaclockgeneratorsimultaneously.Note,however,thatthebaud-rateandclock-outfrequenciescannotbedeter-minedindependentlyfromoneanothersincetheybothuseRCAP2HandRCAP2L.UARTTheUARTintheAT89C52operatesthesamewayastheUARTintheAT89C51.InterruptsTheAT89C52hasatotalofsixinterruptvectors:twoexternalinterrupts(INT0andINT1),threetimerinterrupts(Timers0,1,and2),andtheserialportinterrupt.TheseinterruptsareallshowninFigure6.EachoftheseinterruptsourcescanbeindividuallyenabledordisabledbysettingorclearingabitinSpecialFunctionRegisterIE.IEalsocontainsaglobaldisablebit,EA,whichdisablesallinterruptsatonce.NotethatTable5showsthatbitpositionIE.6isunimplemented.IntheAT89C51,bitpositionIE.5isalsounimplemented.Usersoftwareshouldnotwrite1stothesebitpositions,sincetheymaybeusedinfutureAT89products.Timer2interruptisgeneratedbythelogicalORofbitsTF2andEXF2inregisterT2CON.Neitheroftheseflagsisclearedbyhardwarewhentheserviceroutineisvectoredto.Infact,theserviceroutinemayhavetodeterminewhetheritwasTF2orEXF2thatgeneratedtheinterrupt,andthatbitwillhavetobeclearedinsoftware.TheTimer0andTimer1flags,TF0andTFI,aresetatS5P2ofthecycleinwhichthetimersoverflow.Thevaluesarethenpolledbythecircuitryinthenextcycle.However,theTimer2flag,TF2,issetatS2P2andispolledinthesamecycleinwhichthetimeroverflows.OscillatorCharacteristicsXTAL1andXTAL2aretheinputandoutput,respectively,ofaninvertingamplifierthatcanbeconfiguredforuseasanon-chiposcillator,asshowninFigure7.Eitheraquartzcrystalorce-ramicresonatormaybeused.Todrivethedevicefromanexter-nalclocksource,XTAL2shouldbeleftunconnectedwhileXTAL1isdriven,asshowninFigure8.Therearenorequire-mentsonthedutycycleoftheexternalclocksignal,sincetheinputtotheinternalclockingcircuitryisthroughadivide-by-twoflip-flop,butminimumandmaximumvoltagehighandlowtimespecificationsmustbeobserved.IdleModeInidlemode,theCPUputsitselftosleepwhilealltheon-chipperipheralsremainactive.Themodeisinvokedbysoftware.Thecontentoftheon-chipRAMan
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年上光机项目资金需求报告
- 江西省上饶县七中重点达标名校2021-2022学年中考数学模试卷含解析
- 浙江省嘉兴市六校联考2022年中考一模数学试题含解析
- 2021-2022学年承德市重点中学中考数学模拟试题含解析
- 众筹协议范本
- 《水管锅炉+第7部分:安全附件和仪表gbt+16507.7-2022》详细解读
- 《风力发电机组 风力发电场监控系统通信 第6部分:状态监测的逻辑节点类和数据类gbt 30966.6-2022》详细解读
- 安全自查报告4篇
- 医保自查报告
- 专业教学实践报告
- 压力知觉量表pss10评判标准
- 红蓝光治疗老年特应性皮炎的疗效观察
- 机器人在教育培训中的应用
- 高效的网络带宽分配策略
- 潜水作业安全教育课件
- 无人机的维护保养课件
- 电压互感器的常用接线方式及应用
- 呼吸衰竭患者护理查房
- 公园秩序整治方案
- 《新能源汽车动力电池及管理系统检修》 课件 5-4 动力电池SOC跳变故障检修
- 译林版 一年级下册1B Unit7 What27s that.ppt
评论
0/150
提交评论