版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)輸出端口模塊及其應(yīng)用實(shí)例用實(shí)例合肥工業(yè)大學(xué)合肥工業(yè)大學(xué)機(jī)械與汽車工程學(xué)院機(jī)械與汽車工程學(xué)院滕滕 勤勤2014.42014.4基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例本章內(nèi)容本章內(nèi)容p 5.1 5.1 并行并行I/OI/O接口簡介接口簡介p 5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置p 5.3 5.3 輸入輸入/ /輸出端口應(yīng)用實(shí)例輸出端口應(yīng)用實(shí)例基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S
2、12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p【I/OI/O接口接口(Input/Output Interface)(Input/Output Interface)】MCUMCU與外界進(jìn)行交互與外界進(jìn)行交互的重要通道。的重要通道。p【常見【常見I/OI/O接口接口】人機(jī)交互接口,如開關(guān)、鍵盤、指示燈、顯人機(jī)交互接口,如開關(guān)、鍵盤、指示燈、顯示器示器(LED(LED、LCD)LCD)等,或者外接其它輸入、輸出設(shè)備。等,或者外接其它輸入、輸出設(shè)備。pI/OI/O接口電路的主要作用:接口電路的主要作用:(1 1)協(xié)調(diào)高速)協(xié)調(diào)
3、高速CPUCPU與低速外設(shè)之間的速度匹配與低速外設(shè)之間的速度匹配(2 2)提供輸入、輸出過程中的狀態(tài)信號(hào))提供輸入、輸出過程中的狀態(tài)信號(hào)基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1 5.1 并行并行I/OI/O接口簡介接口簡介【并行【并行I/OI/O接口組成接口組成】p【端口【端口】接口電路中用以完成信息傳送、并可通過地址讀接口電路中用以完成信息傳送、并可通過地址讀/ /寫寫的寄存器。的寄存器。p【并行【并行I/OI/O接口接口】由若干個(gè)端口(由若干個(gè)端口(PortPort)組成:一個(gè)接口在物)組成:一個(gè)接口在物
4、理上有若干個(gè)端口,與不同的寄存器相對(duì)應(yīng),規(guī)定這些端口理上有若干個(gè)端口,與不同的寄存器相對(duì)應(yīng),規(guī)定這些端口分別是分別是數(shù)據(jù)口數(shù)據(jù)口、狀態(tài)口狀態(tài)口和和命令口命令口。 p一個(gè)接口分配有若干個(gè)地址,即每一個(gè)端口分配一個(gè)地址。一個(gè)接口分配有若干個(gè)地址,即每一個(gè)端口分配一個(gè)地址。CPUCPU將不同的信息寫到不同的端口地址,也從不同的端口地址將不同的信息寫到不同的端口地址,也從不同的端口地址讀取不同的信息。讀取不同的信息?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1 5.1 并行并行I/OI/O接口簡介接口簡介pMC9S12D
5、G128MC9S12DG128單片機(jī)的單片機(jī)的I/OI/O接口包括接口包括PORTAPORTA、PORTBPORTB、PORTEPORTE、PORTKPORTK、PORTTPORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH、PORTJPORTJ以及以及PORTADPORTAD端口模塊端口模塊。pPORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK屬于屬于復(fù)用擴(kuò)展總線接口復(fù)用擴(kuò)展總線接口( (MEBIMEBI) ),當(dāng),當(dāng)MC9S12DG128MC9S12DG128在擴(kuò)展方式下工作時(shí),作為總線信號(hào);在單片模式下工
6、作時(shí),在擴(kuò)展方式下工作時(shí),作為總線信號(hào);在單片模式下工作時(shí),PORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK可用作通用可用作通用I/OI/O口????;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1 5.1 并行并行I/OI/O接口簡介接口簡介pPORTTPORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ屬于屬于端口集成模塊端口集成模塊PIMPIM,與片內(nèi),與片內(nèi)其他功能模塊的引腳復(fù)用。其他功能模塊的引腳復(fù)用
7、。p每個(gè)功能模塊按照優(yōu)先級(jí)的每個(gè)功能模塊按照優(yōu)先級(jí)的高低使用引腳。高低使用引腳。 基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p 【GPIOGPIO簡化功能邏輯圖簡化功能邏輯圖】僅考慮兩個(gè)寄存器:僅考慮兩個(gè)寄存器:數(shù)據(jù)寄存器數(shù)據(jù)寄存器PORTPORT和和數(shù)據(jù)方數(shù)據(jù)方向寄存器向寄存器DDRDDR。p RD_DDRRD_DDR和和WR_DDRWR_DDR分別控制各自的三態(tài)雙向門閂電路,該電路具有雙向傳分別控制各自的三態(tài)雙向門閂電路,該電路具有雙向傳輸和高阻三態(tài)功能(圖中只
8、給出了單向傳輸和門控功能),可分別讀取輸和高阻三態(tài)功能(圖中只給出了單向傳輸和門控功能),可分別讀取PORTPORT引腳狀態(tài)、數(shù)據(jù)鎖存器狀態(tài)和方向寄存器引腳狀態(tài)、數(shù)據(jù)鎖存器狀態(tài)和方向寄存器DDRDDR的狀態(tài)。的狀態(tài)?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1 5.1 并行并行I/OI/O接口簡介接口簡介p9S129S12單片機(jī)的每個(gè)單片機(jī)的每個(gè)I/OI/O接口引腳均內(nèi)置拉電阻,可以通過編程設(shè)置是否使用上拉、接口引腳均內(nèi)置拉電阻,可以通過編程設(shè)置是否使用上拉、下拉功能及其極性。下拉功能及其極性。p【拉電阻的主要作
9、用【拉電阻的主要作用】當(dāng)電路驅(qū)動(dòng)器關(guān)閉時(shí),保持線路(節(jié)點(diǎn))為固定電平,提當(dāng)電路驅(qū)動(dòng)器關(guān)閉時(shí),保持線路(節(jié)點(diǎn))為固定電平,提高抗干擾能力。高抗干擾能力。標(biāo)準(zhǔn)端口的最小特性:標(biāo)準(zhǔn)端口的最小特性:輸入輸入/ /輸出選擇輸出選擇兩個(gè)可選擇驅(qū)動(dòng)強(qiáng)度的兩個(gè)可選擇驅(qū)動(dòng)強(qiáng)度的5V5V輸出驅(qū)動(dòng)輸出驅(qū)動(dòng)5V5V數(shù)字或模擬輸入數(shù)字或模擬輸入可選擇上拉或下拉器件的輸入可選擇上拉或下拉器件的輸入選擇特性:選擇特性:線或連接的開漏輸出線或連接的開漏輸出虛假信號(hào)濾波的中斷輸入虛假信號(hào)濾波的中斷輸入基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.1
10、5.1 并行并行I/OI/O接口簡介接口簡介p通用通用I/OI/O口可以設(shè)置輸入口可以設(shè)置輸入/ /輸出、驅(qū)動(dòng)能力、內(nèi)部上拉輸出、驅(qū)動(dòng)能力、內(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/OI/O寄存器寄存器 用于設(shè)定端口輸出電平的高低。用于設(shè)定端口輸出電平的高低。 驅(qū)動(dòng)控制驅(qū)動(dòng)控制寄存器
11、寄存器RDR RDR 用于選擇用于選擇I/OI/O的輸出驅(qū)動(dòng)能力。的輸出驅(qū)動(dòng)能力。 上拉上拉/ /下拉使能下拉使能寄存器寄存器PER PER 當(dāng)當(dāng)I/OI/O口為輸入時(shí),用于選擇內(nèi)部上拉或下拉功能??跒檩斎霑r(shí),用于選擇內(nèi)部上拉或下拉功能。 上拉上拉/ /下拉選擇下拉選擇寄存器寄存器PPSPPS有兩個(gè)用途:有兩個(gè)用途:(1 1)當(dāng)中斷允許位置位時(shí),用于選擇上升沿觸發(fā)或下降沿觸發(fā)中斷。)當(dāng)中斷允許位置位時(shí),用于選擇上升沿觸發(fā)或下降沿觸發(fā)中斷。(2 2)當(dāng)使能內(nèi)部上拉)當(dāng)使能內(nèi)部上拉/ /下拉器件時(shí),用于選擇上拉或下拉。下拉器件時(shí),用于選擇上拉或下拉。 中斷使能中斷使能寄存器寄存器IE IE 用于允
12、許或禁止用于允許或禁止I/OI/O口上的中斷??谏系闹袛唷;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例p引腳配置匯總引腳配置匯總 基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S
13、12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例
14、輸出端口模塊及其應(yīng)用實(shí)例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ1 1數(shù)據(jù)方向寄存器數(shù)據(jù)方向寄存器DDRxDDRxp 【作用【作用】決定對(duì)應(yīng)的引腳為輸出還是輸入,任何時(shí)候可讀寫。決定對(duì)應(yīng)的引腳為輸出還是輸入,任何時(shí)候可讀寫。v DDRx7:0 DDRx7:0 端口端口x x數(shù)據(jù)方向位數(shù)據(jù)方向位 1 = 1 = 對(duì)應(yīng)引腳設(shè)置為輸出。對(duì)應(yīng)引腳設(shè)置為輸出。 0 = 0 = 對(duì)應(yīng)引腳設(shè)置為輸入。對(duì)應(yīng)引腳設(shè)置為輸入。p
15、復(fù)位后,數(shù)據(jù)方向寄存器值為復(fù)位后,數(shù)據(jù)方向寄存器值為0 x000 x00,引腳默認(rèn)為輸入。,引腳默認(rèn)為輸入。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ1數(shù)據(jù)方向寄存器數(shù)據(jù)方向寄存器DDRxDDRxp 如果外設(shè)模塊控制引腳,數(shù)據(jù)方向寄存器的內(nèi)容被忽略。如果外設(shè)模塊控制引腳,數(shù)據(jù)方向寄存器的內(nèi)容被忽
16、略。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5章章 S12輸入輸入/輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ2I/OI/O寄存器寄存器PTxPTxp 任何時(shí)候可讀寫。任何時(shí)候可讀寫。p 如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對(duì)應(yīng)位的數(shù)值為對(duì)應(yīng)位的數(shù)值為“1”(1”(輸出輸出) )時(shí),時(shí),I/OI/O寄存器的值與引腳寄存器的值與引腳電平一致:電平一致: PTxPTx =1 =1,對(duì)應(yīng)的引腳輸出為高電平。,對(duì)應(yīng)的引腳輸出為高電平
17、。 PTxPTx =0 =0,對(duì)應(yīng)的引腳輸出為低電平。,對(duì)應(yīng)的引腳輸出為低電平。 讀取該寄存器返回讀取該寄存器返回I/OI/O寄存器的內(nèi)容。寄存器的內(nèi)容。p 如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對(duì)應(yīng)位的數(shù)值為對(duì)應(yīng)位的數(shù)值為“0”0”,即將對(duì)應(yīng)引腳定義為,即將對(duì)應(yīng)引腳定義為輸入輸入時(shí):時(shí): 讀取該寄存器返回引腳值。讀取該寄存器返回引腳值。 寫該寄存器不改變引腳狀態(tài),但當(dāng)寫該寄存器不改變引腳狀態(tài),但當(dāng)DDRxDDRx對(duì)應(yīng)位的數(shù)值變?yōu)閷?duì)應(yīng)位的數(shù)值變?yōu)椤?”1”時(shí),寄存器中的時(shí),寄存器中的數(shù)值將反映在引腳上。數(shù)值將反映在引腳上?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12
18、輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ3輸入寄存器輸入寄存器PTIxPTIxp 輸入寄存器是一個(gè)輸入寄存器是一個(gè)只讀只讀寄存器。任何時(shí)候可讀,寫無效。寄存器。任何時(shí)候可讀,寫無效。p 如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對(duì)應(yīng)位的數(shù)值為對(duì)應(yīng)位的數(shù)值為“0”0”,即將對(duì)應(yīng)引腳定義為,即將對(duì)應(yīng)引腳定義為輸入輸入時(shí),時(shí),讀取該寄存器總是返回引腳值。讀取該寄存器總是返回引腳值。 讀出的值為讀出的值為“0”0”,
19、表示對(duì)應(yīng)引腳上為低電平;,表示對(duì)應(yīng)引腳上為低電平; 讀出的值為讀出的值為“1”1”,表示對(duì)應(yīng)引腳上為高電平。,表示對(duì)應(yīng)引腳上為高電平。p 如果數(shù)據(jù)方向寄存器如果數(shù)據(jù)方向寄存器DDRxDDRx對(duì)應(yīng)位的數(shù)值為對(duì)應(yīng)位的數(shù)值為“1”1”,即將對(duì)應(yīng)引腳定義為,即將對(duì)應(yīng)引腳定義為輸出輸出時(shí),時(shí),利用讀該寄存器可以監(jiān)視對(duì)應(yīng)引腳是否過載或短路。如果過載或短路,則該寄存利用讀該寄存器可以監(jiān)視對(duì)應(yīng)引腳是否過載或短路。如果過載或短路,則該寄存器對(duì)應(yīng)位為器對(duì)應(yīng)位為1 1,否則,為,否則,為0 0。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5
20、.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ4 4驅(qū)動(dòng)控制寄存器驅(qū)動(dòng)控制寄存器RDRxRDRxp 【作用【作用】定義每個(gè)輸出端口引腳的驅(qū)動(dòng)能力,任何時(shí)候可讀寫。定義每個(gè)輸出端口引腳的驅(qū)動(dòng)能力,任何時(shí)候可讀寫。v RDRx7:0 RDRx7:0 端口端口x x降功率驅(qū)動(dòng)控制位降功率驅(qū)動(dòng)控制位 1 = 1 = 對(duì)應(yīng)引腳輸出驅(qū)動(dòng)能力為正常值的對(duì)應(yīng)引腳輸出驅(qū)動(dòng)能力為正常值的1/61/6。 0 = 0 = 對(duì)應(yīng)引腳為輸出全功率
21、驅(qū)動(dòng)。對(duì)應(yīng)引腳為輸出全功率驅(qū)動(dòng)。p 如果端口用作輸入,該位被忽略。如果端口用作輸入,該位被忽略。p 復(fù)位后,復(fù)位后,RDRxRDRx寄存器值為寄存器值為$00$00,引腳默認(rèn)以滿功率驅(qū)動(dòng)輸出。,引腳默認(rèn)以滿功率驅(qū)動(dòng)輸出?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ5 5上拉上拉/ /下拉使能寄存器下拉使能寄存器PERxPERx p 【作用【作用】如果端口用作輸入或?yàn)?/p>
22、如果端口用作輸入或?yàn)椤熬€或線或”模式時(shí),該寄存器設(shè)置是否激活模式時(shí),該寄存器設(shè)置是否激活內(nèi)置上拉內(nèi)置上拉/ /下拉器件。任何時(shí)候可讀寫。下拉器件。任何時(shí)候可讀寫。v PERx7:0 PERx7:0 端口上拉端口上拉/ /下拉器件使能位下拉器件使能位 1 = 1 = 對(duì)應(yīng)引腳允許內(nèi)置上拉或下拉器件。對(duì)應(yīng)引腳允許內(nèi)置上拉或下拉器件。 0 = 0 = 對(duì)應(yīng)引腳禁用內(nèi)置上拉對(duì)應(yīng)引腳禁用內(nèi)置上拉/ /下拉器件。下拉器件。p 如果端口用作輸出,該位無效。如果端口用作輸出,該位無效。p 復(fù)位后,復(fù)位后,PERxPERx=$00=$00,禁止上拉,禁止上拉/ /下拉功能。下拉功能?;贖CS12的嵌入式系統(tǒng)設(shè)
23、計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ【補(bǔ)充【補(bǔ)充】上上/ /下拉電阻的作用下拉電阻的作用p 當(dāng)當(dāng)TTLTTL電路驅(qū)動(dòng)電路驅(qū)動(dòng)COMSCOMS電路時(shí),由于電路時(shí),由于TTLTTL電路輸出的高電平低于電路輸出的高電平低于COMSCOMS電路的電路的高電平閾值,需要在高電平閾值,需要在TTLTTL的輸出端接上拉電阻,以提高輸出高電平的值。的輸出端接上拉電阻,以提高輸出高電平的值。p OCOC
24、(集電極開路)或(集電極開路)或ODOD(漏極開路)門電路必須加上拉電阻,才能使用。(漏極開路)門電路必須加上拉電阻,才能使用。p 為加大輸出引腳的驅(qū)動(dòng)能力,有的單片機(jī)管腳上也常使用上拉電阻。為加大輸出引腳的驅(qū)動(dòng)能力,有的單片機(jī)管腳上也常使用上拉電阻。p 管腳懸空容易受外界的電磁干擾。不用的管腳不能懸空,一般接上拉電管腳懸空容易受外界的電磁干擾。不用的管腳不能懸空,一般接上拉電阻,提高總線的抗電磁干擾能力,防止靜電造成阻,提高總線的抗電磁干擾能力,防止靜電造成COMSCOMS芯片損壞。芯片損壞。p 芯片的管腳加上拉電阻來提高輸出電平,從而提高芯片輸入信號(hào)的噪聲芯片的管腳加上拉電阻來提高輸出電平
25、,從而提高芯片輸入信號(hào)的噪聲容限,增強(qiáng)抗干擾能力。容限,增強(qiáng)抗干擾能力。p 長線傳輸中,電阻不匹配容易引起反射波干擾,加下拉電阻進(jìn)行電阻匹長線傳輸中,電阻不匹配容易引起反射波干擾,加下拉電阻進(jìn)行電阻匹配,有效抑制反射波干擾。配,有效抑制反射波干擾。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ6 6上拉上拉/ /下拉選擇寄存器下拉選擇寄存器PPSxPPSx p 【作用
26、【作用】選擇上拉或下拉器件是否與引腳相連。選擇上拉或下拉器件是否與引腳相連。p 任何時(shí)候可讀寫。任何時(shí)候可讀寫。v PPSx7:0 PPSx7:0 端口上拉端口上拉/ /下拉選擇位下拉選擇位 1 = 1 = 如果端口用作輸入、且如果端口用作輸入、且PERxPERx寄存器相關(guān)位設(shè)置為允許時(shí),對(duì)應(yīng)的端寄存器相關(guān)位設(shè)置為允許時(shí),對(duì)應(yīng)的端口引腳與下拉器件相連??谝_與下拉器件相連。 0 = 0 = 如果端口用作輸入、且如果端口用作輸入、且PERxPERx寄存器相關(guān)位設(shè)置為允許時(shí),對(duì)應(yīng)的端寄存器相關(guān)位設(shè)置為允許時(shí),對(duì)應(yīng)的端口引腳與上拉器件相連??谝_與上拉器件相連。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5
27、5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ6 6上拉上拉/ /下拉選擇寄存器下拉選擇寄存器PPSxPPSxp 【注意【注意】PORTPPORTP、PORTHPORTH和和PORTJPORTJ三個(gè)端口具有中斷功能,當(dāng)這三個(gè)端口允三個(gè)端口具有中斷功能,當(dāng)這三個(gè)端口允許中斷時(shí),上拉許中斷時(shí),上拉/ /下拉選擇寄存器還具有下拉選擇寄存器還具
28、有第二個(gè)作用第二個(gè)作用,用于選擇引腳上觸,用于選擇引腳上觸發(fā)中斷的形式。發(fā)中斷的形式。v PPSx7:0 PPSx7:0 觸發(fā)中斷選擇位觸發(fā)中斷選擇位 1 = 1 = 當(dāng)某個(gè)引腳使能中斷時(shí),上升沿觸發(fā)中斷。當(dāng)某個(gè)引腳使能中斷時(shí),上升沿觸發(fā)中斷。 0 = 0 = 當(dāng)某個(gè)引腳使能中斷時(shí),下降沿觸發(fā)中斷。當(dāng)某個(gè)引腳使能中斷時(shí),下降沿觸發(fā)中斷?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和POR
29、TJPORTJ7. 7. 端口線或模式寄存器端口線或模式寄存器WOMxWOMxp 端口端口M M和端口和端口S S各具有一個(gè)線或模式寄存器,用來將輸出引腳設(shè)置成各具有一個(gè)線或模式寄存器,用來將輸出引腳設(shè)置成“線線或或”方式。任何時(shí)候可讀寫。方式。任何時(shí)候可讀寫。p 如果使能,輸出驅(qū)動(dòng)僅僅低電平有效,如果使能,輸出驅(qū)動(dòng)僅僅低電平有效,邏輯邏輯“1”1”電平不驅(qū)動(dòng)。也適用于電平不驅(qū)動(dòng)。也適用于SPISPI和和SCISCI輸出,允許幾個(gè)串行模塊的多點(diǎn)連接。該位對(duì)用作輸入的引腳輸出,允許幾個(gè)串行模塊的多點(diǎn)連接。該位對(duì)用作輸入的引腳沒有影響。沒有影響。WOMx7:0 WOMx7:0 線或模式選擇位線或模
30、式選擇位v1 = 1 = 輸出緩沖器工作在開漏輸出輸出緩沖器工作在開漏輸出(open-drain output)(open-drain output)狀態(tài)。狀態(tài)。v0 = 0 = 輸出緩沖器工作在推挽輸出輸出緩沖器工作在推挽輸出(push-pull output)(push-pull output)狀態(tài)。狀態(tài)?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例【復(fù)習(xí)【復(fù)習(xí)】單片機(jī)開漏輸出和推挽輸出的區(qū)別單片機(jī)開漏輸出和推挽輸出的區(qū)別p 驅(qū)動(dòng)能力不同驅(qū)動(dòng)能力不同p 推挽輸出推挽輸出(1 1)兩個(gè)參數(shù)相同的)兩個(gè)參數(shù)相同的MOS
31、FETMOSFET分別受兩互補(bǔ)信號(hào)的控制,一個(gè)管子導(dǎo)通時(shí)另一個(gè)截止。分別受兩互補(bǔ)信號(hào)的控制,一個(gè)管子導(dǎo)通時(shí)另一個(gè)截止。(2 2)輸出電阻小,導(dǎo)通損耗小,效率高,能夠驅(qū)動(dòng)大的負(fù)載。單片機(jī)管腳可以直接)輸出電阻小,導(dǎo)通損耗小,效率高,能夠驅(qū)動(dòng)大的負(fù)載。單片機(jī)管腳可以直接驅(qū)動(dòng)發(fā)光二極管、蜂鳴器、甚至更小阻抗的負(fù)載。驅(qū)動(dòng)發(fā)光二極管、蜂鳴器、甚至更小阻抗的負(fù)載。(3 3)可以輸出高、低電平,連接數(shù)字器件。輸出既可以向負(fù)載灌電流,也可以從負(fù))可以輸出高、低電平,連接數(shù)字器件。輸出既可以向負(fù)載灌電流,也可以從負(fù)載抽取電流。載抽取電流。p 開漏輸出開漏輸出(1 1)漏極開路,只能輸出低電平,需接上拉電阻才能得
32、到高電平狀態(tài)。)漏極開路,只能輸出低電平,需接上拉電阻才能得到高電平狀態(tài)。(2 2)適合于吸收型弱電流驅(qū)動(dòng),接上拉電阻后吸收電流的能力比輸出電流的能力強(qiáng)。)適合于吸收型弱電流驅(qū)動(dòng),接上拉電阻后吸收電流的能力比輸出電流的能力強(qiáng)?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ8 8中斷使能寄存器中斷使能寄存器PIExPIExp PORTPPORTP、PORTHPORTH和
33、和PORTJPORTJ三個(gè)端口具有中斷功能,且各有一個(gè)中斷使能寄存三個(gè)端口具有中斷功能,且各有一個(gè)中斷使能寄存器,允許或禁止相應(yīng)端口對(duì)有效邊沿的中斷。任何時(shí)候可讀寫。器,允許或禁止相應(yīng)端口對(duì)有效邊沿的中斷。任何時(shí)候可讀寫。v PIEx7:0 PIEx7:0 中斷使能位中斷使能位 1 = 1 = 允許中斷。允許中斷。 0 = 0 = 禁止中斷禁止中斷 ( (中斷被屏蔽中斷被屏蔽) )。p 復(fù)位后,中斷使能寄存器值為復(fù)位后,中斷使能寄存器值為$00$00,所有端口中斷關(guān)閉。,所有端口中斷關(guān)閉。 基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口
34、模塊及其應(yīng)用實(shí)例5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJ9 9中斷標(biāo)志寄存器中斷標(biāo)志寄存器PIFxPIFx p PORTPPORTP、PORTHPORTH和和PORTJPORTJ三個(gè)端口各有一個(gè)中斷標(biāo)志寄存器三個(gè)端口各有一個(gè)中斷標(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)上升沿或下降沿時(shí),中斷標(biāo)志寄存器中的對(duì)應(yīng)位被置位。沿時(shí),中斷標(biāo)志寄存器中的對(duì)應(yīng)位
35、被置位。p 任何時(shí)候可讀寫任何時(shí)候可讀寫PIFxPIFx寄存器。為了清除中斷標(biāo)志,需要向該寄存器中的寄存器。為了清除中斷標(biāo)志,需要向該寄存器中的相應(yīng)位寫相應(yīng)位寫“1”1”。寫。寫“0”0”無效。無效。v PIFx7: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)有效邊沿?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2 5.2
36、 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.1 PORTT5.2.1 PORTT、PORTSPORTS、PORTMPORTM、PORTPPORTP、PORTHPORTH和和PORTJPORTJpPORTPPORTP、PORTHPORTH和和PORTJPORTJ三個(gè)端口的中斷向量地址及相三個(gè)端口的中斷向量地址及相關(guān)標(biāo)志位、控制位。關(guān)標(biāo)志位、控制位。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2 5.2 輸入輸入/ /輸出端口寄存器及設(shè)置輸出端口寄存器及設(shè)置5.2.2 PORTA5.2.2 PORT
37、A、PORTBPORTB、PORTEPORTE和和PORTKPORTK基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK1 1數(shù)據(jù)方向寄存器數(shù)據(jù)方向寄存器DDRxDDRxp 【作用【作用】決定端口引腳為輸出還是輸入。決定端口引腳為輸出還是輸入。v DDRx7-0 DDRx7-0 數(shù)據(jù)方向位數(shù)據(jù)方向位 1 = 1 = 設(shè)置相應(yīng)的設(shè)置相應(yīng)的I/OI/O引腳為輸出。引腳為輸出。 0 = 0 = 設(shè)置相應(yīng)的設(shè)置相應(yīng)的I/O
38、I/O引腳為輸入。引腳為輸入。v DDRxDDRx各位的數(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ù)寄存器對(duì)應(yīng)位的狀態(tài)。(輸出),讀取的是相應(yīng)端口數(shù)據(jù)寄存器對(duì)應(yīng)位的狀態(tài)。p 復(fù)位后,數(shù)據(jù)方向寄存器的值為復(fù)位后,數(shù)據(jù)方向寄存器的值為0 x000 x00,引腳默認(rèn)為輸入。,引腳默認(rèn)為輸入。p 【注意【注意】端口端口E E是一個(gè)特例,其是
39、一個(gè)特例,其最低兩位只能為輸入口,最低兩位只能為輸入口,端口端口E E的數(shù)據(jù)方向寄存器的數(shù)據(jù)方向寄存器DDREDDRE最低兩位是只讀位,讀這兩位始終返回最低兩位是只讀位,讀這兩位始終返回“0”0”?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK2 2I/O I/O 寄存器寄存器PORTxPORTx p I/OI/O寄存器中寄存器中8 8位對(duì)應(yīng)每個(gè)端口中的相應(yīng)引腳,當(dāng)位對(duì)應(yīng)每個(gè)端口中的相應(yīng)引腳,當(dāng)PORTxPOR
40、Tx寄存器處于內(nèi)存分配表中時(shí),寄存器處于內(nèi)存分配表中時(shí),任何時(shí)候可讀寫。任何時(shí)候可讀寫。 如果某端口的引腳被定義為輸出,寫入如果某端口的引腳被定義為輸出,寫入I/OI/O寄存器中的數(shù)值會(huì)從對(duì)應(yīng)引腳輸出;寄存器中的數(shù)值會(huì)從對(duì)應(yīng)引腳輸出; 如果某端口的引腳被定義為輸入,讀取如果某端口的引腳被定義為輸入,讀取I/OI/O寄存器獲得對(duì)應(yīng)的引腳電平。寄存器獲得對(duì)應(yīng)的引腳電平。p 為了確保讀到為了確保讀到PORTxPORTx引腳的當(dāng)前值,寫引腳的當(dāng)前值,寫DDRxDDRx寄存器后至少等待一個(gè)周期,再讀寄存器后至少等待一個(gè)周期,再讀PORTxPORTx寄存器。寄存器。p 【注意【注意】端口端口E E是一個(gè)特
41、例,其是一個(gè)特例,其最低兩位只能為輸入最低兩位只能為輸入,端口,端口E E的的I/OI/O寄存器寄存器PORTEPORTE最最低兩位是只讀位。低兩位是只讀位?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK3 3上拉電阻控制寄存器上拉電阻控制寄存器PUCR PUCR p PORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK都有內(nèi)置上拉電阻,都有內(nèi)置上拉電阻,共用一個(gè)控制寄存器共
42、用一個(gè)控制寄存器PUCRPUCR。p 【作用【作用】選擇端口引腳的上拉電阻,第選擇端口引腳的上拉電阻,第7 7、4 4、1 1和和0 0位分別對(duì)應(yīng)端口位分別對(duì)應(yīng)端口K K、E E、B B和和A A。p 當(dāng)當(dāng)PUCRPUCR寄存器處于內(nèi)存分配表中時(shí),任何時(shí)候可讀寫。寄存器處于內(nèi)存分配表中時(shí),任何時(shí)候可讀寫。 p 上拉根據(jù)每個(gè)端口來分配,適用于當(dāng)前配置為輸入的相應(yīng)端口的任何引上拉根據(jù)每個(gè)端口來分配,適用于當(dāng)前配置為輸入的相應(yīng)端口的任何引腳。當(dāng)相應(yīng)引腳為輸出時(shí),這些位無效腳。當(dāng)相應(yīng)引腳為輸出時(shí),這些位無效( (上拉設(shè)置不起作用上拉設(shè)置不起作用) )。p 單片機(jī)復(fù)位后,端口單片機(jī)復(fù)位后,端口K K和端
43、口和端口E E的上拉電阻使能,端口的上拉電阻使能,端口B B和端口和端口A A的上拉電的上拉電阻禁止。阻禁止。p 在擴(kuò)展和外設(shè)模式下,在擴(kuò)展和外設(shè)模式下,PUCRPUCR寄存器不在片內(nèi)寄存器映射區(qū)內(nèi)。寄存器不在片內(nèi)寄存器映射區(qū)內(nèi)。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK3 3上拉電阻控制寄存器上拉電阻控制寄存器PUCRPUCRPUPKE PUPKE 端口端口K K上拉使能位上拉使能位1 = 1 = 端口端
44、口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上拉使能位上拉使能位1 = 1
45、= 端口端口A A所有輸入引腳上拉允許。所有輸入引腳上拉允許。0 = 0 = 端口端口A A上拉禁止。上拉禁止?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK4 4驅(qū)動(dòng)控制寄存器驅(qū)動(dòng)控制寄存器RDRIVRDRIVp PORTAPORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK都可以設(shè)置端口輸出驅(qū)動(dòng)能力,都可以設(shè)置端口輸出驅(qū)動(dòng)能力,共用一個(gè)控制寄存共用一個(gè)控制寄存器器RDRIVRDRI
46、V。p 【作用【作用】選擇相關(guān)端口引腳的降功率驅(qū)動(dòng),選擇相關(guān)端口引腳的降功率驅(qū)動(dòng),第第7 7、4 4、1 1和和0 0位分別對(duì)應(yīng)端口位分別對(duì)應(yīng)端口K K、E E、B B和和A A。p 當(dāng)當(dāng)RDRIVRDRIV寄存器處于內(nèi)存分配表中時(shí),任何時(shí)候可讀寫。寄存器處于內(nèi)存分配表中時(shí),任何時(shí)候可讀寫。 如果某個(gè)控制位為如果某個(gè)控制位為“1”1”,對(duì)應(yīng)端口輸出驅(qū)動(dòng)能力降低;,對(duì)應(yīng)端口輸出驅(qū)動(dòng)能力降低; 如果某個(gè)控制位為如果某個(gè)控制位為“0”0”,對(duì)應(yīng)端口為正常驅(qū)動(dòng)輸出方式。,對(duì)應(yīng)端口為正常驅(qū)動(dòng)輸出方式。p 在擴(kuò)展和外設(shè)模式下,在擴(kuò)展和外設(shè)模式下,RDRIVRDRIV寄存器不在片內(nèi)映射區(qū)內(nèi)。寄存器不在片內(nèi)映
47、射區(qū)內(nèi)?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.2.2 PORTA5.2.2 PORTA、PORTBPORTB、PORTEPORTE和和PORTKPORTK4 4驅(qū)動(dòng)控制寄存器驅(qū)動(dòng)控制寄存器RDRIVRDRIVRDPK - RDPK - 端口端口K K降功率驅(qū)動(dòng)控制位降功率驅(qū)動(dòng)控制位1 = 1 = 允許所有端口允許所有端口K K輸出引腳低功耗驅(qū)動(dòng)。輸出引腳低功耗驅(qū)動(dòng)。0 = 0 = 允許所有端口允許所有端口K K輸出引腳全功率驅(qū)動(dòng)。輸出引腳全功率驅(qū)動(dòng)。RDPE - RDPE - 端口端口E E降功率驅(qū)動(dòng)控制位降
48、功率驅(qū)動(dòng)控制位1 = 1 = 允許所有端口允許所有端口E E輸出引腳低功耗驅(qū)動(dòng)。輸出引腳低功耗驅(qū)動(dòng)。0 = 0 = 允許所有端口允許所有端口E E輸出引腳全功率驅(qū)動(dòng)。輸出引腳全功率驅(qū)動(dòng)。RDPB - RDPB - 端口端口B B降功率驅(qū)動(dòng)控制位降功率驅(qū)動(dòng)控制位1 = 1 = 允許所有端口允許所有端口B B輸出引腳低功耗驅(qū)動(dòng)。輸出引腳低功耗驅(qū)動(dòng)。0 = 0 = 允許所有端口允許所有端口B B輸出引腳全功率驅(qū)動(dòng)。輸出引腳全功率驅(qū)動(dòng)。RDPA - RDPA - 端口端口A A降功率驅(qū)動(dòng)控制位降功率驅(qū)動(dòng)控制位1 = 1 = 允許所有端口允許所有端口A A輸出引腳低功耗驅(qū)動(dòng)。輸出引腳低功耗驅(qū)動(dòng)。0 =
49、0 = 允許所有端口允許所有端口A A輸出引腳全功率驅(qū)動(dòng)。輸出引腳全功率驅(qū)動(dòng)?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3 5.3 輸入輸入/ /輸出端口應(yīng)用實(shí)例輸出端口應(yīng)用實(shí)例 5.3.1 5.3.1 輸出設(shè)備輸出設(shè)備LEDLED控制實(shí)例控制實(shí)例pPORTBPORTB連接連接8 8只只LEDLED,編程實(shí)現(xiàn),編程實(shí)現(xiàn)明燈流水明燈流水操作。操作。p點(diǎn)亮點(diǎn)亮LEDLED燈,并使蜂鳴器發(fā)聲。燈,并使蜂鳴器發(fā)聲?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊
50、及其應(yīng)用實(shí)例5.3 5.3 輸入輸入/ /輸出端口應(yīng)用實(shí)例輸出端口應(yīng)用實(shí)例 5.3.2 5.3.2 輸入設(shè)備撥碼開關(guān)讀取實(shí)例輸入設(shè)備撥碼開關(guān)讀取實(shí)例p使用使用PORTAPORTA讀取讀取8 8位撥碼開關(guān)狀態(tài)。位撥碼開關(guān)狀態(tài)。p根據(jù)撥位開關(guān)的狀態(tài),點(diǎn)亮或熄滅對(duì)應(yīng)的根據(jù)撥位開關(guān)的狀態(tài),點(diǎn)亮或熄滅對(duì)應(yīng)的LEDLED燈。燈?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)輸出端口模塊及其應(yīng)用實(shí)例例5.3 5.3 輸入輸入/ /輸出端口應(yīng)用實(shí)例輸出端口應(yīng)用實(shí)例 5.3.3 5.3.3 鍵盤接口設(shè)計(jì)鍵盤接口設(shè)計(jì)p 鍵盤多由多個(gè)按鍵組成,排列成陣列鍵盤多由多個(gè)按
51、鍵組成,排列成陣列。p 當(dāng)當(dāng)無無鍵按下時(shí),行和列線之間不相連,若第鍵按下時(shí),行和列線之間不相連,若第N N行第行第M M列列的鍵被按下,的鍵被按下,則則第第N N行與第行與第M M列的線被接通。列的線被接通。p 如果在列線上加上信號(hào),如果在列線上加上信號(hào),根據(jù)行線的狀態(tài),便可根據(jù)行線的狀態(tài),便可得知是否有鍵按下。得知是否有鍵按下。p 如果如果逐列逐列加上信號(hào)加上信號(hào)(掃(掃描列線)描列線),讀取讀取行線行線狀狀態(tài)態(tài),便便可判斷按鍵的位可判斷按鍵的位置。置?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3.3 5.3.
52、3 鍵盤接口設(shè)計(jì)鍵盤接口設(shè)計(jì)p用用PORTAPORTA擴(kuò)展的擴(kuò)展的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)相“與與”,然后查詢,然后查詢RAMRAM中的表格便可判斷被按中的表格便可判斷
53、被按下鍵的位置。下鍵的位置?!炬I盤掃描方法【鍵盤掃描方法】逐行逐行/ /逐列掃描法逐列掃描法反轉(zhuǎn)法反轉(zhuǎn)法【去抖動(dòng)方法【去抖動(dòng)方法】硬件法硬件法采用斯密特觸采用斯密特觸發(fā)器發(fā)器軟件法軟件法利用軟件延時(shí)利用軟件延時(shí)基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3.3 5.3.3 鍵盤接口設(shè)計(jì)鍵盤接口設(shè)計(jì)p【硬件去抖動(dòng)處理【硬件去抖動(dòng)處理】利用兩級(jí)帶利用兩級(jí)帶斯密特觸發(fā)電路的反相器。斯密特觸發(fā)電路的反相器。p【軟件去抖動(dòng)處理【軟件去抖動(dòng)處理】當(dāng)判斷有鍵按下后,軟件延時(shí)當(dāng)判斷有鍵按下后,軟件延時(shí)20ms20ms,再次掃描確認(rèn)
54、。,再次掃描確認(rèn)。基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3 5.3 輸入輸入/ /輸出端口應(yīng)用實(shí)例輸出端口應(yīng)用實(shí)例5.3.3 5.3.3 鍵盤接口設(shè)計(jì)鍵盤接口設(shè)計(jì)基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3.3 5.3.3 鍵盤接口設(shè)計(jì)鍵盤接口設(shè)計(jì)p 采用數(shù)碼管顯示驅(qū)動(dòng)及鍵盤掃描管理芯片采用數(shù)碼管顯示驅(qū)動(dòng)及鍵盤掃描管理芯片ZLG7289BZLG7289B擴(kuò)展擴(kuò)展4 44 4鍵盤。鍵盤。 【芯片特點(diǎn)【芯片特點(diǎn)】p 可直接驅(qū)動(dòng)可直接
55、驅(qū)動(dòng)8 8位共陰式數(shù)碼管(或位共陰式數(shù)碼管(或6464只獨(dú)立只獨(dú)立LEDLED)。)。p 可掃描管理多達(dá)可掃描管理多達(dá)6464只按鍵。只按鍵。p 內(nèi)部含有譯碼器,可直接接收內(nèi)部含有譯碼器,可直接接收BCDBCD碼或碼或1616進(jìn)制碼,進(jìn)制碼,并具有兩種譯碼方式。并具有兩種譯碼方式。p 具有多種控制指令,如消隱、閃爍、左移、右移、具有多種控制指令,如消隱、閃爍、左移、右移、段尋址等。段尋址等。p 采用采用SPISPI串行總線與微控制器接口。串行總線與微控制器接口。p 利用片選信號(hào),利用片選信號(hào),ZLG7289BZLG7289B可以并接在一起使用,實(shí)可以并接在一起使用,實(shí)現(xiàn)多于現(xiàn)多于8 8位的顯示
56、或多于位的顯示或多于6464只按鍵的應(yīng)用。只按鍵的應(yīng)用?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3.3 5.3.3 鍵盤接口設(shè)計(jì)鍵盤接口設(shè)計(jì)p通過通過IRQIRQ中斷來檢測(cè)是否有按鍵被按下。中斷來檢測(cè)是否有按鍵被按下?;贖CS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3.4 LED5.3.4 LED顯示接口設(shè)計(jì)顯示接口設(shè)計(jì)p 【LEDLED ( (Light Emitting Diode) )】數(shù)碼管】數(shù)碼管,用發(fā)光二極管顯示字段的顯示器
57、,用發(fā)光二極管顯示字段的顯示器。p 【LEDLED顯示器類型顯示器類型】共陰極、共陽極。共陰極、共陽極。p 共陰極共陰極將將8 8個(gè)發(fā)光二極管陰極連在一起作為公共端。個(gè)發(fā)光二極管陰極連在一起作為公共端。p 共陽極共陽極將將8 8個(gè)發(fā)光二極管的陽極連在一起作為公共端。個(gè)發(fā)光二極管的陽極連在一起作為公共端。 (a) 外形結(jié)構(gòu)與引腳外形結(jié)構(gòu)與引腳(共陰共陰) (b) 共陰極共陰極 (C) 共陽極共陽極基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3.4 LED5.3.4 LED顯示接口設(shè)計(jì)顯示接口設(shè)計(jì)p數(shù)碼管的公共端相當(dāng)于
58、一個(gè)位選數(shù)碼管的公共端相當(dāng)于一個(gè)位選開關(guān),一般稱為開關(guān),一般稱為位碼開關(guān)位碼開關(guān)。當(dāng)該。當(dāng)該位處于高電平時(shí),數(shù)碼管全滅;位處于高電平時(shí),數(shù)碼管全滅;當(dāng)該位處于低電平時(shí),根據(jù)二極當(dāng)該位處于低電平時(shí),根據(jù)二極管陽極(一般稱為管陽極(一般稱為段碼段碼或字形碼)或字形碼)的電平狀態(tài),確定段碼是否點(diǎn)亮。的電平狀態(tài),確定段碼是否點(diǎn)亮。 段碼高電平時(shí),該段碼亮;段碼高電平時(shí),該段碼亮; 段碼低電平時(shí),該段碼不亮。段碼低電平時(shí),該段碼不亮。p輸出相應(yīng)的段碼值得到輸出相應(yīng)的段碼值得到LEDLED顯示器顯示器的字形。的字形。 基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其
59、應(yīng)用實(shí)例輸出端口模塊及其應(yīng)用實(shí)例5.3 5.3 輸入輸入/ /輸出端口應(yīng)用實(shí)例輸出端口應(yīng)用實(shí)例 5.3.4 LED5.3.4 LED顯示接口設(shè)計(jì)顯示接口設(shè)計(jì)p 【LEDLED顯示驅(qū)動(dòng)方式顯示驅(qū)動(dòng)方式】靜態(tài)驅(qū)動(dòng),動(dòng)態(tài)掃描。靜態(tài)驅(qū)動(dòng),動(dòng)態(tài)掃描。 靜態(tài)驅(qū)動(dòng)方式靜態(tài)驅(qū)動(dòng)方式每個(gè)每個(gè)LEDLED顯示器用一個(gè)顯示器用一個(gè)I/OI/O端口驅(qū)動(dòng)。端口驅(qū)動(dòng)。【特點(diǎn)【特點(diǎn)】亮度較高,功耗也較大,占用亮度較高,功耗也較大,占用I/OI/O端口多,適合顯示位數(shù)少的場(chǎng)合。端口多,適合顯示位數(shù)少的場(chǎng)合。 動(dòng)態(tài)掃描驅(qū)動(dòng)方式動(dòng)態(tài)掃描驅(qū)動(dòng)方式將多個(gè)顯示器的段碼將多個(gè)顯示器的段碼同名端同名端連接在一起(并聯(lián)),連接在一起(并聯(lián))
60、,由位碼分別控制各顯示器,利用眼睛的余輝暫留效應(yīng)實(shí)現(xiàn)顯示。只要保由位碼分別控制各顯示器,利用眼睛的余輝暫留效應(yīng)實(shí)現(xiàn)顯示。只要保證一定的顯示刷新頻率,其顯示效果與靜態(tài)顯示相當(dāng)。證一定的顯示刷新頻率,其顯示效果與靜態(tài)顯示相當(dāng)。l 用一個(gè)用一個(gè)I/OI/O端口驅(qū)動(dòng)段碼,用一個(gè)端口驅(qū)動(dòng)段碼,用一個(gè)I/OI/O端口實(shí)現(xiàn)位碼控制。端口實(shí)現(xiàn)位碼控制?!咎攸c(diǎn)【特點(diǎn)】占用占用I/OI/O端口少,功耗也小,電路簡化,成本降低,適合顯示位數(shù)端口少,功耗也小,電路簡化,成本降低,適合顯示位數(shù)的場(chǎng)合。的場(chǎng)合。 基于HCS12的嵌入式系統(tǒng)設(shè)計(jì)第第5 5章章 S12S12輸入輸入/ /輸出端口模塊及其應(yīng)用實(shí)例輸出端口模塊及
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度醫(yī)療設(shè)備研發(fā)與應(yīng)用合同3篇
- 二零二五版私募股權(quán)投資基金股權(quán)收購合同2篇
- 二零二五版企業(yè)股權(quán)激勵(lì)項(xiàng)目執(zhí)行與改進(jìn)合同2篇
- 二零二五年度房產(chǎn)投資分期付款合同模板3篇
- 二零二五年蔬菜種子進(jìn)口合同2篇
- 二零二五年度酒樓市場(chǎng)拓展與股權(quán)激勵(lì)方案合同2篇
- 二零二五年模具生產(chǎn)項(xiàng)目質(zhì)量保證合同3篇
- 二零二五版智能家居貨款擔(dān)保合同范本3篇
- 二零二五年船舶抵押借款合同范本修訂版3篇
- 二零二五年戶外活動(dòng)用安全護(hù)欄租賃合同3篇
- 分割不動(dòng)產(chǎn)的協(xié)議書(2篇)
- 菏澤2024年山東菏澤市中心血站招聘15人筆試歷年典型考點(diǎn)(頻考版試卷)附帶答案詳解版
- 供熱通風(fēng)與空調(diào)工程施工企業(yè)生產(chǎn)安全事故隱患排查治理體系實(shí)施指南
- 精-品解析:廣東省深圳市羅湖區(qū)2023-2024學(xué)年高一上學(xué)期期末考試化學(xué)試題(解析版)
- 記賬實(shí)操-基金管理公司的會(huì)計(jì)處理分錄示例
- 中國慢性便秘診治指南
- 兒童流感診療及預(yù)防指南(2024醫(yī)生版)
- 沐足行業(yè)嚴(yán)禁黃賭毒承諾書
- 2025年蛇年紅色喜慶中國風(fēng)春節(jié)傳統(tǒng)節(jié)日介紹
- 河北省承德市2023-2024學(xué)年高一上學(xué)期期末物理試卷(含答案)
- 山西省2024年中考物理試題(含答案)
評(píng)論
0/150
提交評(píng)論