飛思卡爾16位單片機寄放器總結_第1頁
飛思卡爾16位單片機寄放器總結_第2頁
飛思卡爾16位單片機寄放器總結_第3頁
飛思卡爾16位單片機寄放器總結_第4頁
飛思卡爾16位單片機寄放器總結_第5頁
已閱讀5頁,還剩7頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

本文格式為Word版,下載可任意編輯——飛思卡爾16位單片機寄放器總結一、輸入輸出端口寄放器

I/O接口包括PORTA、B、E、K、T、S、M、P、H、J、AD。其中PORTA、B、E、K屬于復用擴展總線接口,單片機在擴展方式下工作時,作為總線信號。1、PORTT、S、M、P、H、JI/O寄放器PTx

假使對應位數據方向寄放器DDRx為“0〞,輸入,讀取該寄放器返回引腳值;“1〞,輸出,讀取該寄放器返回I/O寄放器的內容。數據方向寄放器DDRx

決定對應引腳為輸出還是輸入,“0〞為輸入,“1〞為輸出,復位后,默認為輸入。上拉/下拉使能寄放器PERx選擇使用內置上拉/下拉器件,“1〞允許,“0〞禁用。中斷使能寄放器PIEx

PORTP、H、J三個端口具有中斷功能。“1〞對應引腳允許中斷,“0〞阻止,復位后,所有端口中斷關閉。

中斷標志寄放器PIFx

PORTP、H、J三個端口具有中斷功能。“1〞對應引腳允許中斷,“0〞阻止,復位后,所有端口中斷關閉。

2、PORTA、B、E、KI/O寄放器Px

若某端口的引腳被定義為輸出,寫入I/O寄放器中的數值會從對應引腳輸出;輸入,通過I/O寄放器讀取對應引腳電平。數據方向寄放器DDRx

決定對應引腳為輸出還是輸入,“0〞為輸入,“1〞為輸出,復位后,默認為輸入。PORTE最低兩位只能為輸入。上拉電阻控制寄放器PERx

第7、4、1、0位分別控制K、E、B、A端口,“1〞允許使用對應端口的上拉電阻,“0〞阻止,復位后,PK、PE端口使能,PB、PA阻止。二、中斷系統

中斷控制寄放器INTCR

第7位IRQE,中斷電平/邊沿有效選擇,0為低電平有效,1為下降沿有效;第6位IRQEN,外部中斷IRQ中斷請求使能,0關閉,1允許。三、PWM模塊

PWM允許寄放器PWME

對應每一位PWMEx,1啟動輸出,0中止輸出,讀寫任意時刻。PWM預分頻時鐘選擇寄放器PWMPRCLK

為ClockA和B選擇獨立的預分頻因子,讀寫任意時刻。

ClockB對應6、5、4三位,ClockA對應2、1、0三位,分別可以實現2、4、8、16、32、64、128分頻。

PWM比例因子寄放器A、B,PWMSCLA、PWMSCLBClockSA=ClockA/(2*PWMSCLA)=$00時,默認值為256

PWM時鐘選擇寄放器PWMCLK

對應每一位是PCLKx,7、6、3、2通道:1選擇ClockSB,0選擇ClockB,5、4、1、0通道:1選擇ClockSA,0選擇ClockA。讀寫任意時刻。

PWM通道周期寄放器PWMPERx

寄放器中的數值改變后,并不馬上生效,直到:當前有效周期終止;

寫計數寄放器(計數器復位到$00);通道被阻止。

左對齊方式輸出:PWMx周期=通道時鐘周期*PWMPERx居中對齊方式輸出:PWMx周期=通道時鐘周期*PWMERx*2PWM通道占空比寄放器PWMDTYx

寄放器中的數值改變后,并不馬上生效,直到:當前有效周期終止;

寫計數寄放器(計數器復位到$00);通道被阻止。

極性為0時,占空比=(PWMPERx—PWMDTYx)/PWMPERx*100%極性為1時,占空比=PWMDTYx/PWMPERx*100%PWM極性寄放器PWMPOL對應每一位是PPOLx,“1〞,周期開始輸出高電平,“0〞,周期開始輸出低電平,讀寫任意時刻。

PWM居中對齊允許寄放器PWMCAE對應每一位CAEx,,1中心對齊,0左對齊。

僅當相應的通道被阻止輸出時,才可以設置該寄放器。PWM控制寄放器PWMCTL,bit7~bit2讀寫任意時刻CON67,“1〞通道6、7聯,通道6為高8位,通道7輸出引腳作為16位PWM的輸出,通道6的相應寄放器控制位無效;CON45,“1〞通道4、5聯,通道4為高8位,通道5輸出引腳作為16位PWM的輸出,通道4的相應寄放器控制位無效;CON23,“1〞通道2、3聯,通道2為高8位,通道3輸出引腳作為16位PWM的輸出,通道2的相應寄放器控制位無效;CON01,“1〞通道0、1聯,通道0為高8位,通道1輸出引腳作為16位PWM的輸出,通道0的相應寄放器控制位無效;PWM通道計數寄放器PWMCNTx讀寫任意時刻

四、A/D轉換模塊(標明ATD0還是ATD1)ATD控制寄放器2,ATDCTL2

中止當前A/D轉換序列,但不會啟動新的A/D轉換序列。從高位到低位:

ADPU:控制ATD電源開關,1開啟,0關閉;

AFFC:ATD模塊標志快速清除位,1表示對結果寄放器的訪問將自動清除相應CCF標志位,0表示在訪問結果寄放器之前讀取狀態寄放器1(ATDSTAT1),可以正常清除相應CCF標志位;AWAI:等待模式下ATD電源開關控制位,1表示單片機處于等待模式,A/D轉換中止并關閉ATD電源,0表示單片機處于等待模式,A/D轉換繼續進行;ETRIGLE:外部觸發電平/邊沿控制位,和ETRIGP協同使用;

ETRIGP:外部觸發極性控制位,00下降沿,01上升沿,10低電平,11高電平;

ETRIGE:外部觸發模式使能位,1表示允許ATD通道7引腳的外部觸發,允許在外部觸發信

號到來同時進行采樣和轉換,0阻止外部觸發;

ASCIE:ATD轉換序列完成中斷標志使能位,1表示當標志位ASCIF=1時,允許ATD序列轉換完成后引發中斷,0表示阻止中斷;

ASCIF:ATD轉換序列完成中斷標志,ASCIE=1,ASCIF標志等同于SCF標志,寫入無效,1表示轉換序列完成中斷掛起,0表示沒有ATD中斷發生。ATD控制寄放器3,ATDCTL3

中止當前A/D轉換序列,但不會啟動新的A/D轉換序列。從高位到低位:Bit7=0;

S8C、S4C、S2C、S1C:A/D轉換序列長度定義位,0000~1111對應8、1~7;FIFO:結果寄放器先進先出模式選擇位,1表示先進先出,0表示非先進先出;

FRZ1、FRE0:凍結模式的背景調試使能控制位,00繼續轉換,01未定義,10完成當前轉換然后暫停,11馬上暫停;ATD控制寄放器4,ATDCTL4

中止當前A/D轉換序列,但不會啟動新的A/D轉換序列。從高位到低位:

SRES8:A/D轉換精度選擇位,1表示8位精度,0表示10位精度;

SMP1、SMP0:采樣時間選擇位,A/D采樣時間包括兩個階段:第一階段是2個A/D轉換時鐘周期,采樣后通過放大器存儲到存儲節點,其次階段為了直接把外部模擬信號連接到存儲節點上,實現最終高精度的轉換,這兩位用來選擇其次階段的采樣時間,00~11對應2、4、8、16個A/D轉換時鐘周期;PRS4、PRS3、PRS2、PRS1、PRS0:ATD時鐘預分頻因子選擇位,ATDclock=BusClock/(PRS+1)*0.5,最大ATD轉換時鐘頻率為總線周期的1/2,復位后值為5。ATD控制寄放器5,ATDCTL5

中止當前A/D轉換序列,并啟動新的A/D轉換序列。從高位到低位:

DJM:結果寄放器數據對齊方式選擇位,1表示右對齊,0表示左對齊;

DSGN:結果寄放器數據有無符號選擇位,1表示有符號數,只能左對齊,0表示無符號數;SCAN:連續轉換序列模式選擇位,1表示連續轉換序列模式(掃描模式),0表示單詞轉換序列模式;

MULT:多通道采樣模式選擇位,0表示單通道采樣,通道選擇代碼:ATDCTL5中的CC、CB、CA,1表示多通道采樣,通道數目:ATDCTL3中的S8C、S4C、S2C、S1C;Bit3=0;

CC、CB、CA:模擬量輸入通道選擇代碼位。ATD狀態寄放器0,ATDSTAT0SCF:轉換序列完成標志位,一次轉換序列完成,置位,清零的狀況:手動置1,寫ATDCTL5,AFFC=1;Bit6=0;

ETORF:外部觸發溢出標志位,1表示發生外部觸發溢出錯誤,0表示未發生,清零的狀況:手動置1,寫ATDCTL2、ATDCTL3、ATDCTL4,寫ATDCTL5;

FIFOR:先入先出溢出標志位,置位,清零的狀況:手動置1,啟動一個新的轉換序列(寫ATDCTL5或者外部觸發);Bit3=0;

CC2、CC1、CC0:轉換計數器,只讀。

ATD測試寄放器1,ATDTEST1

Bit0SC:特別通道轉換位,1表示允許,0表示阻止ATD狀態寄放器1,ATDSTAT1,只讀

CCFx:轉換完成標志位,完成轉換序列中的某個A/D轉換時,置位,轉換序列中第1個對應CCF0,轉換結果存放在ATDDR0中;

AFFC=0時,讀取ATDSTAT1寄放器,然后讀取結果寄放器ATDDRx;AFFC=1時,讀取結果寄放器ATDDRx。

ATD輸入使能寄放器ATDDIEN

IENx:控制從模擬輸入引腳(ANx)到PTADx數字寄放器的數字輸入緩沖,1表示允許,0表示阻止,為1時,ANx引腳可以也只可作為普通輸入口使用。端口數據寄放器PORTADPTADx:A/D轉換通道x的數字輸入,IENx=1,讀取該位返回ANx引腳的規律電平值;IENx=0,讀取該位返回1,復位時都為1。.

ATD轉換結果寄放器ATDDRxH/ATDDRxL存放方式:左對齊和右對齊(DJM),有無符號數(DSGN)

10位精度,左對齊方式下,轉換結果10位數據使用高字節的8位和低字節的高2位存放,結果數據最高位存放在高字節的bit7(bit9MSB),最低為存放在低字節的bit6,讀取是可使用雙字節訪問方式;

8位精度,左對齊方式下,轉換結果8位數據使用高字節的8位存放,結果數據最高位存放在高字節的bit7(bit7MSB),讀取時刻只訪問高字節;

10位精度,右對齊方式下,轉換結果10位數據使用高字節的低2位和低字節的8位存放,結果數據最高位存放在高字節的bit1(bit9MSB),最低為存放在低字節的bit0,讀取是可使用雙字節訪問方式;

8位精度,右對齊方式下,轉換結果8位數據使用低字節的8位存放,結果數據最高位存放在高字節的bit7(bit7MSB),讀取時刻只訪問低字節。五、ECT模塊

16位自由運行計數器時鐘源TIMCLK:PCLK,PACLK,PACLK/256,PACLK/65536,PCLK由總線時鐘經過一個7位的預分頻器得到,分頻系數由TSCR2的PR2~PR0決定;脈沖累加器時鐘信號:內部時鐘PACLK=ECLK/64;

模數遞減計數器MDC時鐘源:總線時鐘經過4位預分頻器提供。1、自由運行計數器及定時器基本寄放器定時器系統控制寄放器1,TSCR1

TEN:定時器允許位,1允許,0阻止主定時器;

TSWAI:等待模式下定時器模塊中止位,1阻止,0允許;

TSFRZ:凍結模式下定時器和模數計數器中止位,1阻止,0允許;

TFFCA:快速清除定時器所有標志位,1=TFLG1清除CnF,TFLG2清除TOF,PACN3和PACN2清除PAFLG的PAOVF和PAIF,PACN1和PACN0清除PBFLG的PBOVF;0=定時器普通清除方式;

Bit3~bit0=0。

定時器系統控制寄放器2,TSCR2

TOI:定時器溢出中斷允許位,1允許,0阻止;Bit6~bit4=0;

TCRE:定時器計數器復位允許,1允許(若通道7輸出比較成功,TCNT自動復位到$0000),0阻止;

PR2、PR1、PR0:定時器預分頻器選擇位,000~111分別對應1、2、4、8、16、32、64、128。定時器計數寄放器TCNT

16位主定時器是一個遞增計數器,不停地對時鐘信號TIMCLK進行計數,寄放器TCNT的內容即為計數結果。

主定時器中斷標志寄放器2,TFLG2

TOF:主定時器溢出標志,溢出時1,允許中斷(TOI=1),則引發溢出中斷。Bit6~bit0=0。

2、ECT模塊的輸入捕獲功能及寄放器設置定時器輸入捕獲/輸出比較選擇寄放器TIOS

IOSx:輸入捕獲或輸出比較通道配置位,1用作輸出比較,0用作輸入捕獲。定時器IC/OC寄放器0~7,TC0~TC7

每個IC/OC通道都有一個16位的寄放器。對于IC通道,TCn用于鎖存自由運行定時器/計數器的計數值,對于OC通道,TCn用于存放比較值。定時器輸入捕獲保持寄放器0~3,TC0H~TC3H(16位)

TCnH寄放器被用來鎖存帶緩沖的IC通道的輸入捕獲寄放器TC0~TC3的值。定時器控制寄放器3和4,TCTL3、TCTL4

設置對應通道的輸入捕獲極性,EDGnB、EDGnA這8對控制位:輸入捕獲邊沿控制位:00,捕獲阻止,第n通道的IC功能與輸入引腳斷開,01上升沿捕獲,10下降沿捕獲,11在任何邊沿捕獲;

TCTL4的4對控制位還用來設置8位脈沖累加器PAC0~PAC3;

對于16位脈沖累加器PACB,TCTL4的控制位EDG0B和EDG0A將決定觸發的邊沿。延遲計數器控制寄放器DLYCTBit7~bit2=0;

DLY1、DLY0:延遲計數器選擇位,00阻止延遲(被旁通);01,256個M時鐘周期;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論