![單片機第5章S12輸入_輸出端口模塊及其應(yīng)用實例_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/6/13153b5b-0eff-4a0e-afa0-7a58af6d364d/13153b5b-0eff-4a0e-afa0-7a58af6d364d1.gif)
![單片機第5章S12輸入_輸出端口模塊及其應(yīng)用實例_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/6/13153b5b-0eff-4a0e-afa0-7a58af6d364d/13153b5b-0eff-4a0e-afa0-7a58af6d364d2.gif)
![單片機第5章S12輸入_輸出端口模塊及其應(yīng)用實例_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/6/13153b5b-0eff-4a0e-afa0-7a58af6d364d/13153b5b-0eff-4a0e-afa0-7a58af6d364d3.gif)
![單片機第5章S12輸入_輸出端口模塊及其應(yīng)用實例_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/6/13153b5b-0eff-4a0e-afa0-7a58af6d364d/13153b5b-0eff-4a0e-afa0-7a58af6d364d4.gif)
![單片機第5章S12輸入_輸出端口模塊及其應(yīng)用實例_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-6/6/13153b5b-0eff-4a0e-afa0-7a58af6d364d/13153b5b-0eff-4a0e-afa0-7a58af6d364d5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)輸出端口模塊及其應(yīng)用實例用實例合肥工業(yè)大學(xué)合肥工業(yè)大學(xué)機械與汽車工程學(xué)院機械與汽車工程學(xué)院滕滕 勤勤2014.42014.4基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例本章內(nèi)容本章內(nèi)容p 5.1 5.1 并行并行I/OI/O接口簡介接口簡介p 5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置p 5.3 5.3 輸入輸入/ /輸出端口基礎(chǔ)應(yīng)用實例輸出端口基礎(chǔ)應(yīng)用實例p 5.4 5.4 智能車系統(tǒng)中輸入智能車
2、系統(tǒng)中輸入/ /輸出端口的應(yīng)用輸出端口的應(yīng)用基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p【I/OI/O接口接口(Input/Output Interface)(Input/Output Interface)】MCUMCU與外界進行交互與外界進行交互的重要通道。的重要通道。p【常見【常見I/OI/O接口】接口】人機交互接口,如開關(guān)、鍵盤、指示燈、顯人機交互接口,如開關(guān)、鍵盤、指示燈、顯示器示器(LED(LED、LCD)LCD)等,或者外接其它輸入、輸出設(shè)備。等,或者
3、外接其它輸入、輸出設(shè)備。pI/OI/O接口電路的主要作用:接口電路的主要作用:(1 1)協(xié)調(diào)高速)協(xié)調(diào)高速CPUCPU與低速外設(shè)之間的速度匹配與低速外設(shè)之間的速度匹配(2 2)提供輸入、輸出過程中的狀態(tài)信號)提供輸入、輸出過程中的狀態(tài)信號基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介【并行【并行I/OI/O接口組成】接口組成】p【端口】【端口】接口電路中用以完成信息傳送、并可通過地址讀接口電路中用以完成信息傳送、并可通過地址讀/ /寫寫的寄存器。的寄存器。p【并行【并
4、行I/OI/O接口】接口】由若干個端口(由若干個端口(PortPort)組成:一個接口在物)組成:一個接口在物理上有若干個端口,即不同的寄存器,規(guī)定這些端口分別是理上有若干個端口,即不同的寄存器,規(guī)定這些端口分別是數(shù)據(jù)口數(shù)據(jù)口、狀態(tài)口狀態(tài)口和和命令口命令口。 p一個接口分配有若干個地址,即每一個端口分配一個地址。一個接口分配有若干個地址,即每一個端口分配一個地址。CPUCPU將不同的信息寫到不同的端口地址,也從不同的端口地址將不同的信息寫到不同的端口地址,也從不同的端口地址讀取不同的信息。讀取不同的信息。 基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及
5、其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介pMC9S12DG128MC9S12DG128單片機的單片機的I/OI/O接口包括接口包括PORTAPORTA、PORTBPORTB、PORTEPORTE、PORTKPORTK、PORTTPORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH、PORTJPORTJ以及以及PORTADPORTAD端口模塊端口模塊。pPORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK屬于屬于復(fù)用擴展總線接口復(fù)用擴展總線接口( (MEBIMEBI)
6、),當(dāng),當(dāng)MC9S12DG128MC9S12DG128在擴展方式下工作時,作為總線信號;在單片模式下工作時,在擴展方式下工作時,作為總線信號;在單片模式下工作時,PORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK可用作通用可用作通用I/OI/O口??凇;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介pPORTTPORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ屬
7、于屬于端口集成模塊端口集成模塊PIMPIM,與片內(nèi),與片內(nèi)其他功能模塊的引腳復(fù)用。其他功能模塊的引腳復(fù)用。p每個功能模塊按照優(yōu)先級的每個功能模塊按照優(yōu)先級的高低使用引腳。高低使用引腳。 基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p【GPIOGPIO簡化功能邏輯圖】簡化功能邏輯圖】僅考慮兩個寄存器:僅考慮兩個寄存器:數(shù)據(jù)寄存器數(shù)據(jù)寄存器PORTPORT和和數(shù)據(jù)方數(shù)據(jù)方向寄存器向寄存器DDRDDR。pRD_DDRRD_DDR和和WR_DDRWR_DDR分別控制各自的三
8、態(tài)雙向門閂電路,該電路具有雙向傳分別控制各自的三態(tài)雙向門閂電路,該電路具有雙向傳輸和高阻三態(tài)功能(圖中只給出了單向傳輸和門控功能),可分別讀取輸和高阻三態(tài)功能(圖中只給出了單向傳輸和門控功能),可分別讀取PORTPORT引腳狀態(tài)、數(shù)據(jù)鎖存器狀態(tài)和方向寄存器引腳狀態(tài)、數(shù)據(jù)鎖存器狀態(tài)和方向寄存器DDRDDR的狀態(tài)。的狀態(tài)。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p9S129S12單片機的每個單片機的每個I/OI/O接口均內(nèi)置拉電阻,可以通過編程設(shè)置是否使用上拉、下接
9、口均內(nèi)置拉電阻,可以通過編程設(shè)置是否使用上拉、下拉功能及其極性。拉功能及其極性。p【拉電阻的主要作用】【拉電阻的主要作用】當(dāng)電路驅(qū)動器關(guān)閉時,保持線路(節(jié)點)為固定電平,提當(dāng)電路驅(qū)動器關(guān)閉時,保持線路(節(jié)點)為固定電平,提高抗干擾能力。高抗干擾能力。標(biāo)準(zhǔn)端口的最小特性:標(biāo)準(zhǔn)端口的最小特性:輸入輸入/ /輸出選擇輸出選擇兩個可選擇驅(qū)動強度的兩個可選擇驅(qū)動強度的5V5V輸出驅(qū)動輸出驅(qū)動5V5V數(shù)字或模擬輸入數(shù)字或模擬輸入可選擇上拉或下拉器件的輸入可選擇上拉或下拉器件的輸入選擇特性:選擇特性:線或連接的開漏輸出線或連接的開漏輸出虛假信號濾波的中斷輸入虛假信號濾波的中斷輸入基于HCS12的嵌入式系統(tǒng)設(shè)
10、計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p通用通用I/OI/O口可以設(shè)置輸入口可以設(shè)置輸入/ /輸出、驅(qū)動能力、內(nèi)部上拉輸出、驅(qū)動能力、內(nèi)部上拉/ /下拉電阻、中斷輸入等功能。下拉電阻、中斷輸入等功能。用戶可以通過設(shè)置用戶可以通過設(shè)置DDRDDR、I/OI/O、RDRRDR、PERPER、PPSPPS和和IEIE等寄存器,選擇等寄存器,選擇I/OI/O口的工作方口的工作方式。其中:式。其中: 方向寄存器方向寄存器DDR DDR 用于設(shè)定用于設(shè)定I/OI/O口的數(shù)據(jù)方向??诘臄?shù)據(jù)方向。 I/
11、OI/O寄存器寄存器 用于設(shè)定端口輸出電平的高低。用于設(shè)定端口輸出電平的高低。 驅(qū)動控制驅(qū)動控制寄存器寄存器RDR RDR 用于選擇用于選擇I/OI/O的輸出驅(qū)動能力。的輸出驅(qū)動能力。 當(dāng)當(dāng)I/OI/O口為輸入時,口為輸入時,上拉上拉/ /下拉使能下拉使能寄存器寄存器PER PER 用于選擇內(nèi)部上拉或下拉功能。用于選擇內(nèi)部上拉或下拉功能。上拉上拉/ /下拉選擇下拉選擇寄存器寄存器PPSPPS有兩個用途:有兩個用途:(1 1)當(dāng)中斷允許位置位時,用于選擇上升沿觸發(fā)或下降沿觸發(fā)中斷。)當(dāng)中斷允許位置位時,用于選擇上升沿觸發(fā)或下降沿觸發(fā)中斷。(2 2)當(dāng)使能內(nèi)部上拉)當(dāng)使能內(nèi)部上拉/ /下拉器件時,
12、用于選擇上拉或下拉。下拉器件時,用于選擇上拉或下拉。中斷使能中斷使能寄存器寄存器IE IE 用于允許或禁止用于允許或禁止I/OI/O口上的中斷??谏系闹袛唷;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例p引腳配置匯總引腳配置匯總 基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPP
13、ORTP、PORTHPORTH和和PORTJPORTJ基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJ
14、PORTJ基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ1 1數(shù)據(jù)方向寄存器數(shù)據(jù)方向寄存器DDRxDDRxp【作用】【作用】決定對應(yīng)的引腳為輸出還是輸入,任何時候可讀寫。決定對應(yīng)的引腳為輸出還是輸入,任何時候可讀寫。vDDRx7:0 DDRx7:0 端口端口x x數(shù)據(jù)方向位數(shù)據(jù)方向位1 = 1 =
15、 對應(yīng)引腳設(shè)置為輸出。對應(yīng)引腳設(shè)置為輸出。0 = 0 = 對應(yīng)引腳設(shè)置為輸入。對應(yīng)引腳設(shè)置為輸入。p復(fù)位后,數(shù)據(jù)方向寄存器值為復(fù)位后,數(shù)據(jù)方向寄存器值為0 x000 x00,引腳默認為輸入。,引腳默認為輸入?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ1數(shù)據(jù)方向寄存器數(shù)據(jù)方向寄存器DDRxDDR
16、xp如果外設(shè)模塊控制引腳,數(shù)據(jù)方向寄存器的內(nèi)容被忽略。如果外設(shè)模塊控制引腳,數(shù)據(jù)方向寄存器的內(nèi)容被忽略?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5章章 S12輸入輸入/輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ2I/OI/O寄存器寄存器PTxPTxp任何時候可讀寫。任何時候可讀寫。p如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對應(yīng)位的數(shù)值為對應(yīng)位的數(shù)值為“1”(1”(輸出輸出) )時,時,I/OI/O寄存器的值與引腳寄存器的值與引腳
17、電平一致:電平一致:PTx =1PTx =1,對應(yīng)的引腳輸出為高電平。,對應(yīng)的引腳輸出為高電平。PTx =0PTx =0,對應(yīng)的引腳輸出為低電平。,對應(yīng)的引腳輸出為低電平。 讀取該寄存器返回讀取該寄存器返回I/OI/O寄存器的內(nèi)容。寄存器的內(nèi)容。p如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對應(yīng)位的數(shù)值為對應(yīng)位的數(shù)值為“0”0”,即將對應(yīng)引腳定義為,即將對應(yīng)引腳定義為輸入輸入時:時:讀取該寄存器返回引腳值。讀取該寄存器返回引腳值。寫該寄存器不改變引腳狀態(tài),但當(dāng)寫該寄存器不改變引腳狀態(tài),但當(dāng)DDRxDDRx對應(yīng)位的數(shù)值變?yōu)閷?yīng)位的數(shù)值變?yōu)椤?”1”時,寄存器中的時,寄存器中的數(shù)值將反映在
18、引腳上。數(shù)值將反映在引腳上?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ3輸入寄存器輸入寄存器PTIxPTIxp輸入寄存器是一個輸入寄存器是一個只讀只讀寄存器。任何時候可讀,寫無效。寄存器。任何時候可讀,寫無效。p如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對應(yīng)位的數(shù)值為對應(yīng)位的數(shù)值為“0”0”,即將對應(yīng)引腳定義為,即將對應(yīng)引腳定義為輸入輸入時,時,讀取該
19、寄存器總是返回引腳值。讀取該寄存器總是返回引腳值。 讀出的值為讀出的值為“0”0”,表示對應(yīng)引腳上為低電平;,表示對應(yīng)引腳上為低電平; 讀出的值為讀出的值為“1”1”,表示對應(yīng)引腳上為高電平。,表示對應(yīng)引腳上為高電平。p如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對應(yīng)位的數(shù)值為對應(yīng)位的數(shù)值為“1”1”,即將對應(yīng)引腳定義為,即將對應(yīng)引腳定義為輸出輸出時,時,利用讀該寄存器可以監(jiān)視對應(yīng)引腳是否過載或短路。如果過載或短路,則該寄存利用讀該寄存器可以監(jiān)視對應(yīng)引腳是否過載或短路。如果過載或短路,則該寄存器對應(yīng)位為器對應(yīng)位為1 1,否則,為,否則,為0 0。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5
20、章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ4 4驅(qū)動控制寄存器驅(qū)動控制寄存器RDRxRDRxp【作用】【作用】定義每個輸出端口引腳的驅(qū)動能力,任何時候可讀寫。定義每個輸出端口引腳的驅(qū)動能力,任何時候可讀寫。vRDRx7:0 RDRx7:0 端口端口x x降功率驅(qū)動控制位降功率驅(qū)動控制位1 = 1 = 對應(yīng)引腳輸出驅(qū)動能力為正常值的對
21、應(yīng)引腳輸出驅(qū)動能力為正常值的1/61/6。0 = 0 = 對應(yīng)引腳為輸出全功率驅(qū)動。對應(yīng)引腳為輸出全功率驅(qū)動。p如果端口用作輸入,該位被忽略。如果端口用作輸入,該位被忽略。p復(fù)位后,復(fù)位后,RDRxRDRx寄存器值為寄存器值為$00$00,引腳默認以滿功率驅(qū)動輸出。,引腳默認以滿功率驅(qū)動輸出?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ5 5上拉上拉/ /下拉使能
22、寄存器下拉使能寄存器PERx PERx p【作用】【作用】如果端口用作輸入或為如果端口用作輸入或為“線或線或”模式時,該寄存器設(shè)置是否激活模式時,該寄存器設(shè)置是否激活內(nèi)置上拉內(nèi)置上拉/ /下拉器件。任何時候可讀寫。下拉器件。任何時候可讀寫。vPERx7:0 PERx7:0 端口上拉端口上拉/ /下拉器件使能位下拉器件使能位1 = 1 = 對應(yīng)引腳允許內(nèi)置上拉或下拉器件。對應(yīng)引腳允許內(nèi)置上拉或下拉器件。0 = 0 = 對應(yīng)引腳禁用內(nèi)置上拉對應(yīng)引腳禁用內(nèi)置上拉/ /下拉器件。下拉器件。p如果端口用作輸出,該位無效。如果端口用作輸出,該位無效。p復(fù)位后,復(fù)位后,PERx=$00PERx=$00,禁止
23、上拉,禁止上拉/ /下拉功能。下拉功能。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ【補充】【補充】上上/ /下拉電阻的作用下拉電阻的作用p當(dāng)當(dāng)TTLTTL電路驅(qū)動電路驅(qū)動COMSCOMS電路時,由于電路時,由于TTLTTL電路輸出的高電平低于電路輸出的高電平低于COMSCOMS電路的電路的高電平閾值,需要在高電平閾值,需要在TTLTTL的輸出端接上拉電阻,以提高
24、輸出高電平的值。的輸出端接上拉電阻,以提高輸出高電平的值。pOCOC(集電極開路)或(集電極開路)或ODOD(漏極開路)門電路必須加上拉電阻,才能使用。(漏極開路)門電路必須加上拉電阻,才能使用。p為加大輸出引腳的驅(qū)動能力,有的單片機管腳上也常使用上拉電阻。為加大輸出引腳的驅(qū)動能力,有的單片機管腳上也常使用上拉電阻。p管腳懸空容易受外界的電磁干擾。不用的管腳不能懸空,一般接上拉電管腳懸空容易受外界的電磁干擾。不用的管腳不能懸空,一般接上拉電阻,提高總線的抗電磁干擾能力,防止靜電造成阻,提高總線的抗電磁干擾能力,防止靜電造成COMSCOMS芯片損壞。芯片損壞。p芯片的管腳加上拉電阻來提高輸出電平
25、,從而提高芯片輸入信號的噪聲芯片的管腳加上拉電阻來提高輸出電平,從而提高芯片輸入信號的噪聲容限,增強抗干擾能力。容限,增強抗干擾能力。p長線傳輸中,電阻不匹配容易引起反射波干擾,加下拉電阻進行電阻匹長線傳輸中,電阻不匹配容易引起反射波干擾,加下拉電阻進行電阻匹配,有效抑制反射波干擾。配,有效抑制反射波干擾。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ6 6上拉上拉
26、/ /下拉選擇寄存器下拉選擇寄存器PPSx PPSx p【作用】【作用】選擇上拉或下拉器件是否與引腳相連。選擇上拉或下拉器件是否與引腳相連。p任何時候可讀寫。任何時候可讀寫。vPPSx7:0 PPSx7:0 端口上拉端口上拉/ /下拉選擇位下拉選擇位1 = 1 = 如果端口用作輸入、且如果端口用作輸入、且PERxPERx寄存器相關(guān)位設(shè)置為允許時,對應(yīng)的端寄存器相關(guān)位設(shè)置為允許時,對應(yīng)的端口引腳與下拉器件相連??谝_與下拉器件相連。0 = 0 = 如果端口用作輸入、且如果端口用作輸入、且PERxPERx寄存器相關(guān)位設(shè)置為允許時,對應(yīng)的端寄存器相關(guān)位設(shè)置為允許時,對應(yīng)的端口引腳與上拉器件相連??谝?/p>
27、腳與上拉器件相連?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ6 6上拉上拉/ /下拉選擇寄存器下拉選擇寄存器PPSxPPSxp 【注意】【注意】PORTPPORTP、PORTHPORTH和和PORTJPORTJ三個端口具有中斷功能,當(dāng)這三個端口允三個端口具有中斷功能,當(dāng)這三個端口允許中斷時,上
28、拉許中斷時,上拉/ /下拉選擇寄存器還具有下拉選擇寄存器還具有第二個作用第二個作用,用于選擇引腳上觸,用于選擇引腳上觸發(fā)中斷的形式。發(fā)中斷的形式。vPPSx7:0 PPSx7:0 觸發(fā)中斷選擇位觸發(fā)中斷選擇位1 = 1 = 當(dāng)某個引腳使能中斷時,上升沿觸發(fā)中斷。當(dāng)某個引腳使能中斷時,上升沿觸發(fā)中斷。0 = 0 = 當(dāng)某個引腳使能中斷時,下降沿觸發(fā)中斷。當(dāng)某個引腳使能中斷時,下降沿觸發(fā)中斷?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORT
29、M、PORTPPORTP、PORTHPORTH和和PORTJPORTJ7. 7. 端口線或模式寄存器端口線或模式寄存器WOMxWOMxp 端口端口M M和端口和端口S S各具有一個線或模式寄存器,用來將輸出引腳設(shè)置成各具有一個線或模式寄存器,用來將輸出引腳設(shè)置成“線線或或”方式。任何時候可讀寫。方式。任何時候可讀寫。p 如果使能,輸出驅(qū)動僅僅低電平有效,如果使能,輸出驅(qū)動僅僅低電平有效,邏輯邏輯“1”1”電平不驅(qū)動。也適用于電平不驅(qū)動。也適用于SPISPI和和SCISCI輸出,允許幾個串行模塊的多點連接。該位對用作輸入的引腳輸出,允許幾個串行模塊的多點連接。該位對用作輸入的引腳沒有影響。沒有影
30、響。WOMx7:0 WOMx7:0 線或模式選擇位線或模式選擇位v1 = 1 = 輸出緩沖器工作在開漏輸出輸出緩沖器工作在開漏輸出(open-drain output)(open-drain output)狀態(tài)。狀態(tài)。v0 = 0 = 輸出緩沖器工作在推挽輸出輸出緩沖器工作在推挽輸出(push-pull output)(push-pull output)狀態(tài)。狀態(tài)。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例【復(fù)習(xí)】【復(fù)習(xí)】單片機開漏輸出和推挽輸出的區(qū)別單片機開漏輸出和推挽輸出的區(qū)別p驅(qū)動能力不同驅(qū)動能力不同p推挽輸
31、出推挽輸出(1 1)兩個參數(shù)相同的)兩個參數(shù)相同的MOSFETMOSFET分別受兩互補信號的控制,一個管子導(dǎo)通時另一個截止。分別受兩互補信號的控制,一個管子導(dǎo)通時另一個截止。(2 2)輸出電阻小,導(dǎo)通損耗小,效率高,能夠驅(qū)動大的負載。單片機管腳可以直接)輸出電阻小,導(dǎo)通損耗小,效率高,能夠驅(qū)動大的負載。單片機管腳可以直接驅(qū)動發(fā)光二極管、蜂鳴器、甚至更小阻抗的負載。驅(qū)動發(fā)光二極管、蜂鳴器、甚至更小阻抗的負載。(3 3)可以輸出高、低電平,連接數(shù)字器件。輸出既可以向負載灌電流,也可以從負)可以輸出高、低電平,連接數(shù)字器件。輸出既可以向負載灌電流,也可以從負載抽取電流。載抽取電流。p開漏輸出開漏輸出
32、(1 1)漏極開路,只能輸出低電平,需接上拉電阻才能得到高電平狀態(tài)。)漏極開路,只能輸出低電平,需接上拉電阻才能得到高電平狀態(tài)。(2 2)適合于吸收型弱電流驅(qū)動,接上拉電阻后吸收電流的能力比輸出電流的能力強。)適合于吸收型弱電流驅(qū)動,接上拉電阻后吸收電流的能力比輸出電流的能力強。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ8 8中斷使能寄存器中斷使能寄存器PIEx
33、PIExpPORTPPORTP、PORTHPORTH和和PORTJPORTJ三個端口具有中斷功能,且各有一個中斷使能寄存三個端口具有中斷功能,且各有一個中斷使能寄存器,允許或禁止相應(yīng)端口對有效邊沿的中斷。任何時候可讀寫。器,允許或禁止相應(yīng)端口對有效邊沿的中斷。任何時候可讀寫。vPIEx7:0 PIEx7:0 中斷使能位中斷使能位1 = 1 = 允許中斷。允許中斷。0 = 0 = 禁止中斷禁止中斷 ( (中斷被屏蔽中斷被屏蔽) )。p復(fù)位后,中斷使能寄存器值為復(fù)位后,中斷使能寄存器值為$00$00,所有端口中斷關(guān)閉。,所有端口中斷關(guān)閉。 基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S1
34、2輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ9 9中斷標(biāo)志寄存器中斷標(biāo)志寄存器PIFx PIFx pPORTPPORTP、PORTHPORTH和和PORTJPORTJ三個端口各有一個中斷標(biāo)志寄存器三個端口各有一個中斷標(biāo)志寄存器PIFx(x=PPIFx(x=P、H H、J)J)?;凇;赑PSxPPSx寄存器設(shè)置的有效邊沿,當(dāng)相應(yīng)引腳上出現(xiàn)上升沿或下降寄存器設(shè)置的有效邊沿,當(dāng)相應(yīng)引腳上出現(xiàn)上升沿或下降沿時,中斷標(biāo)志寄存器
35、中的對應(yīng)位被置位。沿時,中斷標(biāo)志寄存器中的對應(yīng)位被置位。p任何時候可讀寫任何時候可讀寫PIFxPIFx寄存器。為了清除中斷標(biāo)志,需要向該寄存器中的寄存器。為了清除中斷標(biāo)志,需要向該寄存器中的相應(yīng)位寫相應(yīng)位寫“1”“1”。寫。寫“0”“0”無效。無效。vPIFx7:0 PIFx7:0 中斷標(biāo)志位中斷標(biāo)志位1 = 1 = 相應(yīng)引腳上出現(xiàn)有效邊沿相應(yīng)引腳上出現(xiàn)有效邊沿( (如果相應(yīng)的使能位置位,將產(chǎn)生中斷如果相應(yīng)的使能位置位,將產(chǎn)生中斷) )。0 = 0 = 相應(yīng)引腳上未出現(xiàn)有效邊沿。相應(yīng)引腳上未出現(xiàn)有效邊沿。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其
36、應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJpPORTPPORTP、PORTHPORTH和和PORTJPORTJ三個端口的中斷向量地址及相三個端口的中斷向量地址及相關(guān)標(biāo)志位、控制位。關(guān)標(biāo)志位、控制位?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器
37、及設(shè)置5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK1 1數(shù)據(jù)方向寄存器數(shù)據(jù)方向寄存器DDRxDDRxp【作用】【作用】決定端口引腳為輸出還是輸入。決定端口引腳為輸出還是輸入。vDDRx7-0 DDRx7-0 數(shù)據(jù)方向位數(shù)據(jù)方向位1 = 1 = 設(shè)置相應(yīng)的設(shè)置相應(yīng)的I/OI/O引腳為輸出。引腳為輸出
38、。0 = 0 = 設(shè)置相應(yīng)的設(shè)置相應(yīng)的I/OI/O引腳為輸入。引腳為輸入。vDDRxDDRx各位的數(shù)值影響相應(yīng)各位的數(shù)值影響相應(yīng)PORTxPORTx寄存器讀取的數(shù)據(jù)源。寄存器讀取的數(shù)據(jù)源。如果如果DDRxDDRx寄存器某位為寄存器某位為“0”0”(輸入),讀取的是緩沖的引腳輸入狀態(tài);(輸入),讀取的是緩沖的引腳輸入狀態(tài);如果如果DDRxDDRx寄存器某位為寄存器某位為“1”1”(輸出),讀取的是相應(yīng)端口數(shù)據(jù)寄存器對應(yīng)位的狀態(tài)。(輸出),讀取的是相應(yīng)端口數(shù)據(jù)寄存器對應(yīng)位的狀態(tài)。p復(fù)位后,數(shù)據(jù)方向寄存器的值為復(fù)位后,數(shù)據(jù)方向寄存器的值為0 x000 x00,引腳默認為輸入。,引腳默認為輸入。p【注
39、意】【注意】端口端口E E是一個特例,其是一個特例,其最低兩位只能為輸入口,最低兩位只能為輸入口,端口端口E E的數(shù)據(jù)方向寄存器的數(shù)據(jù)方向寄存器DDREDDRE最低兩位是只讀位,讀這兩位始終返回最低兩位是只讀位,讀這兩位始終返回“0”0”。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK2 2I/O I/O 寄存器寄存器PORTxPORTx pI/OI/O寄存器中寄存器中8 8位對應(yīng)每個端口中的相應(yīng)引腳,當(dāng)位對
40、應(yīng)每個端口中的相應(yīng)引腳,當(dāng)PORTxPORTx寄存器處于內(nèi)存分配表中時,寄存器處于內(nèi)存分配表中時,任何時候可讀寫。任何時候可讀寫。如果某端口的引腳被定義為輸出,寫入如果某端口的引腳被定義為輸出,寫入I/OI/O寄存器中的數(shù)值會從對應(yīng)引腳輸出;寄存器中的數(shù)值會從對應(yīng)引腳輸出;如果某端口的引腳被定義為輸入,讀取如果某端口的引腳被定義為輸入,讀取I/OI/O寄存器獲得對應(yīng)的引腳電平。寄存器獲得對應(yīng)的引腳電平。p為了確保讀到為了確保讀到PORTxPORTx引腳的當(dāng)前值,寫引腳的當(dāng)前值,寫DDRxDDRx寄存器后至少等待一個周期,再讀寄存器后至少等待一個周期,再讀PORTxPORTx寄存器。寄存器。p【
41、注意】【注意】端口端口E E是一個特例,其是一個特例,其最低兩位只能為輸入最低兩位只能為輸入,端口,端口E E的的I/OI/O寄存器寄存器PORTEPORTE最最低兩位是只讀位。低兩位是只讀位?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK3 3上拉電阻控制寄存器上拉電阻控制寄存器PUCR PUCR pPORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK都有內(nèi)置上拉電阻,都
42、有內(nèi)置上拉電阻,共用一個控制寄存器共用一個控制寄存器PUCRPUCR。p【作用】【作用】選擇端口引腳的上拉電阻,第選擇端口引腳的上拉電阻,第7 7、4 4、1 1和和0 0位分別對應(yīng)端口位分別對應(yīng)端口K K、E E、B B和和A A。p當(dāng)當(dāng)PUCRPUCR寄存器處于內(nèi)存分配表中時,任何時候可讀寫。寄存器處于內(nèi)存分配表中時,任何時候可讀寫。 p上拉根據(jù)每個端口來分配,適用于當(dāng)前配置為輸入的相應(yīng)端口的任何引上拉根據(jù)每個端口來分配,適用于當(dāng)前配置為輸入的相應(yīng)端口的任何引腳。當(dāng)相應(yīng)引腳為輸出時,這些位無效腳。當(dāng)相應(yīng)引腳為輸出時,這些位無效( (上拉設(shè)置不起作用上拉設(shè)置不起作用) )。p單片機復(fù)位后,端
43、口單片機復(fù)位后,端口K K和端口和端口E E的上拉電阻使能,端口的上拉電阻使能,端口B B和端口和端口A A的上拉電的上拉電阻禁止。阻禁止。p在擴展和外設(shè)模式下,在擴展和外設(shè)模式下,PUCRPUCR寄存器不在片內(nèi)映射區(qū)內(nèi)。寄存器不在片內(nèi)映射區(qū)內(nèi)。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK3 3上拉電阻控制寄存器上拉電阻控制寄存器PUCRPUCRPUPKE PUPKE 端口端口K K上拉使能位上拉使能位1
44、= 1 = 端口端口K K輸入引腳上拉允許。輸入引腳上拉允許。0 = 0 = 端口端口K K輸入引腳上拉禁止。輸入引腳上拉禁止。PUPEE PUPEE 端口端口E E上拉使能位上拉使能位1 = 1 = 端口端口E E輸入引腳輸入引腳7, 4-07, 4-0上拉允許。上拉允許。0 = 0 = 端口端口E E輸入引腳輸入引腳7, 4-07, 4-0上拉禁止。上拉禁止。PUPBE PUPBE 端口端口B B上拉使能位上拉使能位1 = 1 = 端口端口B B所有輸入引腳上拉允許。所有輸入引腳上拉允許。0 = 0 = 端口端口B B上拉禁止。上拉禁止。PUPAE PUPAE 端口端口A A上拉使能位上拉
45、使能位1 = 1 = 端口端口A A所有輸入引腳上拉允許。所有輸入引腳上拉允許。0 = 0 = 端口端口A A上拉禁止。上拉禁止。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK4 4驅(qū)動控制寄存器驅(qū)動控制寄存器RDRIVRDRIVpPORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK都可以設(shè)置端口輸出驅(qū)動能力,都可以設(shè)置端口輸出驅(qū)動能力,共用一個控制寄存共用一個控制寄存器器
46、RDRIVRDRIV。p【作用作用】選擇相關(guān)端口引腳的降功率驅(qū)動,選擇相關(guān)端口引腳的降功率驅(qū)動,第第7 7、4 4、1 1和和0 0位分別對應(yīng)端口位分別對應(yīng)端口K K、E E、B B和和A A。p當(dāng)當(dāng)RDRIVRDRIV寄存器處于內(nèi)存分配表中時,任何時候可讀寫。寄存器處于內(nèi)存分配表中時,任何時候可讀寫。如果某個控制位為如果某個控制位為“1”1”,對應(yīng)端口輸出驅(qū)動能力降低;,對應(yīng)端口輸出驅(qū)動能力降低;如果某個控制位為如果某個控制位為“0”0”,對應(yīng)端口為正常驅(qū)動輸出方式。,對應(yīng)端口為正常驅(qū)動輸出方式。p在擴展和外設(shè)模式下,在擴展和外設(shè)模式下,RDRIVRDRIV寄存器不在片內(nèi)映射區(qū)內(nèi)。寄存器不在
47、片內(nèi)映射區(qū)內(nèi)?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK4 4驅(qū)動控制寄存器驅(qū)動控制寄存器RDRIVRDRIVRDPK - RDPK - 端口端口K K降功率驅(qū)動控制位降功率驅(qū)動控制位1 = 1 = 允許所有端口允許所有端口K K輸出引腳低功耗驅(qū)動。輸出引腳低功耗驅(qū)動。0 = 0 = 允許所有端口允許所有端口K K輸出引腳全功率驅(qū)動。輸出引腳全功率驅(qū)動。RDPE - RDPE - 端口端口E E降功率驅(qū)動
48、控制位降功率驅(qū)動控制位1 = 1 = 允許所有端口允許所有端口E E輸出引腳低功耗驅(qū)動。輸出引腳低功耗驅(qū)動。0 = 0 = 允許所有端口允許所有端口E E輸出引腳全功率驅(qū)動。輸出引腳全功率驅(qū)動。RDPB - RDPB - 端口端口B B降功率驅(qū)動控制位降功率驅(qū)動控制位1 = 1 = 允許所有端口允許所有端口B B輸出引腳低功耗驅(qū)動。輸出引腳低功耗驅(qū)動。0 = 0 = 允許所有端口允許所有端口B B輸出引腳全功率驅(qū)動。輸出引腳全功率驅(qū)動。RDPA - RDPA - 端口端口A A降功率驅(qū)動控制位降功率驅(qū)動控制位1 = 1 = 允許所有端口允許所有端口A A輸出引腳低功耗驅(qū)動。輸出引腳低功耗驅(qū)動。
49、0 = 0 = 允許所有端口允許所有端口A A輸出引腳全功率驅(qū)動。輸出引腳全功率驅(qū)動。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.3 5.3 輸入輸入/ /輸出端口基礎(chǔ)應(yīng)用實例輸出端口基礎(chǔ)應(yīng)用實例 5.3.1 5.3.1 輸出設(shè)備輸出設(shè)備LEDLED控制實例控制實例pPORTBPORTB連接連接8 8只只LEDLED,編程實現(xiàn),編程實現(xiàn)明燈流水明燈流水操作。操作。p點亮點亮LEDLED燈,并使蜂鳴器發(fā)聲。燈,并使蜂鳴器發(fā)聲?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其
50、應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.3 5.3 輸入輸入/ /輸出端口基礎(chǔ)應(yīng)用實例輸出端口基礎(chǔ)應(yīng)用實例 5.3.2 5.3.2 輸入設(shè)備撥碼開關(guān)讀取實例輸入設(shè)備撥碼開關(guān)讀取實例p使用使用PORTAPORTA讀取讀取8 8位撥碼開關(guān)狀態(tài)。位撥碼開關(guān)狀態(tài)。p根據(jù)撥位開關(guān)的狀態(tài),點亮或熄滅對應(yīng)的根據(jù)撥位開關(guān)的狀態(tài),點亮或熄滅對應(yīng)的LEDLED燈。燈?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實輸出端口模塊及其應(yīng)用實例例5.4 5.4 智能車系統(tǒng)中輸入智能車系統(tǒng)中輸入/ /輸出端口的應(yīng)用輸出端口的應(yīng)用5.4.1 5.4.1 鍵盤接口設(shè)計鍵盤接口設(shè)計p
51、 鍵盤多由多個按鍵組成,排列成陣列。鍵盤多由多個按鍵組成,排列成陣列。p 當(dāng)無鍵按下時,行和列線之間不相連,若第當(dāng)無鍵按下時,行和列線之間不相連,若第N N行第行第M M列列的鍵被按下,則第的鍵被按下,則第N N行與第行與第M M列的線被接通。列的線被接通。p 如果在列線上加上信號,根如果在列線上加上信號,根據(jù)行線的狀態(tài),便可得知是據(jù)行線的狀態(tài),便可得知是否有鍵按下。否有鍵按下。p 如果在列線上逐行加上一個如果在列線上逐行加上一個掃描信號,就可以判斷按鍵掃描信號,就可以判斷按鍵的位置。的位置。基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出
52、端口模塊及其應(yīng)用實例5.4.1 5.4.1 鍵盤接口設(shè)計鍵盤接口設(shè)計p用用PORTAPORTA擴展的擴展的4 44 4鍵盤:鍵盤:低低4 4位作為行線,高位作為行線,高4 4位作為列線。位作為列線。p將端口將端口A A的低的低4 4位設(shè)置為輸入、高位設(shè)置為輸入、高4 4位設(shè)置為輸出(即位設(shè)置為輸出(即DDRA=0 xF0DDRA=0 xF0)。)。p使使PORTAPORTA的高的高4 4位逐列輸出低電平,并逐行讀取位逐列輸出低電平,并逐行讀取PORTAPORTA的低的低4 4位,將高位,將高4 4位的位的輸出狀態(tài)與讀取的低輸出狀態(tài)與讀取的低4 4位的狀態(tài)相位的狀態(tài)相“與與”,然后查詢,然后查詢
53、RAMRAM中的表格便可判斷中的表格便可判斷被按下鍵的位置。被按下鍵的位置?!炬I盤掃描方法】【鍵盤掃描方法】逐行逐行/ /逐列掃描法逐列掃描法反轉(zhuǎn)法反轉(zhuǎn)法【去抖動方法】【去抖動方法】硬件法硬件法采用斯密特觸采用斯密特觸發(fā)器發(fā)器軟件法軟件法利用軟件延時利用軟件延時基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.4.1 5.4.1 鍵盤接口設(shè)計鍵盤接口設(shè)計p【硬件去抖動處理】【硬件去抖動處理】利用兩級帶利用兩級帶斯密特觸發(fā)電路的反相器。斯密特觸發(fā)電路的反相器。p【軟件去抖動處理】【軟件去抖動處理】當(dāng)判斷有鍵按下后,軟件延
54、時當(dāng)判斷有鍵按下后,軟件延時20ms20ms,再次掃描確認。,再次掃描確認?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.4 5.4 智能車系統(tǒng)中輸入智能車系統(tǒng)中輸入/ /輸出端口的應(yīng)用輸出端口的應(yīng)用5.4.1 5.4.1 鍵盤接口設(shè)計鍵盤接口設(shè)計基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.4.1 5.4.1 鍵盤接口設(shè)計鍵盤接口設(shè)計p采用數(shù)碼管顯示驅(qū)動及鍵盤掃描管理芯片采用數(shù)碼管顯示驅(qū)動及鍵盤掃描管理芯片ZLG7289BZLG728
55、9B擴展擴展4 44 4鍵盤。鍵盤。 【芯片特點】【芯片特點】p可直接驅(qū)動可直接驅(qū)動8 8位共陰式數(shù)碼管(或位共陰式數(shù)碼管(或6464只獨立只獨立LEDLED)。)。p可掃描管理多達可掃描管理多達6464只按鍵。只按鍵。p內(nèi)部含有譯碼器,可直接接收內(nèi)部含有譯碼器,可直接接收BCDBCD碼或碼或1616進制碼,進制碼,并具有兩種譯碼方式。并具有兩種譯碼方式。p具有多種控制指令,如消隱、閃爍、左移、右具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。移、段尋址等。p采用采用SPISPI串行總線與微控制器接口。串行總線與微控制器接口。p利用片選信號,利用片選信號,ZLG7289BZLG7289B
56、可以并接在一起使用,可以并接在一起使用,實現(xiàn)多于實現(xiàn)多于8 8位的顯示或多于位的顯示或多于6464只按鍵的應(yīng)用。只按鍵的應(yīng)用。 基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.4.1 5.4.1 鍵盤接口設(shè)計鍵盤接口設(shè)計p通過通過IRQIRQ中斷來檢測是否有按鍵被按下。中斷來檢測是否有按鍵被按下?;贖CS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.4.2 LED5.4.2 LED顯示接口設(shè)計顯示接口設(shè)計p【LEDLED ( (Light Emi
57、tting Diode) )】數(shù)碼管】數(shù)碼管,用發(fā)光二極管顯示字段的顯示器,用發(fā)光二極管顯示字段的顯示器。p【LEDLED顯示器類型】顯示器類型】共陰極、共陽極。共陰極、共陽極。p共陰極共陰極將將8 8個發(fā)光二極管陰極連在一起作為公共端。個發(fā)光二極管陰極連在一起作為公共端。p共陽極共陽極將將8 8個發(fā)光二極管的陽極連在一起作為公共端。個發(fā)光二極管的陽極連在一起作為公共端。 (a) 外形結(jié)構(gòu)與引腳外形結(jié)構(gòu)與引腳(共陰共陰) (b) 共陰極共陰極 (C) 共陽極共陽極基于HCS12的嵌入式系統(tǒng)設(shè)計第第5 5章章 S12 S12輸入輸入/ /輸出端口模塊及其應(yīng)用實例輸出端口模塊及其應(yīng)用實例5.4.2
58、 LED5.4.2 LED顯示接口設(shè)計顯示接口設(shè)計p數(shù)碼管的公共端相當(dāng)于一個位選開數(shù)碼管的公共端相當(dāng)于一個位選開關(guān),一般稱為關(guān),一般稱為位碼開關(guān)位碼開關(guān)。當(dāng)該位處。當(dāng)該位處于高電平時,數(shù)碼管全滅;當(dāng)該位于高電平時,數(shù)碼管全滅;當(dāng)該位處于低電平時,根據(jù)二極管陽極處于低電平時,根據(jù)二極管陽極(一般稱為(一般稱為段碼段碼或字形碼)的電平或字形碼)的電平狀態(tài),確定段碼是否點亮。段碼高狀態(tài),確定段碼是否點亮。段碼高電平時,該段碼亮;段碼低電平時,電平時,該段碼亮;段碼低電平時,該段碼不亮。該段碼不亮。p輸出相應(yīng)的段碼值得到輸出相應(yīng)的段碼值得到LEDLED顯示器顯示器的字形。的字形。 基于HCS12的嵌入式系
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年五年級下學(xué)期語文教師工作總結(jié)模版(三篇)
- 2025年鄉(xiāng)村中學(xué)教師七年級語文教學(xué)工作總結(jié)(3篇)
- 2025年個人擔(dān)保貸款合同參考樣本(2篇)
- 互聯(lián)網(wǎng)企業(yè)調(diào)研居間合同
- 教育實驗室裝修項目協(xié)議
- 疫情封閉小區(qū)大門施工方案
- 健身房裝修合同范本版
- 咖啡館裝飾設(shè)計合同
- 商業(yè)綜合體外立面裝修合同
- 2025年度醫(yī)療數(shù)據(jù)保密合同范本
- 15J403-1-樓梯欄桿欄板(一)
- QC課題提高金剛砂地面施工一次合格率
- 浙江省(面試)公務(wù)員考試試題及答案指導(dǎo)(2025年)
- 2024年發(fā)電廠交接班管理制度(二篇)
- 《數(shù)學(xué)課程標(biāo)準(zhǔn)》義務(wù)教育2022年修訂版(原版)
- 各種標(biāo)本采集的技術(shù)-痰標(biāo)本的采集(護理技術(shù))
- 實驗室的設(shè)計規(guī)劃
- 注冊安全工程師《安全生產(chǎn)管理知識》科目知識要點
- 《新時代公民道德建設(shè)實施綱要》、《新時代愛國主義教育實施綱要》知識競賽試題庫55題(含答案)
- 2024-2030年中國假睫毛行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
評論
0/150
提交評論