<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          51手記之C8051F

          作者: 時(shí)間:2016-11-10 來(lái)源:網(wǎng)絡(luò) 收藏
          使用Silicon Lab的專利CIP-51微控制器內(nèi)核,可以使用標(biāo)準(zhǔn)803x/805x的匯編器和編譯器進(jìn)行軟件開發(fā),CIP-51采用流水線結(jié)構(gòu),與標(biāo)準(zhǔn)的8051結(jié)構(gòu)相比指令執(zhí)行速度有很大的提高,70%的指令的執(zhí)行時(shí)間為1或2個(gè)系統(tǒng)時(shí)鐘周期,只有4條指令的執(zhí)行時(shí)間大于4個(gè)系統(tǒng)時(shí)鐘周期。

          CIP-51共有111條指令。下表列出了指令條數(shù)與執(zhí)行時(shí)所需的系統(tǒng)時(shí)鐘周期數(shù)的關(guān)系。
          器件內(nèi)部包含一個(gè)穩(wěn)壓器(REG0)。當(dāng)被使能時(shí),REG0輸出連到VDD引腳,并可為外部器件提供電源。REG0可以被軟件使能/禁止。
          可在工業(yè)溫度范圍(-45℃到+85℃)內(nèi)用2.7V-5.25V的電壓工作。電源電壓大于3.6V時(shí),必須使用內(nèi)部穩(wěn)壓器。
          包含C2調(diào)試接口,支持FLASH編程和使用安裝在最終應(yīng)用系統(tǒng)中的器件進(jìn)行在系統(tǒng)調(diào)試。
          1.基本特性
          時(shí)鐘源:有1個(gè)可編程內(nèi)部高頻振蕩器、1個(gè)可編程內(nèi)部低頻振蕩器、1個(gè)外部振蕩器驅(qū)動(dòng)電路和1個(gè)4倍時(shí)鐘乘法器。
          高速內(nèi)部振蕩器在出廠時(shí)已經(jīng)被校準(zhǔn)為12MHz±1.5%。時(shí)鐘恢復(fù)電路允許內(nèi)部振蕩器與4倍時(shí)鐘乘法器配合,提供全速方式USB時(shí)鐘源。內(nèi)部振蕩器還被用作低速方式下的USB時(shí)鐘源。器件內(nèi)集成了外部振蕩器驅(qū)動(dòng)電路,允許使用晶體、陶瓷諧振器、電容、RC或外部CMOS時(shí)鐘源產(chǎn)生系統(tǒng)時(shí)鐘。
          系統(tǒng)時(shí)鐘可以被配置為使用內(nèi)部振蕩器、外部振蕩器或時(shí)鐘乘法器輸出二分頻。如果需要,可以在CPU運(yùn)行時(shí)切換系統(tǒng)時(shí)鐘振蕩源。低頻內(nèi)部振蕩器或外部振蕩器在低功耗系統(tǒng)中是非常有用的,它允許MCU從一個(gè)低頻率(節(jié)電)的時(shí)鐘源運(yùn)行,當(dāng)需要時(shí)再周期性地切換到高速時(shí)鐘源。
          使用外部振蕩器時(shí),必須在OSCXCN寄存器中選擇外部振蕩器類型,必須對(duì)所有端口引腳進(jìn)行配置,對(duì)于晶體/陶瓷諧振器、電容或RC方式,應(yīng)將所有端口配置為模擬輸入,對(duì)于CMOS時(shí)鐘方式,應(yīng)將所有端口引腳配置為數(shù)字輸入;對(duì)于外部晶體或陶瓷諧振器,必須在XTAL1和XTAL2引腳之間并接一個(gè)10MΩ的電阻。使用RC、電容或CMOS時(shí)鐘配置,時(shí)鐘源應(yīng)接到XTAL2引腳。
          外部晶體使用步驟:a.使能外部振蕩器;b.等待至少1ms;c.查詢XTLVLD =>‘1’;d.將系統(tǒng)時(shí)鐘切換到外部振蕩器。
          4倍時(shí)鐘乘法器配置:a.通過(guò)向寄存器CLKMUL寫0x00來(lái)復(fù)位時(shí)鐘乘法器;b.用MULSEL位選擇時(shí)鐘乘法器的輸入;c.用MULEN位使能時(shí)鐘乘法器(CLKMUL | = 0x80);d.延時(shí)大于5 μs;e.用MULINIT位初始化時(shí)鐘乘法器(CLKMUL | = 0xC0);f.查詢等待MULRDY =>‘1’。
          當(dāng)使用外部振蕩器作為4倍時(shí)鐘乘法器的輸入時(shí),外部振蕩源必須在乘法器初始化之前被使能并穩(wěn)定運(yùn)行。
          有9個(gè)復(fù)位源:上電復(fù)位電路(POR)、片內(nèi)VDD監(jiān)視器(當(dāng)電源電壓低于VRST時(shí)強(qiáng)制復(fù)位)、USB控制器(USB總線復(fù)位或VBUS狀態(tài)變化)、看門狗定時(shí)器、時(shí)鐘丟失檢測(cè)器、由比較器0提供的電壓檢測(cè)器、軟件強(qiáng)制復(fù)位、外部復(fù)位輸入引腳和FLASH讀/寫錯(cuò)誤保護(hù)電路復(fù)位。除了POR、復(fù)位輸入引腳及FLASH操作錯(cuò)誤這三個(gè)復(fù)位源之外,其他復(fù)位源都可以被軟件禁止。在一次上電復(fù)位之后的MCU初始化期間,WDT可以被永久性使能。
          2.存儲(chǔ)器
          1)程序存儲(chǔ)器
          內(nèi)部有可再編程的FLASH存儲(chǔ)器,用于程序代碼和非易失性數(shù)據(jù)存儲(chǔ)。可以通過(guò)C2接口或由軟件使用MOVX指令對(duì)FLASH存儲(chǔ)器進(jìn)行在系統(tǒng)編程,每次一個(gè)字節(jié)??稍谙到y(tǒng)編程,扇區(qū)大小為512字節(jié)。
          64KB的片內(nèi)FLASH存儲(chǔ)器可用作程序存儲(chǔ)器或可編程數(shù)據(jù)存儲(chǔ)器,實(shí)際使用過(guò)程中需注意,程序默認(rèn)從低地址開始存放,如需使用該空間存放數(shù)據(jù),需避開程序代碼區(qū)。只有未鎖定的FLASH頁(yè)可使用。
          2)數(shù)據(jù)存儲(chǔ)器
          片上256字節(jié)RAM+4KB的XRAM,1KB的USB FIFO也可以被映射到外部數(shù)據(jù)存儲(chǔ)器空間,作為通用數(shù)據(jù)存儲(chǔ)器使用。有用于訪問片外存儲(chǔ)器和存儲(chǔ)器映射器件的外部存儲(chǔ)器接口EMIF。
          3.通用I/O口
          有40/25個(gè)I/O口,均耐5V電壓,大灌電流。每個(gè)端口引腳都可以被配置為模擬輸入或數(shù)字I/O引腳,被選擇為數(shù)字I/O的引腳還可以被配置為推挽或漏極開路輸出。
          數(shù)字交叉開關(guān)允許將內(nèi)部數(shù)字系統(tǒng)資源映射到端口I/O引腳,交叉開關(guān)根據(jù)優(yōu)先權(quán)譯碼表為所選擇的內(nèi)部數(shù)字資源分配I/O引腳。寄存器XBR0、XBR1和XBR2用于選擇內(nèi)部數(shù)字功能。。PnSKIP寄存器允許軟件跳過(guò)那些被用作模擬輸入、特定功能或GPIO的引腳。
          端口I/O初始化包括以下步驟:
          a.用端口輸入方式寄存器(PnMDIN)選擇所有端口引腳的輸入方式(模擬或數(shù)字)。
          b.用端口輸出方式寄存器(PnMDOUT)選擇所有端口引腳的輸出方式(漏極開路或推挽)。
          c.用端口跳過(guò)寄存器(PnSKIP)選擇應(yīng)被交叉開關(guān)跳過(guò)的那些引腳。
          d.將引腳分配給要使用的外設(shè)(XBR0、XBR1、XBR2)。
          e.使能交叉開關(guān)(XBARE = 1)。
          所有端口引腳都必須被配置為模擬或數(shù)字輸入。被用作比較器或ADC輸入的任何引腳都應(yīng)被配置為模擬輸入。為使端口P0、P1、P2和P3工作在標(biāo)準(zhǔn)端口I/O輸出方式,交叉開關(guān)必須被使能。當(dāng)交叉開關(guān)被禁止時(shí),端口輸出驅(qū)動(dòng)器被禁止。端口4總是作為標(biāo)準(zhǔn)GPIO使用。
          未被交叉開關(guān)分配的端口引腳和未被模擬外設(shè)使用的端口引腳都可以作為通用I/O。通過(guò)對(duì)應(yīng)的端口數(shù)據(jù)寄存器訪問端口P3-0,這些寄存器既可以按位尋址也可以按字節(jié)尋址。端口P4(僅C8051F340/1/4/5)使用的SFR只能按字節(jié)尋址。
          4.中斷系統(tǒng)
          支持16個(gè)中斷源,每個(gè)中斷源有兩個(gè)優(yōu)先級(jí)。中斷源在片內(nèi)外設(shè)與外部輸入引腳之間的分配隨器件的不同而變化。
          兩個(gè)外部中斷源/INT0和/INT1可被配置為低電平有效或高電平有效,邊沿觸發(fā)或電平觸發(fā)。IT01CF寄存器中的IN0PL(/INT0極性)和IN1PL(/INT1極性)位用于選擇高電平有效還是低電平有效;TCON中的IT0和IT1用于選擇電平或邊沿觸發(fā)。
          在FLASH寫/擦除操作期間和USB FIFO MOVX訪問期間,CPU暫停執(zhí)行指令。對(duì)于在CPU暫停執(zhí)行指令期間發(fā)生的中斷,中斷服務(wù)響應(yīng)時(shí)間將延長(zhǎng)。
          5.定時(shí)器
          內(nèi)部有4個(gè)16位計(jì)數(shù)器/定時(shí)器:其中兩個(gè)與標(biāo)準(zhǔn)8051中的計(jì)數(shù)器/定時(shí)器兼容,另外兩個(gè)是16位自動(dòng)重裝載定時(shí)器,可用于ADC、SMBus、USB(幀測(cè)量)、低頻振蕩器(周期測(cè)量)或作為通用定時(shí)器使用。這些定時(shí)器可以用于測(cè)量時(shí)間間隔,對(duì)外部事件計(jì)數(shù)或產(chǎn)生周期性的中斷請(qǐng)求。
          定時(shí)器0和定時(shí)器1有5個(gè)可選擇的時(shí)鐘源,定時(shí)器2和定時(shí)器3可以使用系統(tǒng)時(shí)鐘、系統(tǒng)時(shí)鐘/12或外部振蕩器時(shí)鐘/8作為時(shí)鐘源。
          定時(shí)器2,3可以工作在16位自動(dòng)重裝載方式、8位自動(dòng)重裝載方式(兩個(gè)8位定時(shí)器)、USB幀起始(SOF)捕捉方式或低頻振蕩器(LFO)下降沿捕捉方式。當(dāng)T2SPLIT =‘0’且T2SOF =‘0’時(shí),定時(shí)器2工作在自動(dòng)重裝載的16位定時(shí)器方式:
          當(dāng)T2SPLIT =‘1’且T2SOF =‘0’時(shí),定時(shí)器2工作雙8位定時(shí)器方式。兩個(gè)8位定時(shí)器TMR2H和TMR2L都工作在自動(dòng)重裝載方式。TMR2RLL保持TMR2L的重載值,而TMR2RLH保持TMR2H的重載值。TMR2CN中的TR2是TMR2H的運(yùn)行控制位。當(dāng)定時(shí)器2被配置為8位方式時(shí),TMR2L總是處于運(yùn)行狀態(tài)。
          TF2H和TF2L標(biāo)志不能被硬件自動(dòng)清除,必須通過(guò)軟件清除。
          當(dāng)T2CE =‘1’時(shí),定時(shí)器2工作在兩種特殊捕捉方式之一。捕捉事件可以是USB幀起始(SOF)捕捉或低頻振蕩器(LFO)下降沿捕捉,用T2CSS位選擇。
          6.串行口
          2個(gè)全雙工串行口,UART0有2種工作方式:提供標(biāo)準(zhǔn)8051串行口的方式1和方式3。
          UART0具有增強(qiáng)的波特率發(fā)生器電路,有多個(gè)時(shí)鐘源可用于產(chǎn)生標(biāo)準(zhǔn)波特率,接收數(shù)據(jù)緩沖機(jī)制允許UART0在軟件尚未讀取前一個(gè)數(shù)據(jù)字節(jié)的情況下開始接收第二個(gè)輸入數(shù)據(jù)字節(jié)。UART0波特率由定時(shí)器1工作在8位自動(dòng)重裝載方式產(chǎn)生。發(fā)送(TX)時(shí)鐘由TL1產(chǎn)生;接收(RX)時(shí)鐘由TL1的拷貝寄存器(RX定時(shí)器)產(chǎn)生,TX和RX定時(shí)器的溢出信號(hào)經(jīng)過(guò)二分頻后用于產(chǎn)生TX和RX波特率。定時(shí)器1的時(shí)鐘可以在6個(gè)時(shí)鐘源中選擇:SYSCLK、SYSCLK/4、SYSCLK/12、SYSCLK/48、外部振蕩器時(shí)鐘/8和外部輸入T1。
          UART0的波特率=T1clk/(256-T1H)/2
          多機(jī)通訊:所有從機(jī)的RX和TX分別并接到主機(jī)的TX和RX上,從機(jī)的MCE0位(SCON.5)被置‘1’,只有當(dāng)UART接收到的第九位為邏輯‘1’ (RB80=1)并收到有效的停止位后UART才會(huì)產(chǎn)生中斷。當(dāng)主機(jī)要發(fā)送數(shù)據(jù)給一個(gè)或多個(gè)從機(jī)時(shí),它先發(fā)送一個(gè)用于選擇目標(biāo)的地址字節(jié)(地址字節(jié)所有從機(jī)都接收,對(duì)應(yīng)地址的從機(jī)收到該地址后,清MCE0,以便能接收數(shù)據(jù))。地址字節(jié)與數(shù)據(jù)字節(jié)的區(qū)別是:地址字節(jié)的第9位為邏輯‘1’;數(shù)據(jù)字節(jié)的第9位總是設(shè)置為邏輯‘0’。
          UART1包含一個(gè)由16位定時(shí)器和可編程預(yù)分頻器構(gòu)成的專用波特率發(fā)生器,能產(chǎn)生很寬范圍的波特率。UART1數(shù)據(jù)傳輸以起始位(邏輯低電平)開始,其后是數(shù)據(jù)位(LSB在先),數(shù)據(jù)位之后是奇偶位或額外位(如果選擇),最后是一個(gè)或兩個(gè)停止位(邏輯高電平)。數(shù)據(jù)長(zhǎng)度在5 ~ 8位之間。UART1的工作方式設(shè)置與標(biāo)準(zhǔn)51不同。多機(jī)通訊時(shí),額外位與UART0的第9位功能類似。
          UART1的波特率=Fosc/(65536-(SBRLH1:SBRLL1))/2/預(yù)分頻值
          7.增強(qiáng)型串行外設(shè)接口SPI0
          增強(qiáng)型串行外設(shè)接口(SPI0)提供訪問一個(gè)全雙工同步串行總線的能力。SPI0可以作為主器件或從器件工作,可以使用3線或4線方式,并可在同一總線上支持多個(gè)主器件和從器件。
          8.SMBus
          SMBus I/O接口是一個(gè)雙線的雙向串行總線。與I2C串行總線兼容。在作為主或從器件時(shí),數(shù)據(jù)傳輸?shù)淖畲笏俾士蛇_(dá)系統(tǒng)時(shí)鐘頻率的十分之一(這可能比SMBus的規(guī)定速度要快,取決于所使用的系統(tǒng)時(shí)鐘)。可以采用延長(zhǎng)低電平時(shí)間的方法協(xié)調(diào)同一總線上不同速度的器件。。SMBus提供了SDA(串行數(shù)據(jù))控制、SCL(串行時(shí)鐘)產(chǎn)生和同步、仲裁邏輯以及起始/停止的控制和產(chǎn)生電路。
          SCL(串行時(shí)鐘)和SDA(串行數(shù)據(jù))線是雙向的,必須通過(guò)一個(gè)上拉電阻或等效電路將它們連到電源電壓。連接在總線上的每個(gè)器件的SCL和SDA都必須是漏極開路或集電極開路的,因此當(dāng)總線空閑時(shí),這兩條線都被拉到高電平??偩€上的最大器件數(shù)只受規(guī)定的上升和下降時(shí)間的限制,上升和下降時(shí)間分別不能超過(guò)300ns和1000ns。
          所有的數(shù)據(jù)傳輸都由主器件啟動(dòng),可以尋址一個(gè)或多個(gè)目標(biāo)從器件。主器件產(chǎn)生一個(gè)起始條件,然后發(fā)送地址和方向位。
          一個(gè)主器件只能在總線空閑時(shí)啟動(dòng)一次傳輸。在一個(gè)停止條件之后或SCL和SDA保持高電平已經(jīng)超過(guò)了指定時(shí)間,則總線是空閑的。兩個(gè)或多個(gè)主器件可能在同一時(shí)刻啟動(dòng)數(shù)據(jù)傳輸,所以使用仲裁機(jī)制迫使一個(gè)主器件放棄總線。試圖發(fā)送高電平的主器件將檢測(cè)到SDA上的低電平而退出競(jìng)爭(zhēng)。贏得總線的器件繼續(xù)其數(shù)據(jù)傳輸過(guò)程,而未贏得總線的器件成為從器件并在后續(xù)的傳輸中接收數(shù)據(jù)(如果被尋址)。
          每次數(shù)據(jù)字節(jié)或從地址傳輸都產(chǎn)生SMBus中斷。發(fā)送數(shù)據(jù)時(shí)在ACK周期后產(chǎn)生中斷,使軟件能讀取接收到的ACK值;接收數(shù)據(jù)時(shí)在ACK周期之前產(chǎn)生中斷,使軟件能確定要發(fā)出的ACK值。
          SMBus接口可以被配置為工作在主方式和/或從方式。在任一時(shí)刻,它將工作在下述4種方式之一:主發(fā)送器、主接收器、從發(fā)送器或從接收器。
          9.可編程計(jì)數(shù)器陣列(PCA0)
          提供增強(qiáng)的定時(shí)器功能,與標(biāo)準(zhǔn)8051的計(jì)數(shù)器/定時(shí)器相比,它需要較少的CPU干預(yù)。PCA由一個(gè)專用的16位計(jì)數(shù)器/定時(shí)器和5個(gè)16位捕捉/比較模塊組成。每個(gè)捕捉/比較模塊有其自己的I/O線(CEXn),這些I/O線在被允許時(shí)通過(guò)交叉開關(guān)連到端口I/O。
          定時(shí)器的時(shí)基信號(hào)可以在六個(gè)時(shí)鐘源中選擇:系統(tǒng)時(shí)鐘、系統(tǒng)時(shí)鐘/4、系統(tǒng)時(shí)鐘/12、外部振蕩器時(shí)鐘/8、定時(shí)器0溢出或ECI輸入引腳上的外部時(shí)鐘信號(hào)。
          PCA的模塊4可被用作看門狗定時(shí)器(WDT),在系統(tǒng)復(fù)位后即被使能為該方式。在看門狗方式被使能時(shí),對(duì)某些寄存器的訪問受到限制
          1)PCA計(jì)數(shù)器/定時(shí)器
          16位的PCA計(jì)數(shù)器/定時(shí)器由兩個(gè)8位的SFR組成:PCA0L和PCA0H。在讀PCA0L時(shí),“瞬象寄存器”自動(dòng)鎖存PCA0H的值,隨后讀PCA0H時(shí)將訪問這個(gè)“瞬象寄存器”;先讀PCA0L寄存器可以保證正確讀取整個(gè)16位PCA計(jì)數(shù)器的值。
          當(dāng)計(jì)數(shù)器/定時(shí)器溢出時(shí)(從0xFFFF到0x0000),PCA0MD中的計(jì)數(shù)器溢出標(biāo)志(CF)被置為邏輯‘1’并產(chǎn)生一個(gè)中斷請(qǐng)求
          2)捕捉/比較模塊
          每個(gè)模塊都可被配置為獨(dú)立工作,有六種工作方式:邊沿觸發(fā)捕捉、軟件定時(shí)器、高速輸出、頻率輸出、8位脈寬調(diào)制器和16位脈寬調(diào)制器。
          a.邊沿觸發(fā)的捕捉方式
          CEXn輸入信號(hào)必須在高電平或低電平期間至少保持兩個(gè)系統(tǒng)時(shí)鐘周期,以保證能夠被硬件識(shí)別。
          b.軟件定時(shí)器方式
          在該方式,PCA將計(jì)數(shù)器/定時(shí)器的計(jì)數(shù)值與模塊的16位捕捉/比較寄存器(PCA0CPHn和PCA0CPLn)進(jìn)行比較。當(dāng)發(fā)生匹配時(shí),PCA0CN中的捕捉/比較標(biāo)志(CCFn)被置為邏輯‘1’并產(chǎn)生一個(gè)中斷請(qǐng)求;當(dāng)向PCA0的捕捉/比較寄存器寫入一個(gè)16位數(shù)值時(shí),應(yīng)先寫低字節(jié)。
          c.高速輸出方式
          每當(dāng)PCA計(jì)數(shù)器與模塊的16位捕捉/比較寄存器(PCA0CPHn和PCA0CPLn)發(fā)生匹配時(shí),模塊的CEXn引腳上的邏輯電平將發(fā)生變化。當(dāng)向PCA0的捕捉/比較寄存器寫入一個(gè)16位數(shù)值時(shí),應(yīng)先寫低字節(jié)。
          d.頻率輸出方式
          可在模塊的CEXn引腳產(chǎn)生可編程頻率的方波。。捕捉/比較模塊的低字節(jié)與PCA0計(jì)數(shù)器的低字節(jié)比較;兩者匹配時(shí),CEXn的電平發(fā)生改變,
          方波頻率=Fpca/(2*PCA0CPHn),PCA0CPHn中的值為0x00時(shí),相當(dāng)于256。
          e.8位脈寬調(diào)制器方式
          PWM輸出的頻率取決于PCA計(jì)數(shù)器/定時(shí)器的時(shí)基。使用模塊的捕捉/比較寄存器PCA0CPLn改變PWM輸出信號(hào)的占空比。當(dāng)PCA計(jì)數(shù)器/定時(shí)器的低字節(jié)(PCA0L)與PCA0CPLn中的值相等時(shí),CEXn引腳上的輸出被置‘1’;當(dāng)PCA0L中的計(jì)數(shù)值溢出時(shí),CEXn輸出被復(fù)位
          占空比=(256-PCA0CPHn)/256
          f.16位脈寬調(diào)制器方式
          當(dāng)PCA計(jì)數(shù)器與模塊的值匹配時(shí),CEXn的輸出被置為高電平;當(dāng)計(jì)數(shù)器溢出時(shí),CEXn輸出被置為低電平。為了輸出一個(gè)占空比可變的波形,新值的寫入應(yīng)與PCA的CCFn匹配中斷同步。
          占空比=(65536-PCA0CPn)/65536
          3)看門狗定時(shí)器
          通過(guò)PCA的模塊4可以實(shí)現(xiàn)可編程看門狗定時(shí)器(WDT)功能。模塊4高字節(jié)與PCA計(jì)數(shù)器的高字節(jié)比較;模塊4低字節(jié)保持執(zhí)行WDT更新時(shí)要使用的偏移值。在系統(tǒng)復(fù)位后看門狗被使能。在看門狗被使能時(shí),對(duì)某些PCA寄存器的寫操作受到限制。
          如果在WDT被使能時(shí)PCA0CPH4和PCA0H發(fā)生匹配,則系統(tǒng)將被復(fù)位。為了防止WDT復(fù)位,需要通過(guò)寫PCA0CPH4來(lái)更新WDT。在寫PCA0CPH4時(shí),PCA0H的值加上PCA0CPL4中保存的偏移值后被裝入到PCA0CPH4.
          當(dāng)WDT被使能時(shí):
          a.PCA計(jì)數(shù)器被強(qiáng)制運(yùn)行。
          b.不允許寫PCA0L和PCA0H。
          c.PCA時(shí)鐘源選擇位(CPS2-CPS0)被凍結(jié)。
          d.PCA等待控制位(CIDL)被凍結(jié)。
          e.模塊4被強(qiáng)制進(jìn)入看門狗定時(shí)器方式。
          f.對(duì)模塊4方式寄存器(PCA0CPM4)的寫操作被禁止。
          看門狗定時(shí)器偏移值(PCA時(shí)鐘數(shù))=(256*PCA0CPL4)+(256-PCA0L)
          配置WDT的步驟如下:
          a.通過(guò)向WDTE位寫‘0’來(lái)禁止WDT。
          b.選擇PCA時(shí)鐘源(用CPS2-0位)。
          c.向PCA0CPL4裝入所希望的WDT更新偏移值。
          d.配置PCA的空閑方式位(如果希望在CPU處于空閑方式時(shí)WDT停止工作,則應(yīng)將CIDL位置‘1’)。
          e.通過(guò)向WDTE位寫‘1’來(lái)使能WDT。
          f.(選項(xiàng))通過(guò)將WDLCK位置‘1’來(lái)鎖定WDT(防止在下一次系統(tǒng)復(fù)位前禁止WDT)。
          WDT在任何一次系統(tǒng)復(fù)位之后都被設(shè)置為使能狀態(tài)。PCA0計(jì)數(shù)器的缺省時(shí)鐘為系統(tǒng)時(shí)鐘的十二分頻(SYSCLK/12)。當(dāng)WDTE位被置1時(shí),不能改變PCA0MD寄存器的值。若要改變PCA0MD的內(nèi)容,必須先禁止看門狗定時(shí)器。


          關(guān)鍵詞: 51手記C8051

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();