![ds n76esc rev1 00數(shù)據(jù)手冊nuvoton1t8051內(nèi)核微控制器n76e616_第1頁](http://file4.renrendoc.com/view/6ae6af35bf1e5c71f50a9f6aaf8aa3a8/6ae6af35bf1e5c71f50a9f6aaf8aa3a81.gif)
![ds n76esc rev1 00數(shù)據(jù)手冊nuvoton1t8051內(nèi)核微控制器n76e616_第2頁](http://file4.renrendoc.com/view/6ae6af35bf1e5c71f50a9f6aaf8aa3a8/6ae6af35bf1e5c71f50a9f6aaf8aa3a82.gif)
![ds n76esc rev1 00數(shù)據(jù)手冊nuvoton1t8051內(nèi)核微控制器n76e616_第3頁](http://file4.renrendoc.com/view/6ae6af35bf1e5c71f50a9f6aaf8aa3a8/6ae6af35bf1e5c71f50a9f6aaf8aa3a83.gif)
![ds n76esc rev1 00數(shù)據(jù)手冊nuvoton1t8051內(nèi)核微控制器n76e616_第4頁](http://file4.renrendoc.com/view/6ae6af35bf1e5c71f50a9f6aaf8aa3a8/6ae6af35bf1e5c71f50a9f6aaf8aa3a84.gif)
![ds n76esc rev1 00數(shù)據(jù)手冊nuvoton1t8051內(nèi)核微控制器n76e616_第5頁](http://file4.renrendoc.com/view/6ae6af35bf1e5c71f50a9f6aaf8aa3a8/6ae6af35bf1e5c71f50a9f6aaf8aa3a85.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
概 特 結(jié)構(gòu)框 管腳分布 內(nèi)存架 程序內(nèi) 數(shù)據(jù)存儲 片上 非可變數(shù)據(jù)存 特殊功能寄存器 通用80C51系統(tǒng)控 I/O端口結(jié)構(gòu)和操 準(zhǔn)雙向模 推挽輸出模 輸入高阻模 開漏模 讀-修改-寫指 I/O端口的控制寄存 輸入輸出數(shù)據(jù)控 輸出模式控 輸入類型和輸出能力控 定時器/計數(shù)器0和 模式0(13位定時器 模式1(16位定時器 模式2(8位自動重裝載定時器 模式3(兩組獨立8位定時器 定時器 自動重載模 PWM模 定時器2控制寄存 定時器 看門狗定時器 超時復(fù)位定時 通用定時 自喚醒定時器 串口 模式 模式 模式 模式 波特 幀錯檢 多機通 地址自動識 2IC總 功能描 起始START及結(jié)束STOP條 7位地址和數(shù)據(jù)格 應(yīng)答 仲 I2C控制寄存 工作模 主機發(fā)送模 主機接收模 從機接收模 從機發(fā)送模 廣播呼叫模 狀態(tài) I2C中斷服務(wù)程序范 I2C超 I2C中 引腳中 10位模數(shù)轉(zhuǎn)換- 功能描 ADC工作方 ADC轉(zhuǎn)換結(jié)果比較 ADC控制寄存 LCD驅(qū) 功能描 LCD控制寄存 LCD程序流 時控保護(hù) 中斷系 中斷概 中斷使 中斷優(yōu)先 中斷服 中斷延 外部中 在應(yīng)用編程 IAP命 IAP用戶指 使用FLASH存儲器作為數(shù)據(jù)存 在系統(tǒng)編程 電源管 空閑模 掉電模 時鐘系 時鐘 內(nèi)部振蕩 外部晶體振蕩器或時鐘輸 系統(tǒng)時鐘切 系統(tǒng)時鐘除 系統(tǒng)時鐘輸 電源管 上電復(fù)位 欠壓檢測 復(fù) 上電復(fù) 欠壓復(fù) 外部復(fù)位引腳復(fù) 看門狗定時器復(fù) 軟件復(fù) 啟動選 復(fù)位狀 輔助功 雙 96位唯一識別碼 在片上調(diào)試 功能描 OCD限制條 在電路編程 配置字(CONFIG 指令 電氣特 絕對最大額定 直流電氣特 交流電氣特 模擬電氣特 封裝信 文件版 N76E616是一個內(nèi)嵌FLASH、8位高性能1T基于8051核的微控制器。指令集完全兼容標(biāo)準(zhǔn)和增強型的的716內(nèi)嵌18K的FH存儲區(qū),通常稱作AOM,用于存放用戶程序代碼。該存儲區(qū)支持IP燒寫功能,即可通過片內(nèi)固件更新程序代碼,P功能同時提供用戶可自行配置加密程序區(qū)或數(shù)據(jù)存儲區(qū),也可通過P指令或C指令讀取任一區(qū)域內(nèi)數(shù)據(jù)。另外616還配置額外具有一存儲區(qū)稱作M,該區(qū)域可存放用于執(zhí)行IS(otce),LROM區(qū)域從8K的OOG配置大小,最多可配置到4K字節(jié)。整個1KFLAH區(qū)域還支持P編程方式,即通過片外O由總線方式燒寫片內(nèi)FLSLSH66提供豐富的外設(shè)包括5字節(jié)的和26字節(jié)的外部R,最大到6個O口,兩個6位定1帶W1U2識別,一個IC,8通道共享引腳中斷用于所有I/O,一個10位的ADC,和最大到180段的LCD驅(qū)動。外設(shè)配備712Hz到16H8kH外0k內(nèi)部震蕩器,和一個159H內(nèi)部精確振蕩器,它在常溫下達(dá)到%的精度。616提供額外電源監(jiān)測,例如上電復(fù)位和4級欠壓檢測,有穩(wěn)定的電源通斷性能用于高可靠的系統(tǒng)設(shè)66微控制器操作功耗非常低,有兩種經(jīng)濟(jì)的電源模式用來減少電源的消耗空閑模式和掉電模式。軟件可以選擇空閑模式關(guān)閉U時鐘,但是允許外設(shè)繼續(xù)工作。掉電模式停止整個系統(tǒng)時鐘用于最小的功耗。帶有高性能的CPU核和豐富的外設(shè),N76E616全靜態(tài)設(shè)計81T基于8051CMOS微控制器工作2.4V內(nèi)存18KAPROM4K/3K/2K/1K/0KLDROM用于啟動ISPFLASH內(nèi)存每256FLASH20,000次擦寫壽命代碼安全加密256256RAMXRAMMOVX指令訪問UID(唯一碼11.059MHz±1%,10kHz2MHz16MHz高速外部晶振32.768kHz低速外部晶振外部時鐘輸入通過軟件切換時鐘源可編程系統(tǒng)時鐘分頻,最大到外設(shè)45I/O???????????1622A/2B/2C/2D支持自動重載模式和PWM(WDT),時鐘源為內(nèi)部10kHzUART八通道引腳中斷,與所有I/O端口共享。邊沿/一個10位ADC,最大到300ksps4COM32SEG6COM/30SEG配置的LCD電源管理電源監(jiān)測(BOD4-ESDEFT開發(fā)工具(OCD)KEILTM部分型號和封裝18KLDROM4K3-1N76E616
8-bitInternalP08-bitInternalAIN0~COM0~COM5SEG0~
AnyI/O3-14-1.4-1.LQFP-484–1.復(fù)合功能描述地:P0:端口0是可位尋址的8I/O AIN0:ADC 外部計數(shù)輸入到定時器/計數(shù)器00./AIN1??????? 端口0管腳AIN1:ADC輸入通道??? 端口0管腳AIN2:ADC輸入通道 端口0管腳AIN3:ADC輸入通道 端口0管腳AIN4:ADC輸入通道 端口0管腳AIN5:ADC輸入通道 端口0管腳AIN6:ADC 端口0管腳AIN7:ADC輸入通道CLO:SEG31:LCDsegment31輸出P1:端口1是可位尋址的8I/O1 端口1管腳COM0:LCDcommon0輸出2 端口1管腳COM1:LCDcommon1輸出3 端口1管腳COM2:LCDcommon24P1.3/?????? 端口1管腳??????:1輸入COM3:LCDcommon3輸出P1.4:端口1管腳 外部計數(shù)輸入到定時器/計數(shù)器1,或是輸出SEG7:LCDsegment7輸出P1.5:Port1管腳T2AO12A輸出SEG8:LCDsegment8輸出P1.6:端口1管腳T2AO22ASEG9:LCDsegment9輸出 端口1管腳T2BO12BSEG10:LCDsegment10輸出4–1.復(fù)合功能描述P2:端口2是可位尋址的8位I/O 端口2 SEG11:LCDsegment11輸出 端口2 串行端口0SEG12:LCDsegment12輸出 端口2 串行端口0SEG13:LCDsegment13輸出 端口22 IC數(shù)據(jù)SEG14:LCDsegment14輸出 端口22 IC時鐘SEG15:LCDsegment15輸出 端口2SEG16:LCDsegment16輸出 端口2T2CO1:2C輸出SEG17:LCDsegment17輸出 端口2 SEG18:LCDsegment18輸出P3:端口3是可位尋址的7I/O端口,P3.6 端口3 SEG27:LCDsegment27 端口3 SEG28:LCDsegment28輸出 當(dāng)HXTLXT沒用到,端口32 HXTLXT被使用,XIN是輸入管腳到內(nèi)部反向放大器。如果ECLK模式使能,XIN是外部時鐘輸入引腳。SEG29:LCDsegment29輸出 當(dāng)HXTLXT沒用到,端口3bit3 HXTLXT被使用,XOUT是輸出管腳來自內(nèi)部反向放大器。如果ECLK模式使能,它發(fā)出XIN的反向信號。SEG30:LCDsegment30輸出 端口3ICPDA:ICP數(shù)據(jù)輸入或輸出OCDDA:OCD數(shù)據(jù)輸入或輸出4–1.復(fù)合功能描述 ICPOCDCK:OCD3.??????P3.6RPD(CONFIG0.2)配置為0,端口3bit6????:????一個低電平復(fù)位芯片。??????引腳有一個內(nèi)部上拉電阻,通過簡單的P4:端口4是可位尋址的7I/O5 端口4 LCDsegment0輸出 LCDcommon4輸出6 端口4 LCDsegment1輸出 LCDcommon5輸出 端口4 LCDsegment2輸出7 端口4 LCDsegment3輸出8 端口4 LCDsegment4輸出9 端口4 LCDsegment5輸出 端口4 LCDsegment6輸出P5:端口4是可位尋址8I/O 端口5 外部觸發(fā)ADC信號 LCDsegment19輸出 端口5 LCDsegment20輸出 端口5 LCDsegment21輸出 端口5 LCDsegment22輸出 端口5 LCDsegment23輸出 端口5 LCDsegment24輸出 端口5 1 LCDsegment25輸出 端口5 1發(fā)送數(shù)據(jù)輸出 LCDsegment26輸出[1]I/O引腳可以配置成中斷引腳,這個特征沒有在多功能描述里面列出來。詳見章節(jié)16.“引腳中斷R2MHz1632.7684-2數(shù)據(jù)內(nèi)存占用的地址空間獨立于編程內(nèi)存。在76616中,有6字節(jié)內(nèi)部RM。對于需要更多內(nèi)部M的許65AXOX整個嵌入的H,作為編程內(nèi)存的功能,被分成三塊。應(yīng)用M(M)正常情況下為用戶代碼,加載M(M)G,RM和OM6字節(jié)。H控制單元支持擦除、編程、和讀模式。5–1.所示。在任何復(fù)位之后CPU從地址0000H用于服務(wù)中斷,中斷服務(wù)位置(叫做中斷向量)中斷引起U跳到中斷服務(wù)子程序(R)開始執(zhí)行的地方。例如外部中斷0被分配到地址H。如果外部中斷0打算使用,它的服務(wù)子程序應(yīng)該從地址03H開始。如果中斷不使用,該地址可以作為通用的編程內(nèi)存。中斷服務(wù)位置間隔為八個字節(jié):0H用于外部中斷0,0H用于定時器0,00H用于外部中斷1,01H用18J另外單獨的編程塊叫做M,它的通常功能是存儲啟動代碼用于P。它可以更新M空間和G字節(jié)。M中的代碼也可以重新編程M。對于M和M的P的細(xì)節(jié)和配置位,請看章節(jié)4“()”RM和LRMUC映射C指針到00H到DM開始的地址。因此U認(rèn)為DM是單獨的編程內(nèi)存且所有中斷向量獨立于。76543210出廠默認(rèn)值:1111位LDROMLDROM的大小111=LDROM.APROM18K字節(jié)110=LDROM是1K字節(jié).APROM是17K字節(jié)101=LDROM是2K字節(jié).APROM是16K字節(jié)100=LDROM是3K字節(jié).APROM是15K字節(jié)0xx=LDROM是4K字節(jié).APROM是14K字節(jié)BS= BS=[1]ThelogicboundaryaddressesofAPROMandLDROMaredefinedbyCONFIG1[2:0].5–1.N76E616圖-27616以分割成三塊。分別是RM的低128字節(jié),AM的高8字節(jié),和R空間的128字節(jié)。內(nèi)部數(shù)據(jù)內(nèi)存的地址總是8位寬度的,可用于56字節(jié)的地址空間。直接尋址高于7FH的地址會訪問特殊功能寄存器(R),間接尋址高于H的地址會訪問AM的高8字節(jié)。雖然R地址空間和M高8字節(jié)共享相同的邏輯地址0H到H,事實上他們是物理獨立的實體。直接尋址區(qū)別于M的高28字節(jié),僅可以訪問R。R空間中的16個R0內(nèi)部RM的低28字節(jié)在所有的051設(shè)備上都有的。最低的2字節(jié)作為通用寄存器分成四組8個寄存器,程序0PW3)S0和R16(H到F)是(0H到)。5180H到7F。所有低2828R。對于整個6字節(jié)的內(nèi)部RAM,另外一個應(yīng)用是用于堆棧。這個區(qū)域通過堆棧指針()來選擇,P存儲堆棧頂?shù)牡刂?。?dāng)AL、JP或中斷被調(diào)用,返回的地址就存在堆棧里面。沒有限制堆棧從M的什么地方開始。默認(rèn)情況下,在復(fù)位后堆棧指針為0H。用戶可以改變該地址為任何想要的值。P會指向最后使用的值。因此P
256BytesXRAM(MOVXaddressing)256BytesXRAM(MOVXaddressing)Upper128BytesInternalRAM(indirectaddressing)(directLower128BytesInternalRAM(directorindirectIndirectIndirectAccessingDirectorIndirectAccessingRegisterBankRegisterBankRegisterBankRegisterBank
Bit-GeneralPurpose5-3.內(nèi)部256字節(jié)RAMN76E616提供額外的片上256字節(jié)的額外RAM叫做XRAM來擴(kuò)大RAM的空間。它占用地址空間從00H到FFH。這256字節(jié)的XRAM通過MOVE外部指令MOVX@DPTR或MOVX@Ri.(看下面示例代碼)。注意堆棧指針不能位XRAM;write#5AHtoXRAMwithaddress;readfromXRAMwithaddress;write#5BHtoXRAMwithaddress;readfromXRAMwithaddress通過使用IAP,APROM或LDROM任何頁都可以用來作為非易失性數(shù)據(jù)存儲。IAP的細(xì)節(jié),請看章節(jié)21.”在應(yīng)用編程(IAP)”76用特殊功能寄存器(R)來控制或監(jiān)視外設(shè)和其他模塊。R位于地址0到H地址空間,僅可以HHR況下,這是非常有用的。其他所有的R僅可以字節(jié)尋址。N76616包含標(biāo)準(zhǔn)51中出現(xiàn)的所有FR,然而一81R為了在地址0到xF之間提供多于28字節(jié)的R,補充了R頁。默認(rèn)情況下,所有R訪問目的都是R頁0。在設(shè)備初始化過程中位于R頁1的地址可能需要去訪問。寄存器S用來切換R地址頁。注意這。SFRS–SFR頁選擇(TA保護(hù)76543210地址: 復(fù)位值:0000位0SFR0SFR1SFRSFR頁的示例代碼;switchtoSFRpage;switchtoSFRpage6–1.SFR頁0101B0101010101010101--01-01-01--010101--SFR空間中未使用地址 ‘- 標(biāo)記,訪問改寫這些地址字節(jié)會有不可預(yù)知的影響,請避免這種情況6–2.SFR復(fù)位值擴(kuò)展中斷優(yōu)先級高位00000000擴(kuò)展中斷優(yōu)先級0000000LCD--0000000LCD0000000LCD0000000LCD-0000000串口10000000-0000000P00000000ADC0000000BB0000000-0000000輸入捕獲20000000輸入捕獲200000000000000管腳中斷高電平/0000000管腳中斷低電平/000000000000000ADC--00000000000000LCDsegment0000000LCDsegment0000000ADC0000000ADC0000000ADC0000000ADC00100000000000P5模式選擇寄存器0000000P50000000P5模式選擇1111111P4模式選擇-0000000P4-0000000P4模式選擇-01111110Output011111110XXXOutput11111111XXXX2D00000002D00000002C00000002C0000000-000000002B00000002B00000002A00000002A00000000000000定時器20000000T2APS[20000000定時器200000006–2.SFR 復(fù)位值00000000定時器300000000定時器300000000300000000ADC00000000ADC00000000IC00000000IC---00000000IC0000000000001110000111110000000000000000000100000000000000000-00000000-00000000P2模式選擇P2M200000000P200000000P2模式選擇P2M111111111P100000000P1模式選擇00000000P100000000P1模式選擇11111111P0模式選擇P0M200000000P000000000P0模式選擇P0M111111111Output001111110XXX0011000000000000P300000000P3-00000000P300111111欠壓檢測控制LPBOD[10000000100000UU00000111b00001UU00000000000000000000IAP00000000IAPIAPA[700000000IAP0000000000000000欠壓偵測控制-C0CCXC0XbU0UUXU1U0UU6–2.SFR 復(fù)位值-000000001U00000??????U100000UU00000Output11111111XXXX000000U0000000C0擴(kuò)展中斷使能00000000-00000000串口100000000串口000000000Serialport00000000000110000-001100000000000000000000Output11111111XXXX--0000000000000000定時器100000000定時器000000000定時器100000000定時器000000000??0000000000000000-00010000000U000000000000000000000000000000000111Output11111111XXXX復(fù)位值符號描述0:0;1:1;U:不變;C:[5];X:[3],[6],復(fù)位之后所有I/O引腳為默認(rèn)懸浮輸入模式。如果RPD(CONFIG0.2)保持未編程1,那么讀回P3.6引腳總是0SFR根據(jù)CONFIG29.“配置字(CONFIGBOF復(fù)位值取決于CONFIG2不同的設(shè)置和VDD當(dāng)欠壓偵測使能,BOS是只讀標(biāo)志,由VDD標(biāo) ‘- 的位保留將來使用。他們必須保持在初始狀態(tài),訪問改寫這些位可能導(dǎo)致不可預(yù)知的后果AorACC–(可位尋址76543210地址: 復(fù)位值:0000位AACC寄存器是標(biāo)準(zhǔn)的80C51BB(可位尋址76543210地址: 復(fù)位值:0000位BB寄存器是另外一個標(biāo)準(zhǔn)80C51的累加器,它用于MULDIV指令。SP–76543210地址: 復(fù)位值:0000位H或L的默認(rèn)值是H。DPL–76543210地址: 復(fù)位值:0000位這是16位數(shù)據(jù)指針的低字節(jié),DPL結(jié)合DPH作為16位的數(shù)據(jù)指針DPTR訪問想要訪問的RAM或編程內(nèi)存地址。DPS(AUXR1.0)位決定哪一個數(shù)據(jù)指針DPTR或DPH–76543210地址: 復(fù)位值:0000位這是16位數(shù)據(jù)指針的高字節(jié),DPH結(jié)合DPL作為16位的數(shù)據(jù)指針DPTR訪問想要訪問的RAM或編程內(nèi)存地址。DPS(AUXR1.0)位決定哪一個數(shù)據(jù)指針DPTR或PSW(可位尋址76543210PR地址: 復(fù)位值:0000位7進(jìn)行加法或減法操作時,當(dāng)前運算需要向高位進(jìn)位或借位時,CY在進(jìn)行MULDIV運算時,CY始終為0CY受DAA指令影響,用來表示是否初始BCD數(shù)大于100在CJNE指令中,如果第一個無符號數(shù)的值小于第二個,則CY置1,否則清06當(dāng)前運算導(dǎo)致從半字節(jié)的低序第45用戶標(biāo)志4位3這兩位用來選擇R0到R7 寄存器 RAM地 00H 08H 10H 18H2OV用于標(biāo)示發(fā)生溢出。對于加法指令A(yù)DD或ADDC指令中,如果位6有進(jìn)位而位“”“。V也用為“”“。O對于MUL乘法指令,當(dāng)結(jié)果大于255(00FFH)時,OV置1。反之清0對于DIV除法指令,通常情況下OV為0。除非當(dāng)B設(shè)定值為00H,則A和B的返回值為隨機值,同時OV置1。1用戶標(biāo)志0P當(dāng)累加結(jié)果為奇數(shù)時,該標(biāo)志置1,偶數(shù)時清07–1.XXCLR0XXXCPLXXXXANLC,X0XANLC,X0XORLC,XDAXORLC,XRRCXMOVC,XRLCXXSETB1[1]X表示根據(jù)指令的結(jié)果變化PCON–76543210--地址: 復(fù)位值:詳見表6–2.SFR定義及復(fù)位位3通用標(biāo)志通用標(biāo)志可由用戶置位或清零2通用標(biāo)志通用標(biāo)志可由用戶置位或清零66最多支持6個可位尋址的通用O引腳,分成6組0到5。每一個端口有它的端口控制寄存器()O引腳(除6)可以被軟件獨立配置成四中O模式中的一種。這四種模式是準(zhǔn)雙向模式(標(biāo)準(zhǔn)1端口結(jié)M1和x模8–1.管腳I/OI/O00011011所有O引腳可以通過S寄存器里對應(yīng)的位選擇為L電平輸入或施密特觸發(fā)輸入。施密特觸發(fā)輸入有更好的有四個I/O引腳支持大的輸出或灌電流,包括P1.0到P1.3。默認(rèn)情況下,它們和其他I/O引腳的輸出能力一樣。當(dāng)配置RPD(CONFIG0.2)為0,P3.6被配置為輸入引腳。同時P3.6將永遠(yuǎn)在輸入和施密特觸發(fā)模式,且有一個內(nèi)1的O外部器件將電平拉低。當(dāng)引腳被拉低時有強驅(qū)動能力,會吸收大電流。在準(zhǔn)雙向/O適應(yīng)不同的應(yīng)用。其中一個上拉叫做特弱上拉,當(dāng)端口鎖定在邏輯1時,打開特弱上拉,若為外部懸空狀態(tài),特第二種上拉為“弱上拉”,當(dāng)外部端口引腳自身處于邏輯1電平時打開。這種上拉提供源電流以使準(zhǔn)雙向引腳輸出1。如果引腳為邏輯1,被外部器件拉低,“弱上拉”關(guān)閉,僅有“特弱上拉”打開。此時要將引腳拉低,外部器件要有足夠的灌電流(大于ITL)以克服“弱上拉”,并使端口的電壓低于輸入門限電壓(低于VL)?!扒闆r發(fā)生時,強上拉打開兩個總線時鐘的時間以快速將端口引腳拉高。然后就關(guān)閉,弱上拉和特弱上拉繼續(xù)保PPPPVeryNPortPort8-1.1 Port
Port8-2輸入模式提供真實的高阻輸入路徑。雖然準(zhǔn)雙向模式也可以作為輸入引腳,但是它需要相對強的輸入源。輸入模0DD Port8-3.開漏輸出配置關(guān)閉所有內(nèi)部上拉,當(dāng)端口鎖定為邏輯0時,僅打開驅(qū)動端口的下拉晶體管。當(dāng)單口鎖存為邏輯1時,它就和輸入模式一樣。通常用于IC輸出線上,開漏引腳需要加一個外部上拉電阻,典型連一個電阻到D。1NPortNPort8-4從FR或內(nèi)部M讀一個字節(jié),修改它,并重新寫回去的指令,叫做讀-修改-寫指令。當(dāng)目的是一個O端口或一個端口位,這些指令讀內(nèi)部輸出鎖存而不是外部引腳的狀態(tài),這種指令讀端口R的值,修改它并寫回到SFR--指 描 ANLdirectAANLdirect ORLdirectAORLdirect ORXRLdirect,AXRLdirect 為1轉(zhuǎn)跳指令并清除.(JBCbit,位取反.(CPL加一指令.(INC減一指令DEC減一不為零轉(zhuǎn)跳指令.(DJNZdirect,bit,移進(jìn)位標(biāo)志到位.(MOVbit,清位.(CLR置位.(SETB最后三條指令看似不是明顯的讀-修改-寫指令,實際也是讀-修改-這些寄存器是O輸入輸出數(shù)據(jù)緩存。讀獲取O輸入的數(shù)據(jù)。寫驅(qū)動數(shù)據(jù)輸出,所有這些寄存器都是可位尋址P00(可位尋址76543210地址: 復(fù)位值:1111位0是8I/O端口P11(可位尋址76543210地址: 復(fù)位值:1111位18I/O端口P22(可位尋址76543210地址: 復(fù)位值:1111位端口28I/O端口P33(可位尋址765432100RR地址: 復(fù)位值:0011位7063第6當(dāng)RPD(CONFIG0.2)配置為0,P3.6是輸入引腳。當(dāng)RPD未配置P3.6讀總是053第5P3.5I/O引腳,ICPCKOCDCK43第4P3.4I/O引腳,與多功能引腳ICPDA和OCDDA33第3HXTLXT沒有使用,P3.3可用。這種情況下P3.3功能是通用I/OHXTLXTP3.3XOUTP3.3無效,讀P3.323第2僅當(dāng)HXTLXT,ECLK沒有使用,P3.2可用,這種情況下P3.2功能是通用I/O。如果HXT,LXTECLK使用,P3.2引腳功能作為XINP3.2無效,讀P3.2總位13第1P3.1I/O引腳,與多功能引腳T2DO2和SEG2803第0P3.0I/O引腳,與多功能引腳T2DO1和SEG27P4765432100R地址: 復(fù)位值:0111位7-47I/O端口P55(可位尋址76543210地址: 復(fù)位值:1111位58I/O端口P0M1076543210地址:B1H,頁: 復(fù)位值:1111位P0M2076543210地址:B2H,頁: 復(fù)位值:0000位0模式選擇P0M1P0M2結(jié)合用于決定P0每個引腳的I/O8–1.管腳I/O模式配置P1M11模式選擇76543210地址:B3H,頁: 復(fù)位值:1111位P1M2176543210地址:B4H,頁: 復(fù)位值:0000位P1M1P1M2結(jié)合用于決定P1每個引腳的I/O8–1.管腳I/O模式配置P2M1276543210地址:B5H,頁: 復(fù)位值:0111位P2M2276543210地址:B6H,頁: 復(fù)位值:0000位P2M1P2M2結(jié)合用于決定P2每個引腳的I/O8–1.管腳I/O模式配置P3M1376543210地址:ACH,頁: 復(fù)位值:0000位P3M2376543210地址:ADH,頁: 復(fù)位值:0000位6P3.60=P3.6上拉禁止1=P3.6僅當(dāng)RPD(CONFIG0.2)被配置為0.該位有效。當(dāng)選擇作為??????引腳上拉總是使3模式選擇P3M1P3M2結(jié)合用于決定P3每個引腳的I/O8–1.管腳I/O模式配置P4M1476543210--地址:DAH,頁: 復(fù)位值:1111位P4M2476543210--地址:DBH,頁: 復(fù)位值:0000位P4M1P4M2結(jié)合用于決定P4每個引腳的I/O8–1.管腳I/O模式配置P5M1576543210地址:DCH,頁: 復(fù)位值:1111位P5M2576543210地址:DDH,頁: 復(fù)位值:0000位P5M1P5M2結(jié)合用于決定P5每個引腳的I/O8–1.管腳I/O模式配置每一個I/O引腳可以獨立地配置成TTL輸入或施密特觸發(fā)輸入。P1OS[3:0]位用于P1.0到P1.3的輸出控制。這四個引腳支持大灌入電流和輸出電流。注意所有PxS和P1OS寄存器通過切換SFR頁到頁1來訪問。P0S076543210地址:B1H,頁: 復(fù)位值:0000位nP0.n0P0.nTTL1=P0.n.P1S176543210地址:B3H,頁: 復(fù)位值:0000位n0P1.nTTL1=P1.n.P2S–端口276543210地址:B5H,頁: 復(fù)位值:0000位n0=P2.n.TTL1=P2.nP3S–端口376543210--地址:ACH,頁: 復(fù)位值:0000位n0=P3.n.TTL1=P3.nP4S–端口476543210--地址:DAH,頁: 復(fù)位值:0000位n0=P4.n.TTL1=P4.nP5S–端口576543210地址:DCH,頁: 復(fù)位值:0000位n0=P5.n.TTL1=P5.nP1OS–端口176543210地址:B4H,頁: 復(fù)位值:0000位-nP1.n0=P1.n1=P1.n大電流輸出能力N76E616的定時器/計數(shù)器0和1分別為兩個16位定時器/計數(shù)器。每個都由兩個8位的寄存器組成16計數(shù)寄存器。對于定時器/計數(shù)器0為高8位寄存器TH0、低8位寄存器TL0。同樣定時器/計數(shù)器1也有兩個8位寄存器,TH1和TL1。TCON和TMOD可以配置定時器/計數(shù)器0和1的模式。定時器或計數(shù)器功能通過TMOD的?位來選擇。每一個定時器/計數(shù)器有它自己的選擇位。TMOD.2用于定時器計數(shù)器0功能選擇,TMOD.6用于定時器/計數(shù)器1TM(ON.3)02S)。TMO4)1每當(dāng)檢測到外部計數(shù)輸入腳上的負(fù)電平跳變(T0針對定時器0,T1針對定時器1),計數(shù)寄存器的內(nèi)容就會加一。T0或T1T0TMTT)616LXT固定的溢出速率。此外每一個定時器/計數(shù)器可以配置為四種可能的模式中的任何一種。通過TD中的0和M1定時器0和1可以配置成當(dāng)定時器溢出發(fā)生的時候自動取反一個端口輸出。T0和T1既用來做定時器的計數(shù)輸入也用來做取反輸出。這個功能通過P1M1寄存器的T0OE和T1OE控制位來使能。分別應(yīng)用于定時器0和定時器1。當(dāng)這種模式打開,定時器第一次溢出是先輸出邏輯1。為了實現(xiàn)該模式的功能,?位應(yīng)該清零選擇系統(tǒng)時鐘作為注意:TH0(TH1)TL0(TL1)是分別被訪問的,強烈建議在模式0或模式1,在讀或?qū)慣H0(TH1)TL0(之前,用戶應(yīng)該通過清零TR0(TR1)TMOD0176543210地址: 復(fù)位值:0000位710=當(dāng)TR1=1時,定時器1時鐘運行不管INT11=當(dāng)TR1=1和INT1為邏輯1,定時器16?定時器1計數(shù)器/定時器選擇0=定時器11=定時器1隨外部引腳T15定時器1 定時器1 28TH1自動重載功能的 314300=當(dāng)TR0=1時,定時器0時鐘運行不管INT01=當(dāng)TR0=1和INT0為邏輯1,定時器02?定時器0計數(shù)器/定時器選擇0=定時器01=定時器0隨外部引腳T01定時器0 0 模式013/ 模式116/ 模式28TH0自動重載功能的 模式3TL08/TH00TCON01(可位尋址76543210R(電平讀/(邊沿R(電平讀/(邊沿地址: 復(fù)位值:0000位71061啟動控制0=定時器1中止.清該位將中止定時器1和當(dāng)前計數(shù)將保存在TH11=使能定時器50溢出標(biāo)志040啟動控制0=定時器0中止.清該位將中止定時器0和當(dāng)前計數(shù)將保存在TH01=使能定時器TL0076543210地址: 復(fù)位值:0000位0數(shù)據(jù)寄存器TL0是定時器0的16位計數(shù)數(shù)據(jù)寄存器低8位字節(jié)TH0076543210地址: 復(fù)位值:0000位0寄存器TH0是定時器0的16位計數(shù)寄存器的高字節(jié)TL1176543210地址: 復(fù)位值:0000位定時器1寄存器TL1是定時器1的16TH1176543210地址: 復(fù)位值:0000位1寄存器TH1是定時器1的16CKCON–76543210地址: 復(fù)位值:0000位410=1的時鐘源是系統(tǒng)時鐘的12除頻,它保留標(biāo)準(zhǔn)8051的特性。11300=0的時鐘源是系統(tǒng)時鐘的12除頻,它保留標(biāo)準(zhǔn)8051的特性。10的時鐘源直接是系統(tǒng)時鐘AUXR176543210-0-R地址: 復(fù)位值見表6–2.SFR定義及復(fù)位位51LXT01計數(shù)時鐘通過?(TMOD.6)和T1M(CKCON.4)1定時器1LXT時鐘4定時器0LXT00計數(shù)時鐘通過?(TMOD.2)和T0M(CKCON.3).10LXT時鐘P3M1376543210地址:ACH,頁: 復(fù)位值:0011位710111從T1注意:僅當(dāng)操作在定時器模式,定時器1600010從T0注意:僅當(dāng)操作在定時器模式,定時器0在模式0,定時器/計數(shù)器是13位的計數(shù)器。13位的計數(shù)器由TH0(TH1)和TL0(TL1)的低五位組成。TL0(TL1)0(1是?
??????
??????)是1定時器/計數(shù)器使能。Gate設(shè)置為1?
??????
??????)計算脈沖的寬度。當(dāng)13位的定時器計數(shù)值變?yōu)?FFFH后,下一次計數(shù)會使其變?yōu)?000H定時器溢出標(biāo)志TF0(TF1)置位,如果中斷打開,此時還會產(chǎn)生一個定時器中斷。
T0M(CKCON.3)(T1M0 010T0(T1)
TL0TR0
T0LXTM(AUXR1.4)(T1LXTM
00TH0
00
Timer
77INT0(INT1)
9-1.定時器/計數(shù)器0及1模式011x6T0M(CKCON.3)(T1MT0(T1)
0 0101
TL00 707TR0
T0LXTM(AUXR1.4)(T1LXTM
00TH0
7T0OE7
Timer
T0(T1) 9-2.定時器/計數(shù)器0及1模式模式2下定時器/計數(shù)器為自動重裝載模式。此模式下TLx是一個8位的計數(shù)器,THx保存重裝計數(shù)值。當(dāng)TLxFFH向00H溢出后,TCON中的TFx標(biāo)志置位THx中內(nèi)容重裝至TLx,繼續(xù)計數(shù)過程。重裝過程中THx不變.該特征最好地適用于UART波特率發(fā)生器,不需要連續(xù)軟件介入.注:僅有定時器1可以用作UART的波特率源。當(dāng)TRx位置1,GATE位及???????(???????)配置正確時,計數(shù)器開始計數(shù)。GATE位及???????(???????)引腳的功能與
T0M(CKCON.3)(T1M0 01T0(T1)
TL0
TimerTR0INT0(INT1)
T0LXTM(AUXR1.4)(T1LXTM
07TH007
T0(T1)9-3.定時器/計數(shù)器0及1模式模式3有著不同的工作方式。對定時器/計數(shù)器1來說模式3會將其停止;對定時器/計數(shù)器0來說模式3下TL0083、0?
??????和TF0。TL0可以用來對T0腳上的1到0跳變計數(shù),由?(TMOD.2).來決定。TH0只能對內(nèi)部時鐘源計數(shù),并使用定時器/數(shù)器1的控制位(TR1和TF1)。當(dāng)需要額外的8位定時器時可以使用模式3。當(dāng)定時器0處于模式3時,定時器1可以通過將其放入或離開模式3的方式來打開或關(guān)閉它。定時器1依然可以工作在模式0、1、2R及??????T1M,和T1LXTM
?9-4.定時器/計數(shù)器0模式2,,C,D獨的控制。每一個定時器支持兩種操作模式:自動重載模式和WM模式。通過O0或O1寄存器的xM來選擇。用戶可以通過x20]選擇預(yù)分頻值。有兩個輸出引腳產(chǎn)生互補的0%占空比周期或WM波2H和AL6A和填合適值到2AH和AL之后,用戶可以設(shè)置TATO)來開始計數(shù)。在TA置位之后,R2AH和2L被加載到內(nèi)部16位計數(shù)器中,并開始向下計數(shù)。當(dāng)計數(shù)器溢出,TAT)由硬件置位為1,并使R2H和RA6TAI.)12TATOT2O1和T2T2O11優(yōu)
16-bitDown
Timer2ATimer2AT2AO1pin077T2AO2077 10-12APWM2H和2R2M0和O用戶可以設(shè)置2AN)來開始M輸出。同時RH加載到內(nèi)部8位計數(shù)器,且計數(shù)器開始向下計數(shù)。在下次計數(shù)到0之前,H重新載入且1回復(fù)邏輯1,一旦數(shù)到0,L被加載,且1取反輸出邏輯的TF2A會置12中斷。在WT2AWMPWM占空比高電平 PWM占空比低電平: PWM周期:
8-bitDown
Timer2AMatch0EventTimer2A
Repeat T2AO1T2AO20
10-22APWMR2AHR2ALR2AHR2ALR2AH在本周期內(nèi)更 R2AL在本周期內(nèi)更TR1A=(定時器1A運行),R2AH導(dǎo)入8位向下計數(shù),T2AO1輸出
向下計數(shù)至0,導(dǎo)入8
T2AO1輸出10-32APWM至0,T2CON2(可位尋址76543210地址: 復(fù)位值:0000位72D中T62C中T52B中T42A中T32D0=定時器2D1=定時器2D注意在自動重載模式,重載寄存器R2DHR2DL僅當(dāng)定時器2D停止(TR2D=0)才可以被寫。如果在TR2D為1時寫R2DH或R2DL,結(jié)果是不可預(yù)知的。22C0=定時器2C1=定時器2C注意在自動重載模式,重載寄存器R2CH和R2CL僅當(dāng)定時器2C停止(TR2C=0)才可以被寫。如果在TR2C為1時寫R2CH或R2CL,結(jié)果是不可預(yù)知的。12B0=定時器2B1=定時器2B注意在自動重載模式,重載寄存器R2BH和R2BL僅當(dāng)定時器2B停止(TR2B=0)才可以被寫。如果在TR2B為1時寫R2BH或R2BL,結(jié)果是不可預(yù)知的。02A0=定時器2A1=定時器2A注意在自動重載模式,重載寄存器R2AH和R2AL僅當(dāng)定時器2A停止(TR2A=0)才可以被寫。如果在TR2A為1時寫R2AH或R2AL,結(jié)果是不可預(yù)知的。T2MOD0276543210地址: 復(fù)位值:0000位72B0=自動重載模式1=PWM模式000=001=010=011=100=101=110=111=30=自動重載模式1=PWM模式000=001=010=011=100=101=110=111=T2MOD1276543210地址: 復(fù)位值:0000位72D0=自動重載模式1=PWM模式000=001=010=011=100=101=110=111=32C0=自動重載模式1=PWM模式000=001=010=011=100=101=110=111=T2OE276543210地址: 復(fù)位值:0000位70=T2DO2輸出禁止1T2DO260=T2DO1輸出禁止1=T2DO150=T2CO2輸出禁止1=T2CO240=T2CO1輸出禁止1=T2CO130=T2BO2輸出禁止1=T2BO220=T2BO1輸出禁止1=T2BO112A0=T2AO2輸出禁止1=T2AO202A0=T2AO1輸出禁止1=T2AO1R2AL–2A76543210地址: 復(fù)位值:0000位2AR2AH2A76543210地址: 復(fù)位值:0000位2AR2BL–定時器2B76543210地址: 復(fù)位值:0000位2BR2BH2B76543210地址: 復(fù)位值:0000位2BR2CL2C76543210地址: 復(fù)位值:0000位2CR2CH2C76543210地址: 復(fù)位值:0000位2CR2DL2D76543210地址: 復(fù)位值:0000位2DR2DH2D76543210地址: 復(fù)位值:0000位2D定時器3是一個補充的16位自動重載上數(shù)定時器。用戶可以通過T3PS[2:0](T3CON[2:0])選擇預(yù)分頻,并填重載值到R3H和R3L寄存器來決定它的溢出速率。用戶可以設(shè)置TR3(T3CON.3)來開始計數(shù)。當(dāng)計數(shù)跨過FFFFH,TF3(T3CON.4)置為1,且R3H和R3L寄存器的內(nèi)容重載到內(nèi)部16位計數(shù)器。如果ET3(EIE1.1)置為1,定時器3中斷服務(wù)程序被執(zhí)行。當(dāng)進(jìn)入中斷服務(wù)程序,TF3會被硬件自動清零。3也是UART14.5波特率
070707
16-bitUp
Timer3Timer311-13T3CON376543210地址: 復(fù)位值:0000位433303停止13注意重載寄存器R3HR3L僅在定時器3停止(TR30)的時候才可以被寫。如果TR3位1寫,結(jié)果是不可預(yù)知的。3這些位決定定時器3000=001=010=011=100=101=110=111=R3L376543210地址: 復(fù)位值:0000位3R3H376543210地址: 復(fù)位值:0000位3擾設(shè)備進(jìn)入非正常狀態(tài)或掛起,看門狗可以復(fù)位恢復(fù)系統(tǒng)。用于監(jiān)測系統(tǒng)以提高系統(tǒng)可靠性。對于容易受到噪N30](N474工76543210出廠默認(rèn)值1111位WDT該域配置MCU執(zhí)行后,WDT1111WDTWDT0101=WDT使能,作為一個超時復(fù)位定時器,且在空閑或掉電模式會停止運其他=WDT使能,作為一個超時復(fù)位定時器,且在空閑或掉電模式會保持運WTKLCWTWTWDCON看門狗定時器控制(TA保護(hù)76543210地址: 復(fù)位值:見表6–2.SFR定義及復(fù)位位7WDTWDTEN[3:]ONFIG4[7:])全為WD0=WDT禁止1=WDT使能WDT位6WDT寫01=WDT計數(shù)器讀0=WDT1=WDT計數(shù)器還沒有清零5WDT該位表示W(wǎng)DT計數(shù)器的溢出。該標(biāo)志應(yīng)該通過軟件清零。4WDTWDTEN[3:]ONFIG4[7:])全為WD0=WDT1=WDT在空閑或掉電模式下保持工作3WDTWDT這些位決定了WDT時鐘的預(yù)分頻,從1/11/256。見12–1.在不同分頻下的看門狗超時間隔。默認(rèn)是最大分頻值。WDTRF在上電復(fù)位之后會被清零,在WDTWDPS[2:0]1
×clockdividerscalar×64決定 FLIRC是內(nèi)部震蕩10kHz的頻率。下表所示不同12–1.(FLIRC~=100006.4000125.6001051.20011102.40100204.80101409.60110819.201111.638當(dāng)CONFIG位WDTEN[3:0](CONFIG4[7:4])不是FH,,WDT是初始化為一個超時復(fù)位定時器。如果WDTEN[3:0]不是5H,WDT在系統(tǒng)進(jìn)入空閑或掉電模式后允許繼續(xù)運行。注意當(dāng)WDT初始化為超時復(fù)位定時器,WDTR和WIDPD沒有功能。.
WDT WDT12-1.WDTWTW2]WON20])選擇。當(dāng)選擇的超WTWTFW)WTWT(E)A位,WT中斷程序被執(zhí)行。同時一個額外的12個LRC時鐘延時用于計數(shù)器的清零來避免系統(tǒng)被WT復(fù)位。如果在這52個時鐘內(nèi)沒有寫1WRWTWRWTWTWTWTFWCONWFWON看門狗定時器復(fù)位的主要應(yīng)用是系統(tǒng)監(jiān)測,這對于實時控制很重要,適用于電磁干擾等避免發(fā)生程序跑飛等場設(shè)定WCLR,可使代碼繼續(xù)運行而無看門狗定時器復(fù)位。如果代碼運行在錯誤的狀態(tài)下,無法及時清看門狗定時看門狗定時器的另一個應(yīng)用是用作簡單的定時器。當(dāng)CONFIG位WDTEN[3:0](CONFIG4[7:4])是FH。WDT初始化為通用定時器。在這種模式下WDTR和WIDPD是完全可以通過軟件訪問的。PD
12-2.T通過設(shè)置R為開始運行,通過清零停止。當(dāng)T選擇的時間間隔到后,F(xiàn)標(biāo)志會置位。軟TDT)DD在一些功耗的應(yīng)用中,CU常在沒有處理事件時處于空閑模式或掉電模式,需要定時喚醒察看是否需要響應(yīng),而到mμU應(yīng)N6WT1kP。 ;WDTinterruptservice;clearWDTinterrupt;Start;chooseintervallengthandenableWDTrunning;enableWDT;WDT;EnterPower-down 716有一個專門的自喚醒定時器(WT),它用于低功耗模式下的周期喚醒或通用的定時器。WT保持計數(shù)在空閑或掉電模式。當(dāng)WT用于喚醒定時器,WT要在進(jìn)入掉電之前開啟。WT有兩個時鐘源,RC或XT,由WSW5)位決定。注意系統(tǒng)時鐘頻率必須大于WT時鐘兩倍以上。如果WT開始計數(shù),WTWT1到22]CN2擇。用戶填重載值到K寄存器來決定它的溢出速率。WRWCN)置位開始計數(shù)。當(dāng)計數(shù)器溢出,F(xiàn))置位為1,并重載WK寄存器的值到內(nèi)部8為計數(shù)器。如果WT1)置為1,WT中斷01
8-bitUp0707
WKT13-1.WKCON–76543210地址: 復(fù)位值:0000位5WKT0=1=注意當(dāng)WKT在運行中的時候,該位不能切換。它需要在WKTR設(shè)置為14WKT位3WKT0=WKT停止1=WKT注意重載寄存器RWK僅在WKT停止(WKTR0).的時候可以寫入。否則結(jié)果是不WKTWKT時鐘的預(yù)分頻000=001=010=011=100=101=110=111=RWK–76543210地址: 復(fù)位值:0000位WKT用以存儲WKT的8位重載值。注意如果預(yù)分頻是1/1,RWK限制不能是FFH66有兩個具備地址自動識別和幀錯功能的全雙工串口。兩個串口的功能是一樣的,為了區(qū)分兩個串口控01,2,和3BF。對F寫入數(shù)據(jù)用于發(fā)送,接收數(shù)據(jù)也從寄存器SF中讀取。串口共有4種模式,任何一種模式都由F發(fā)起指令。注意,在使用串口功能前,串口所用管腳.1及.2XD及TX)或者6及P71及TX_)。SCON(可位尋址76543210地址: 復(fù)位值:0000位7SMOD0(PCON.6)=14–1SMOD0(PCON.6)=SM0/FE幀錯,軟件清0=無幀錯1=檢測到幀錯65此位功能依賴串口0模式此位選擇波特律是FSYS/120=FSYS/12標(biāo)準(zhǔn)8051兼容模式1模式0=1=只有接收到有效停止位,并且地址匹配時(包括廣播地址),才接收數(shù)據(jù)模式2多機通信功能0=無論第9位是0是11=只有第9位是1,且地址匹配時才接收(包括廣播地址40=串口0禁接收1=工作模式為1,2,3時,使能接收.工作模式為0時,在條件REN=1RI=0時接位3發(fā)送的第9串口0在模式2,3時,此位是發(fā)送的第9位,模式0,1不用此位2收到的第9串口0模式2,3時,此位是收到的第9位。模式1時,RB8是停止位電平。模式0不用10S2。00此位。2。SCON_1串口1控制寄存器(可位尋址76543210地址: 復(fù)位值:0000位7串口16SMOD0_1(T3CON.6)=SMOD0_1(T3CON.6)=SM0_1/FE_1幀錯,軟件清0=無幀錯1=檢測到幀錯5此位功能依賴串口0模式模式0=1=只有接收到有效停止位,并且地址匹配時(包括廣播地址),才接收數(shù)據(jù)模式2多機通信功能0=無論第9位是0是11=只有第9位是1,且地址匹配時才接收(包括廣播地址40=接收禁止1=串口1,對于模式1,2,3來說是接收使能。對于模式0REN_1=1RI_1=3發(fā)送的第9串口1模式2,3發(fā)送的第9位,模式0,1不用此位2收到的第9串口0模式2,3時,此位是收到的第9位。模式1時,RB8是停止位電平。SM2_11。002被限.PCON–76543210--地址: 復(fù)位值:見表6–2.SFR定義及復(fù)位位7串口0模式2,或模式1,311,波特律加倍。詳見表14–1..60=SCON.7SM0位1=SCON.7FE位T3CON376543210地址: 復(fù)位值:0000位7串口1在模式2時,此位置114–260=SCON_1.7SM0_1位1=SCON_1.7FE_1位14–1.串口000081011/定時器332或210311定時器1/定時器332orSM2(SCON.5)=1時SMOD(PCON.7)=1時14–2.串口10008101定時器3210311定時器3SM2_1(SCON_1.5)1時SMOD_1(T3CON.7)1時SBUF–串口076543210地址: 復(fù)位值:0000位串口0串口0接收或發(fā)送的數(shù)據(jù)都放在這個寄存器中。實際上該地址上有2個獨立的8位寄存器。一個用于接收數(shù)據(jù),一個用于發(fā)送數(shù)據(jù)。對它進(jìn)行讀操作將會接收串行.每次向SBUF寫入一字節(jié)數(shù)據(jù),啟動一次發(fā)送SBUF_1–串口176543210地址: 復(fù)位值:0000位串口1串口1接收或發(fā)送的數(shù)據(jù)都放在這個寄存器中。實際上該地址上有2個獨立的8位寄存器。一個用于接收數(shù)據(jù),一個用于發(fā)送數(shù)據(jù)。對它進(jìn)行讀操作將會接收串行數(shù)據(jù),對它進(jìn)行寫操作則發(fā)送串行數(shù)據(jù).模式0與外部設(shè)備進(jìn)行同步通信的方式。在該模式下,串行數(shù)據(jù)由RXD腳進(jìn)行收發(fā),而TXD腳用于產(chǎn)生移位時FSYS/12(SM2(SCON.5)0)或FSYS/2(SM21)..0為14-1顯示串口模式0傳輸時序圖14-1.0如圖所示,數(shù)據(jù)由雙向RXD線進(jìn)行收發(fā)。位移時鐘TXD/發(fā)送數(shù)據(jù)。數(shù)據(jù)最低位用于移入移出數(shù)據(jù),波特率根據(jù)TXD向UFXD8TI(O.)置1RNS=1且=0數(shù)據(jù)。外部設(shè)備要在移位時鐘的下降沿處送出數(shù)據(jù)。這個過程持續(xù)到8位數(shù)據(jù)全部發(fā)送完畢。RI會在TD的最后一個下降沿處置1,這時接收動作結(jié)束,注N不由硬件清零,用戶應(yīng)該首先清零I,清N,并再次通過軟件R模式1為全雙工異步的方式工作。串行通信的數(shù)據(jù)貞由0位數(shù)據(jù)組成,在DD腳上進(jìn)行收發(fā)。0位數(shù)據(jù)組(位,))1D(CN7)(1圖42.向F寫入指令開始傳輸,傳輸發(fā)生在TD引腳上。首先是開始位,隨后是8位數(shù)據(jù)位,最后是停止位,停止TO11當(dāng)波特率發(fā)生器打開且REN(SCON.4)=1時系統(tǒng)進(jìn)行接收操作,RXD腳上接收到1-0跳變就啟動接收器接收。數(shù)RI(SCON.0)= SM2(SCON.5)=0,或者SM2=1時,收到的數(shù)據(jù)與配置的從機地址或廣播地址一致且收到停止位為1.(詳見章節(jié)14.7多機通信和章節(jié)14.8地址自動識別)從上條件若滿足,就把收到的數(shù)據(jù)存入SBUF,停止位電平寫入RB8(SCON.2),并且RI置1。若不不滿足,數(shù)據(jù)不寫入SBUF,RI保持0。接下來再次檢測RXD的下降沿跳變,準(zhǔn)備下一次接收。,1)在前),第位數(shù)據(jù)(8)和停止位組成。第98。波特率2314-32和3寫SBUF開始發(fā)送,數(shù)據(jù)從TXD輸出。先輸出起始位,再出8位數(shù)據(jù),接下來是TB8,然后是停止位。最后TI置1RN置:RI(SCON.0)= SM2(SCON.5)=0SM2=1時收到第九位為1并且地址匹配.(14.714.8地)若以上條件滿足,收到的數(shù)據(jù)寫入SBUF,第9RB8(SCON.2并且置1RI。若條件不滿足丟棄數(shù)據(jù),模式3與模式2相同,只是模式3使用定時器114-在模式1或模式3,串口0的波特率時鐘源可通過BRCK(T3CON.5)選擇定時器1或定時器3。對于串口1,只有采T3CON–定時器376543210地址: 復(fù)位值:0000位5串口00=定時器1=定時器111(3314–3UART0FSYS/12orFSYS/22FSYS/64orFSYS/32 1僅供 ) 12×256- 256- 1 )16Pre-scale×65536-SM2(SCON.5)SM2_1(SCON_1.5)設(shè)為SMOD(PCON.7)SMOD_1(T3CON.7)定時器1配置為定時方式自動重裝載模式(模式T1M(CKCON.4SMOD1TH1{RH3,RL3}=256×RH3RL3.當(dāng)SMOD11/1,{RH3,RL3}表14–4列舉了由定時器1產(chǎn)生的常用波特率。此種方式定時器1配成重裝載模式:SMOD(PCON.7)=0且T1M(CKCON.4014–5列舉了串口0用定時器3產(chǎn)生波特率的值.SMOD=0。對于串口1來說,相同的值,14–4.定時器1TH114–5.定時器348{R3H,R3L},FESCON.7。正常情況下此位為SM0。當(dāng)使能了幀錯功能SMOD0PCON.6)=1,SM0FE通信若出現(xiàn)幀錯,F(xiàn)E將被置1,后續(xù)數(shù)據(jù)無幀錯FE位不會回零,一旦出現(xiàn)幀錯FE置1FE位必須軟件清0。注意,讀寫FE,SMOD0必須是置1的。66的串口模式2或3可以在一主多從的系統(tǒng)中發(fā)送多幀數(shù)據(jù)給一從機,且不打擾其它從機。使用這個功能2CN)=1(9)2t=1主機給某一從機發(fā)數(shù)據(jù)時,先發(fā)一個地址字節(jié)——地址字節(jié)第9位是1,數(shù)據(jù)字節(jié)第9位是0。地址字節(jié)會讓所有的從機都中斷并檢查是否與自己的從機地址一致,若一致就讓S2=0并準(zhǔn)備接收后續(xù)字節(jié)。地址不一致的從機M2多機通信流程如下SM2主機發(fā)送時序為后續(xù)字節(jié)數(shù)據(jù)(第9位=0).9位為1=0,地址匹配的從機,接收完數(shù)據(jù)后,再讓SM2=10通信,SM2無效。模式1SM2=1能可以節(jié)省軟件識別地址而所占用的程序空間,僅當(dāng)串口識別到自身地址時,接收器置位I(S1使用自動地址識別,允許一個主機選擇與一個或多個從機通信,通過“Ge”從機地址.所有從機可以通過“廣播”DN。ND.DNRv”地址。使用SADDR–從機地址76543210地址: 復(fù)位值:0000位從機地址多機通訊時用作存儲串口0SADEN–從機地址掩碼76543210地址: 復(fù)位值:0000位從機地址0將該寄存器各位與從機地址0做與運算。這個寄存器為0SADDR_1–從機地址76543210地址: 復(fù)位值:0000位從機地址多機通訊時用作存儲串口1SADEN_1–從機地址176543210地址: 復(fù)位值:0000位從機地址1與從機地址1做與運算,這個寄存器為0對應(yīng)的地址位,被忽略。SADDR=11000000bSADEN=Given=從機地址=11000000b掩碼=11111110b結(jié)果=1100000Xb上面例子SADDR相同,SADEN不同,形成不同地址匹配。從機0忽略地址位1,從機1忽略地址位0。發(fā)往地址11000010的數(shù)據(jù)從機0會接收,從機1拒絕。發(fā)往地址11000001的數(shù)據(jù)從機0拒絕而從機1接收。發(fā)往地址從機e0:SADDR=11000000bSADEN=Given=SADDR=11100000bSADEN=Given=SADDR=11000000bSADEN=Given=上面例子,地址低三位區(qū)分不同匹配。從機0擁有唯一地址11100110b1擁有唯一地址11100101b機2擁有唯一地址11100011b。若把數(shù)據(jù)發(fā)給從機0,1排除從機2,就發(fā)往地址11100100b。SADDRSADEN的或運算求得,結(jié)果為0 = =Broadcast=采用”無關(guān)位”(don’tcarebit)可以使得廣播地址呼叫更靈活,在通常狀態(tài)下,全部定義為“無關(guān)位”即可,所以廣播地址一般定義為FFH.,DR和DNHvnb全部ta”s)。這樣可以確保串口響應(yīng)全部地址,同時也與標(biāo)準(zhǔn)傳統(tǒng)81微處理器相同,不支持自動地址識I2C IC總線在MCUEEPROM,LCD模塊,溫度傳感器等等之間,提供了一種串行通信方式。IC用兩條線(據(jù)線SDASCL2IC機之間的總線仲載傳輸,同步時鐘SCL的存在,允許設(shè)備間多種不同波特率的數(shù)據(jù)傳輸。2主發(fā),主收,從發(fā),從收。IC總線僅支持7位地址。支持廣播呼叫,支持標(biāo)準(zhǔn)速率傳輸(100kbps)(400kbps)2對于雙向傳輸操作,SDA及SCL引腳必須配置成開漏配置,形成邏輯線與功能:IC總線上有一個節(jié)點輸出總線上就是0電平,只有所有節(jié)點全輸出1,總線上才是高電平,即通過外接上拉電阻把電平拉高。N76E616,在設(shè)置I2CEN(I2CON.6)使能I2C功能之前,必須把P2.3及P2.4的輸出鎖存在邏輯1的狀態(tài)。215-1.IC2IC空閑時,兩條線都為高。這時任一設(shè)備都可以做為主機發(fā)個起始位START開始數(shù)據(jù)傳輸,在停止位出現(xiàn)之前,總線被認(rèn)為處于忙狀態(tài)。主機產(chǎn)生時鐘以及起始位和停止位。如果總線上沒有START起始信號,則所有總線設(shè)備被認(rèn)為未被尋址從機,硬件自動匹配自己的從機地址或廣播呼叫地址,(廣播地址可由GCC總線上傳輸?shù)拿總€字節(jié)都包含8個數(shù)據(jù)位和一個應(yīng)答位,共9位。但每次傳輸?shù)淖止?jié)個數(shù)沒有明確界定(起始位TTTO)。L由A腳輸出數(shù)據(jù),并轉(zhuǎn)為輸入模式以讀取檢測第9位應(yīng)答位。在第9個時鐘脈沖后,數(shù)據(jù)接收端若沒準(zhǔn)備好接C
215-2.ICBus
2IC總線時序定義了起始START(S)和結(jié)束STOP(P)的條件。時鐘SCL為高時,數(shù)據(jù)線SDA2到監(jiān)聽總線起始位狀態(tài),之前被呼叫從機也轉(zhuǎn)為未尋址從機。 C總線進(jìn)入空閑狀態(tài)等待下一個起始START主機若發(fā)出停止位STOP,傳輸就停止了,然而,這個主機可以不發(fā)停止位,而是再次發(fā)出起始START(Sr) 15-3.起始(START)信號,重復(fù)起始信號以及停止(STOP)TT,SL+8(RW寫入或讀出數(shù)據(jù)。若第8位是0,即AR,表示下個字節(jié)開始主機向從機寫數(shù)據(jù);若是1,即LW,就表示TT+SWR或多個字節(jié)數(shù)據(jù),最后是停止位TP。當(dāng)?shù)谝蛔止?jié)已定義讀寫方向,隨后的8位數(shù)據(jù)就跟隨之前的設(shè)定進(jìn)行傳I2C總線還有一種特殊尋址方式,廣播呼叫尋址。在該模式下,發(fā)送的首字節(jié)數(shù)據(jù)為0這個從機就收發(fā)后續(xù)數(shù)據(jù),和標(biāo)準(zhǔn)主從收發(fā)方式相同。注意:地址0x002從機地址。因此理論上,總共7位地址IC總線,共可以連接127個設(shè)備,地址由1至1271-1- 1-1- ADDRESS 215-4IC在數(shù)據(jù)傳輸過程中,在時鐘高電平時,DA需要保持?jǐn)?shù)據(jù)內(nèi)容不能更改。只有在SL為低時,DA變。應(yīng)答第(C)DA(是從機)回應(yīng)發(fā)送端(無論主機或從機)所用。應(yīng)答位時鐘由主機產(chǎn)生,發(fā)送端設(shè)備在應(yīng)答位時鐘高電平周期內(nèi),需放棄對DA的控制。K為一個低電平信號。在這個時鐘周期的高電平時,A保持低電平用以表示接若從機接收應(yīng)答從機地址后,將自身切換到未定址從機模式,從而無法接收更多數(shù)據(jù)字節(jié),并將OrpdRTOP。SDAOutputBySDAOutputBySCLFrom
SDA=0,AcknowledgeSDA=1,NotAcknowledge ClockPulseFor15-5.TT裁。在該狀態(tài)下,當(dāng)CL為高時,A上呈現(xiàn)仲裁信號。在仲裁過程中,第一發(fā)起主機對A線置1(高電平)而另一個主機發(fā)送0(低電平),發(fā)送后主機會對A線上信號與自己發(fā)出的信號進(jìn)行比較,由于“線與”的原因,時鐘SL為高時,發(fā)送0的主機會成功,而發(fā)送1仲裁機制讓每個主機發(fā)送數(shù)據(jù)時,都會同時比較總線上的數(shù)據(jù)是否與自己發(fā)送的一致。注:如果其它主機發(fā)送0,Master1losesarbitrationforDATA1≠SDA.ItimmediatelyswitchestoMaster1losesarbitrationforDATA1≠SDA.Itimmediatelyswitchestonotaddressedslaveandoutputshighlevel.DATA2FromMasterSDASCL2
15-615-7ICI2C共有五個控制寄存器:I2CON,I2STAT,I2DAT,I2ADDR,和I2CLK.這些寄存器用以提供協(xié)議控制,狀態(tài)顯2I2CONIC(可位尋址76543210地址: 復(fù)位值:0000位7-62IC20=IC禁止21=IC使能2IC之前,P2.3P0.6必須配置為輸出5起始標(biāo)志 當(dāng)STA置1,如果總線空閑,IC產(chǎn)生START信號,如果總線忙,IC等待停止條件2如果總線已經(jīng)在總線模式且已發(fā)送一個或多個字節(jié),此時再設(shè)定STA,IC產(chǎn)生重復(fù)開始信號repeated4停止標(biāo)志2IC總線在主機模式下設(shè)定STO為1,將會向總線發(fā)送停止信號STOP停止條件完成,STO由硬件自動清0當(dāng)總線上產(chǎn)生錯誤狀態(tài)(I2STAT00H)STO也會置1。這種情況下總線不會發(fā)送2如果STA和STO同時置1,且在主機模式下,IC總線在發(fā)送STARTSTOP。如果在從機模式下,應(yīng)避免STA及STO同時置132IC2IC所有26種狀態(tài)中出現(xiàn)一種,硬件就會置1(F8H除外)SI后,I2若AA=1,接收數(shù)據(jù)時,會在第9位發(fā)出應(yīng)答ACK若A=0AK),第AI0,中A01特殊情況:注意:從機發(fā)送時,狀態(tài)碼若為C8H,從機發(fā)送最后一個字節(jié)之前,讓AA=0,發(fā)送完最后一個字節(jié),不再回應(yīng)答,傳輸結(jié)束。主機若再從總線上讀數(shù)-2I2STAT–IC76543210000RRRR地址: 復(fù)位值:1111位2IC高5位為狀態(tài)碼,共有27I2STATF8H時,表示空閑,SI將保持為0。02I2DAT–IC76543210地址: 復(fù)位值:0000位2IC該寄存器存放準(zhǔn)備發(fā)送的,或接收到的數(shù)據(jù)。只要SI=12I2ADDR–IC76543210地址: 復(fù)位值:0000位2IC主機模式從機模式存放7位從機地址。主機需要定址該從機需在START之后寫入該值。如果AA]6從機模式0=1=如果AA置1,參與廣播呼叫模式,若AA清02I2CLK–IC76543210地址: 復(fù)位值:0000位2IC時鐘設(shè)定2該寄存器設(shè)定作主機時IC4×(I2CLK+1)400kbps(24MHz)。注I2CLK值寫入00H01H從機模式該字節(jié)無效,從機自動跟隨主機時鐘,最高400kI2C主機發(fā)送多個字節(jié)到從機,主機產(chǎn)生時鐘,故需要在I2CLK內(nèi)填入設(shè)定值。主機發(fā)送模式需要將STA(I2CON.5)置1。此時,一旦檢測到總線空閑,主機就會發(fā)出一個起始位START,若成功,SI(I2CON.3)將被置1,狀態(tài)碼I2STAT置為08H。接下來應(yīng)把從機地址和寫位(SLA+W)寫入I2DAT,然后清0位SI,總線上發(fā)出SLA+W。主機發(fā)出SLA+W收到從機應(yīng)答位ACK后,SI被置1,狀態(tài)碼I2STAT=18H。接下來將按照用戶定義格式發(fā)送數(shù)據(jù)。所有的數(shù)據(jù)發(fā)送完以后,位STO(I2CON.4)置1,并清0SI位以發(fā)出停止信號STOP,或者也可以發(fā)送重復(fù)起始信號repeatSTART,而不發(fā)送STOP,直接開始新一輪數(shù)據(jù)傳輸。tomaster15-8.主機接收模式,由從機接收數(shù)據(jù)。初始化設(shè)置與主機發(fā)送模式相同,主機發(fā)送起始位以后,I2DAT應(yīng)寫入從機地址和“讀位”(SLA+R)。收到從機應(yīng)答位ACK后SI被置1且狀態(tài)碼I2STAT=40H。SI清0后開始接收從機數(shù)據(jù),若AA位(I2CON.2)=1,主機收到數(shù)據(jù)后回應(yīng)答位;若AA=0主機收到數(shù)據(jù)后不回應(yīng)答NACK。然后主機可tomaster15-9.RC置()當(dāng)從機被“寫”信號L+W尋址到后,需要清0I位,以便從主機接收數(shù)據(jù)。如果在傳輸過程中0,從機將在下一字節(jié)返回?zé)o應(yīng)答位K,從機也將轉(zhuǎn)為未定址從機,與主機聯(lián)系終止,不再接收數(shù)據(jù),且I2DT保持之(STA,STO,SI,AA)(STA,STO,SI,AA)=ACKwillbe
DatabytewillbereceivedNACKwillbeACKhasbeentransmittedI2DAT=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 代理裝修設(shè)計合同范本
- vr全景制作合同范本
- 光熱分包合同范本
- 運動休閑服裝項目可行性研究報告
- 2025年度建設(shè)工程交易服務(wù)中心建筑拆除工程合同
- 分期貨款合同范例
- 勞務(wù)及銷售合同范本
- 乙方包工合同范例
- 2025年度野生菌類采集與保護(hù)利用合同
- 保護(hù)乙方施工合同范例
- 2023電力行業(yè)無人機技術(shù)規(guī)范
- 鋁冶煉生產(chǎn)技術(shù)指標(biāo)元數(shù)據(jù)規(guī)范
- 家庭教育指導(dǎo)委員會章程
- 高三一本“臨界生”動員會課件
- 浙江省2023年中考科學(xué)真題全套匯編【含答案】
- 《公益性公墓管理章程》-
- C++面向?qū)ο蟪绦蛟O(shè)計雙語教程(第3版)課件全套 ch01Introduction-ch08Templates
- 小說標(biāo)題作用探究省名師優(yōu)質(zhì)課賽課獲獎?wù)n件市賽課一等獎?wù)n件
- dk膠原蛋白培訓(xùn)課件
- 短視頻拍攝時間計劃表
- 動物檢疫技術(shù)-動物檢疫處理(動物防疫與檢疫技術(shù))
評論
0/150
提交評論