




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第第7 7章章 單片機并行單片機并行I/OI/O擴展擴展主要內容主要內容7.1 單片機單片機I/O擴展基礎知識擴展基礎知識7.2 可編程并行接口芯片可編程并行接口芯片82557.3 鍵盤接口技術鍵盤接口技術7.4 LED顯示器接口技術顯示器接口技術7.5 打印機接口技術打印機接口技術*7.6 鍵盤顯示器接口鍵盤顯示器接口8279 7.1 單片機單片機I/O擴展基礎知識擴展基礎知識7.1.1 I/O接口電路的功能接口電路的功能1. 速度協調速度協調n面對各種設備的速度差異,單片機無法按固定的時序以面對各種設備的速度差異,單片機無法按固定的時序以同步方式進行同步方式進行I/O操作,只能以異步方式進
2、行,也就是操作,只能以異步方式進行,也就是只只有在確認設備已為數據傳送做好準備的前提下才能進行有在確認設備已為數據傳送做好準備的前提下才能進行I/O操作。為此需要接口電路產生狀態信號或中斷請求信操作。為此需要接口電路產生狀態信號或中斷請求信號,表明設備是否做好準備。即通過接口電路來進行單號,表明設備是否做好準備。即通過接口電路來進行單片機與外部設備之間的速度協調。片機與外部設備之間的速度協調。2. 輸出數據鎖存輸出數據鎖存n由于由于CPU與外設速度的不一致,需要有接口電路把輸出與外設速度的不一致,需要有接口電路把輸出數據先鎖存起來,待輸出設備為接收數據做好準備后,數據先鎖存起來,待輸出設備為接
3、收數據做好準備后,再傳送數據。這就是接口電路的數據鎖存功能。再傳送數據。這就是接口電路的數據鎖存功能。3. 數據總線隔離數據總線隔離n總線上可能連接著多個數據源(輸入設備)和多個總線上可能連接著多個數據源(輸入設備)和多個數據負載(輸出設備)。一對源和負載的數據傳送數據負載(輸出設備)。一對源和負載的數據傳送正在進行時,所有其他不參與的設備在電性能上必正在進行時,所有其他不參與的設備在電性能上必須與總線隔開。這就是接口電路的總線隔離功能。須與總線隔開。這就是接口電路的總線隔離功能。n為了實現總線隔離,需要有接口電路提供具有三態為了實現總線隔離,需要有接口電路提供具有三態緩沖功能的三態緩沖電路。
4、緩沖功能的三態緩沖電路。4. 數據轉換數據轉換n外部設備種類繁多,不同設備之間的性能差異很大,外部設備種類繁多,不同設備之間的性能差異很大,信號形式也多種多樣。單片機只能使用數字信號,信號形式也多種多樣。單片機只能使用數字信號,如果外部設備所提供或需要的不是電壓形式的數字如果外部設備所提供或需要的不是電壓形式的數字信號,就需要有接口電路進行轉換,其中包括模信號,就需要有接口電路進行轉換,其中包括模/數數轉換和數轉換和數/模轉換等。模轉換等。7.1.1 I/O接口電路的功能接口電路的功能5. 增強驅動能力增強驅動能力n通過接口電路為輸出數據提供足夠的驅通過接口電路為輸出數據提供足夠的驅動功率,以
5、保證外部設備能正常、平穩動功率,以保證外部設備能正常、平穩地工作。地工作。7.1.1 I/O接口電路的功能接口電路的功能7.1.2 關于接口電路的更多說明關于接口電路的更多說明1. 接口與接口電路接口與接口電路n“接口接口” (Interface),具有界面、相互聯系等含義,通),具有界面、相互聯系等含義,通過接口能使兩個被連接的器件協同工作。單片機接口,則過接口能使兩個被連接的器件協同工作。單片機接口,則是研究單片機與外部設備之間的連接問題。單片機與外部是研究單片機與外部設備之間的連接問題。單片機與外部設備之間接口界面的硬件電路稱為接口電路,或稱為設備之間接口界面的硬件電路稱為接口電路,或稱
6、為I/O接接口電路。口電路。2. 口或端口口或端口n為了實現為了實現I/O接口電路的界面功能,在接口電路中應包含一接口電路的界面功能,在接口電路中應包含一些寄存器,通常把接口電路中這些已編址并能進行讀或些寄存器,通常把接口電路中這些已編址并能進行讀或(和)寫操作的寄存器稱為端口或簡稱口(和)寫操作的寄存器稱為端口或簡稱口(Port)。)。7.1 單片機單片機I/O擴展基礎知識擴展基礎知識3. I/O接口的特點接口的特點 異步性。平時單片機與外部設備按各自的時序并行異步性。平時單片機與外部設備按各自的時序并行工作,只有在需要時外部設備才通過接口電路接受工作,只有在需要時外部設備才通過接口電路接受
7、單片機的控制。單片機的控制。 實時性。單片機對外部設備的控制以查詢或中斷方實時性。單片機對外部設備的控制以查詢或中斷方式進行,以便最大限度地實現控制的實時化。式進行,以便最大限度地實現控制的實時化。 與設備無關性。接口芯片不一定是專用的,同一個與設備無關性。接口芯片不一定是專用的,同一個接口芯片通過軟件設置可為多種設備實現接口。接口芯片通過軟件設置可為多種設備實現接口。7.1.2 關于接口電路的更多說明關于接口電路的更多說明4. 并行接口與串行接口并行接口與串行接口n 按數據傳輸方式的不同,接口有并行與串行之分,即按數據傳輸方式的不同,接口有并行與串行之分,即并行接口與串行接口。并行接口與串行
8、接口。 7.1.3 I/O編址技術編址技術n兩種兩種I/O編址方式:編址方式: 統一編址方式和獨立編址方式。統一編址方式和獨立編址方式。n統一編址方式:把統一編址方式:把I/O接口中的寄存器與外擴展的數據接口中的寄存器與外擴展的數據存儲器中的存儲單元同等對待,合在一起使用同一個存儲器中的存儲單元同等對待,合在一起使用同一個外擴展地址空間。外擴展地址空間。n獨立編址方式:把獨立編址方式:把I/O與存儲器分開進行編址。這樣,與存儲器分開進行編址。這樣,在一個單片機系統中就形成了兩個獨立的地址空間:在一個單片機系統中就形成了兩個獨立的地址空間: 存儲器地址空間和存儲器地址空間和I/O地址空間。地址空
9、間。n在在80C51單片機系統中,采用統一編址方式。單片機系統中,采用統一編址方式。7.1 單片機單片機I/O擴展基礎知識擴展基礎知識7.1.4 單片機單片機I/O控制方式控制方式1. 無條件方式無條件方式n無條件傳送也稱為同步程序傳送。只有那些能一直無條件傳送也稱為同步程序傳送。只有那些能一直為為I/O操作作好準備的設備,才能使用無條件傳送方操作作好準備的設備,才能使用無條件傳送方式。在進行無條件式。在進行無條件I/O操作時,無需測試設備的狀態,操作時,無需測試設備的狀態,可以根據需要隨時進行可以根據需要隨時進行I/O操作。操作。n無條件傳送適用于兩類設備的無條件傳送適用于兩類設備的I/O操
10、作。一類是具有操作。一類是具有常駐的或變化緩慢的數據信號的設備。例如,機械常駐的或變化緩慢的數據信號的設備。例如,機械開關、指示燈、發光二極管、數碼管等,另一類則開關、指示燈、發光二極管、數碼管等,另一類則是工作速度非常快,足以和單片機同步工作的設備,是工作速度非常快,足以和單片機同步工作的設備,例如數例如數/模轉換器模轉換器(DAC)。)。7.1 單片機單片機I/O擴展基礎知識擴展基礎知識7.1.4 單片機單片機I/O控制方式控制方式2. 查詢方式查詢方式n查詢方式又稱為有條件傳送方式,在查詢方式又稱為有條件傳送方式,在I/O操作操作前,先要檢測設備的狀態,只有在確認設備前,先要檢測設備的狀
11、態,只有在確認設備已已“準備好準備好”的情況下,單片機才能執行的情況下,單片機才能執行I/O操作。檢測也稱為操作。檢測也稱為“查詢查詢”,所以就把這種,所以就把這種有條件的有條件的I/O控制方式稱為查詢方式。控制方式稱為查詢方式。n為實現查詢方式的為實現查詢方式的I/O控制,需要由接口電路控制,需要由接口電路提供設備狀態,接口電路中的狀態寄存器或提供設備狀態,接口電路中的狀態寄存器或狀態位就是為此而準備的。查詢方式只適用狀態位就是為此而準備的。查詢方式只適用于規模比較小的單片機系統。于規模比較小的單片機系統。l 中斷方式與查詢方式的主要區別在于如何知道外部中斷方式與查詢方式的主要區別在于如何知
12、道外部設備是否為設備是否為I/O操作做好準備。采用中斷方式進行操作做好準備。采用中斷方式進行I/O控制時,當設備做好準備之后,就向單片機發出中控制時,當設備做好準備之后,就向單片機發出中斷請求。單片機接收到中斷請求之后作出響應,暫斷請求。單片機接收到中斷請求之后作出響應,暫停正在執行的原程序,而轉去執行中斷服務程序,停正在執行的原程序,而轉去執行中斷服務程序,通過執行中斷服務程序完成一次通過執行中斷服務程序完成一次I/O操作,然后返回,操作,然后返回,再繼續執行被中斷的原程序。再繼續執行被中斷的原程序。7.1.4 單片機單片機I/O控制方式控制方式3. 中斷方式中斷方式l 中斷方式效率較高,所
13、以在單片機系統中被廣泛采中斷方式效率較高,所以在單片機系統中被廣泛采用。但中斷請求是一種不可預知的隨機事件,所以用。但中斷請求是一種不可預知的隨機事件,所以實現起來對單片機系統的硬件和軟件都有較高的要實現起來對單片機系統的硬件和軟件都有較高的要求。求。 I/O接口接口 數據存儲器數據存儲器 速度協調速度協調*輸出數據鎖存輸出數據鎖存*數據總線隔離數據總線隔離*數據轉換數據轉換*增強驅動能力增強驅動能力*7.1.5 并行并行I/O接口和數據存儲器的比較接口和數據存儲器的比較7.1 單片機單片機I/O擴展基礎知識擴展基礎知識1、功能功能2、控制方式、控制方式 I/O接口接口 數據存儲器數據存儲器無
14、條件方式無條件方式*查詢方式查詢方式*中斷方式中斷方式*7.1.5 I/O接口和數據存儲器的比較接口和數據存儲器的比較3、與單片機的連接信號、與單片機的連接信號 I/O接口接口 數據存儲器數據存儲器數據總線數據總線*讀寫控制信號讀寫控制信號*片選片選*片內地址片內地址選擇選擇I/O端口端口 選擇存儲單元選擇存儲單元7.1.5 I/O接口和數據存儲器的比較接口和數據存儲器的比較7.1 單片機單片機I/O擴展基礎知識擴展基礎知識7.1.6 小結小結1. I/O接口電路的功能:接口電路的功能: 速度協調速度協調 輸出數據鎖存輸出數據鎖存 數據總線隔離數據總線隔離 數據轉換數據轉換 增強驅動能力增強驅
15、動能力2. 一些術語:一些術語: 接口和接口電路接口和接口電路 口或端口口或端口 并行接口與串行接口并行接口與串行接口7.1.6 小結小結3. I/O接口的特點接口的特點 異步性異步性 實時性實時性 與設備無關性與設備無關性4. I/O編址方式:編址方式: 統一編址統一編址 獨立編址獨立編址u 80C51采用統一編址方式采用統一編址方式5.單片機單片機I/O的控制方式:的控制方式: 無條件方式無條件方式 查詢方式查詢方式 中斷方式中斷方式7.1.6 小結小結6. 并行并行I/O接口和數據存儲器的比較接口和數據存儲器的比較 功能多(功能多(5:1) 控制方式多樣(控制方式多樣(3:1) 與單片機
16、的連接信號基本相同與單片機的連接信號基本相同7.2 可編程并行接口芯片可編程并行接口芯片82557.2.1 8255的硬件邏輯結構的硬件邏輯結構7.2.2 8255工作方式工作方式7.2.3 8255的編程內容的編程內容7.2.4 8255接口的應用接口的應用7.2 可編程并行接口芯片可編程并行接口芯片82557.2.1 8255的硬件邏輯結構的硬件邏輯結構n8255的全稱是的全稱是“可編程可編程并行輸入并行輸入/輸出接口芯輸出接口芯片片”,通用性強,使用靈,通用性強,使用靈活,可用于實現活,可用于實現80C51系系列單片機的并行列單片機的并行I/O口擴口擴展。展。n8255是一個是一個40引
17、腳的雙引腳的雙列直插式集成電路芯片列直插式集成電路芯片。8255芯片引腳圖芯片引腳圖n按功能可把按功能可把8255的內的內部結構分為部結構分為3個邏輯電個邏輯電路部分,分別為:路部分,分別為: 口口電路、總線接口電路電路、總線接口電路和控制邏輯電路。和控制邏輯電路。1. 口電路口電路n8255共有共有3個個8位口,其中位口,其中A口和口和B口是單純口是單純的數據口,而的數據口,而C口則既可以作數據口使用,口則既可以作數據口使用,又可以作控制口使用,主要用于實現又可以作控制口使用,主要用于實現A口和口和B口的控制功能。在使用中常把口的控制功能。在使用中常把C口分為兩部口分為兩部分,即分,即C口高
18、位部分(口高位部分(PC7PC4)和)和C口低口低位部分(位部分(PC3PC0)。)。n把把A口和口和C口高位部分合在一起稱為口高位部分合在一起稱為A組;把組;把B口和口和C口低位部分合在一起稱為口低位部分合在一起稱為B組。組。7.2.1 8255的硬件邏輯結構的硬件邏輯結構2. 總線接口電路總線接口電路n總線接口電路用于實現總線接口電路用于實現8255和單片機的信號連和單片機的信號連接,包括:接,包括: 數據總線緩沖器。與數據總線緩沖器。與I/O操作有關的數據、控制操作有關的數據、控制字和狀態信息都是通過該緩沖器進行傳送的。字和狀態信息都是通過該緩沖器進行傳送的。 讀讀/寫控制邏輯。寫控制邏
19、輯。相關的控制信號有:相關的控制信號有: l /CS、A0、A1l /WR、/RDl RESET7.2.1 8255的硬件邏輯結構的硬件邏輯結構3. 控制邏輯電路控制邏輯電路 A組和組和 B組控制電路:包括一個組控制電路:包括一個8位控制寄存位控制寄存器及其相關的控制電路,用于存放編程命令器及其相關的控制電路,用于存放編程命令和實現各口操作控制。和實現各口操作控制。 中斷控制電路:對應中斷控制電路:對應A、B兩個口各有一個中兩個口各有一個中斷觸發器,用于對中斷的允許和禁止進行控斷觸發器,用于對中斷的允許和禁止進行控制。置位為允許,復位為禁止。對兩個觸發制。置位為允許,復位為禁止。對兩個觸發器的
20、置位和復位控制通過口器的置位和復位控制通過口C的有關位進行。的有關位進行。7.2.1 8255的硬件邏輯結構的硬件邏輯結構1. 方式方式0(基本輸入(基本輸入/輸出方式)輸出方式)l 方式方式0適用于無條件數據傳送。兩個適用于無條件數據傳送。兩個8位口(位口(A口和口和B口)口)和兩個和兩個4位口(位口(C口高位部分和口高位部分和C口低位部分)都可以分別口低位部分)都可以分別或同時設置為方式或同時設置為方式0。2. 方式方式1(選通輸入(選通輸入/輸出方式)輸出方式)l 8255的的“選通選通”是通過信號的是通過信號的“問問”與與“答答”,以聯絡,以聯絡方式(或稱握手方式)實現的。所以這種數據
21、傳送方式是方式(或稱握手方式)實現的。所以這種數據傳送方式是有條件的,適用于以查詢或中斷方式進行控制。有條件的,適用于以查詢或中斷方式進行控制。l 在方式在方式1下,下,A口和口和B口是數據口,口是數據口,C口是控制口,用于傳口是控制口,用于傳送和保存數據所需要的聯絡信號,具體的定義見下頁表。送和保存數據所需要的聯絡信號,具體的定義見下頁表。7.2.2 8255工作方式工作方式7.2 可編程并行接口芯片可編程并行接口芯片8255C口聯絡信號定義口聯絡信號定義C口位線口位線方式方式1方式方式2輸入輸入輸出輸出輸入輸入輸出輸出PC7/OBFA/OBFAPC6/ACKA/ACKAPC5IBFAIBF
22、APC4/STBA/STBAPC3INTRAINTRAINTRAINTRAPC2/STBB/ACKBPC1IBFB/OBFBPC0INTRBINTRBIBF: Input Buffer FullOBF: Output Buffer FullSTB: STroBeACK: ACKnowledgeINTR: INTeRrupt8255方式方式1的邏輯組態關系圖的邏輯組態關系圖8255方式方式1下的輸入時序下的輸入時序8255方式方式1下的輸出時序下的輸出時序3. 方式方式2(雙向數據傳送方式)(雙向數據傳送方式)l 方式方式2是在方式是在方式1的基礎上加上雙向傳送功能,只的基礎上加上雙向傳送功能,
23、只有有A口才能選擇這種工作方式,這時口才能選擇這種工作方式,這時A口既能輸入口既能輸入數據又能輸出數據。如果把數據又能輸出數據。如果把A口置于方式口置于方式2下,則下,則B口只能工作于方式口只能工作于方式0。方式。方式2適用于查詢或中斷方適用于查詢或中斷方式的雙向數據傳送。在這種方式下需使用式的雙向數據傳送。在這種方式下需使用C口的口的5位口線作控制線。位口線作控制線。7.2.2 8255工作方式工作方式8255方式方式2的邏輯組態關系圖的邏輯組態關系圖8255方式方式2下的輸出時序下的輸出時序7.2.3 8255的編程內容的編程內容n工作方式命令和工作方式命令和C口口位置位位置位/復位命令。
24、復位命令。1. 工作方式命令工作方式命令n工作方式命令用于工作方式命令用于設定各數據口的工設定各數據口的工作方式及數據傳送作方式及數據傳送方向。命令的最高方向。命令的最高位(位(D7)是標志位,)是標志位,其狀態固定為其狀態固定為1。命。命令格式如右圖所示。令格式如右圖所示。7.2 可編程并行接口芯片可編程并行接口芯片82557.2.3 8255的編程內容的編程內容1. 工作方式命令工作方式命令n對工作方式命令有如下兩點說明:對工作方式命令有如下兩點說明: l A口有口有3種工作方式,而種工作方式,而B口只有兩種工作方式;口只有兩種工作方式;l 在方式在方式1和方式和方式2下,對下,對C口的定
25、義(輸入或輸出)不口的定義(輸入或輸出)不影響作為聯絡信號使用的影響作為聯絡信號使用的C口各位的功能。口各位的功能。7.2 可編程并行接口芯片可編程并行接口芯片82552. C口位置位口位置位/復位命令復位命令l C口的每一位都可以進行置位或復位。對口的每一位都可以進行置位或復位。對C口各位的置口各位的置位或復位由位置位位或復位由位置位/復位命令進行,其格式如下。復位命令進行,其格式如下。7.2 可編程并行接口芯片可編程并行接口芯片82553. 初始化編程初始化編程n初始化的內容就是向控制字寄存器寫入命令。初始化的內容就是向控制字寄存器寫入命令。例如,若對例如,若對8255各口作如下設置:各口
26、作如下設置: A口方式口方式0輸入,輸入,B口方式口方式1輸出,輸出,C口高位部分為輸出低位部分為輸口高位部分為輸出低位部分為輸入。設控制寄存器地址為入。設控制寄存器地址為8003H。按各口的設置要。按各口的設置要求,工作方式命令字為求,工作方式命令字為10010101,即,即95H。則初。則初始化程序段應為:始化程序段應為: MOV DPTR, 8003H MOV A, 95H MOVX DPTR, A7.2.3 8255的編程內容的編程內容7.2.4 8255接口的應用接口的應用1. 8255的的I/O控制方式控制方式 (1)無條件方式)無條件方式l 以方式以方式0進行數據輸入進行數據輸入
27、/輸出,就是無條件傳送方式。輸出,就是無條件傳送方式。 (2)查詢方式)查詢方式l 在方式在方式1和方式和方式2下,都可以使用查詢方式進行數據下,都可以使用查詢方式進行數據傳送。數據輸入時,供查詢的狀態信號是傳送。數據輸入時,供查詢的狀態信號是IBF(對應(對應A口為口為IBFA,B口為口為IBFB)。因為傳送這些信號的)。因為傳送這些信號的口線分別為口線分別為PC5和和PC1,所以查詢時就是對輸入這些,所以查詢時就是對輸入這些口線的狀態進行測試。數據輸出時,供查詢的狀態信口線的狀態進行測試。數據輸出時,供查詢的狀態信號是號是OBF(對應(對應A口為口為OBFA,B口為口為OBFB),被),被
28、測試的口線為測試的口線為PC7和和PC1。7.2 可編程并行接口芯片可編程并行接口芯片8255 (3)中斷方式)中斷方式l 在方式在方式1和方式和方式2下,都可以使用中斷方式進行數據下,都可以使用中斷方式進行數據傳送。中斷請求信號是傳送。中斷請求信號是INTR(對應(對應A口為口為INTRA,B口為口為INTRB),傳送中斷請求信號的口線分別為),傳送中斷請求信號的口線分別為PC3和和PC0。2. 端口選擇及讀端口選擇及讀/寫控制寫控制l 8255共有共有4個可尋址端口:個可尋址端口: A口、口、B口、口、C口和控制寄口和控制寄存器,由存器,由CS和地址和地址A0、A1的狀態組合進行選擇,由的
29、狀態組合進行選擇,由讀讀/寫信號寫信號RD和和WR進行端口操作控制,具體設置見下進行端口操作控制,具體設置見下頁表。頁表。7.2.4 8255接口的應用接口的應用7.2.4 8255接口的應用接口的應用/CSA1A0/RD/WR選擇端口選擇端口端口操作端口操作00001A口口讀端口讀端口A00101B口口讀端口讀端口B01001C口口讀端口讀端口C00010A口口寫端口寫端口A00110B口口寫端口寫端口B01010C口口寫端口寫端口C01110控制寄存器控制寄存器寫控制命令寫控制命令1-數據總線緩沖器輸出端數據總線緩沖器輸出端呈高阻抗呈高阻抗7.3.1 鍵掃描和鍵碼生成鍵掃描和鍵碼生成7.3
30、.2 用用8255實現鍵盤接口實現鍵盤接口7.3 鍵盤接口技術鍵盤接口技術7.3.1 鍵掃描和鍵碼生成鍵掃描和鍵碼生成1. 鍵盤舉例鍵盤舉例l 為說明鍵盤的工作原理,以一個為說明鍵盤的工作原理,以一個8行行4列的矩陣鍵盤為列的矩陣鍵盤為例,如下頁圖所示。例,如下頁圖所示。l 鍵盤上有行線和列線之分,本鍵盤共有鍵盤上有行線和列線之分,本鍵盤共有8條行線和條行線和4條列條列線。在每個行線和列線的交點處有一個鍵,由于行線與線。在每個行線和列線的交點處有一個鍵,由于行線與列線分別與鍵的不同端相連,平時鍵處于斷開狀態,所列線分別與鍵的不同端相連,平時鍵處于斷開狀態,所以行線和列線互不相通。接口時,行線一
31、端接輸出口,以行線和列線互不相通。接口時,行線一端接輸出口,另一端懸空;而列線一端經電阻接另一端懸空;而列線一端經電阻接+5 V電源,另一端接電源,另一端接輸入口。由于列線通過電阻與輸入口。由于列線通過電阻與+5 V電源相連,所以沒有電源相連,所以沒有按鍵時列線的狀態為高電平。按鍵時列線的狀態為高電平。7.3 鍵盤接口技術鍵盤接口技術 鍵盤掃描示意圖鍵盤掃描示意圖7.3.1 鍵掃描和鍵碼生成鍵掃描和鍵碼生成2. 鍵碼鍵碼n鍵盤上的每個按鍵都有一定的意義或功能。為了區鍵盤上的每個按鍵都有一定的意義或功能。為了區分各個不同的按鍵,就需要對它們進行編碼,這就分各個不同的按鍵,就需要對它們進行編碼,這
32、就是鍵碼。鍵盤上按鍵的編碼沒有統一標準,存在多是鍵碼。鍵盤上按鍵的編碼沒有統一標準,存在多種多樣的按鍵編碼方法。種多樣的按鍵編碼方法。n最常用的編碼方法是以鍵在鍵盤矩陣中的位置,從最常用的編碼方法是以鍵在鍵盤矩陣中的位置,從0開始按自然數順序進行編碼,鍵碼以十六進制數表開始按自然數順序進行編碼,鍵碼以十六進制數表示。示。n下表是鍵盤掃描示意圖中各鍵的鍵碼,左邊第一列下表是鍵盤掃描示意圖中各鍵的鍵碼,左邊第一列的內容對應各行的掃描碼,最后一行的內容是對應的內容對應各行的掃描碼,最后一行的內容是對應列有閉合鍵時的狀態碼(或稱返回碼)。表中內容列有閉合鍵時的狀態碼(或稱返回碼)。表中內容為鍵碼,注意
33、鍵碼排列的規律性。為鍵碼,注意鍵碼排列的規律性。7.3.1 鍵掃描和鍵碼生成鍵掃描和鍵碼生成鍵碼表鍵碼表7FH1FH17H0FH07HBFH1EH16H0EH06HDFH1DH15H0DH05HEFH1CH14H0CH04HF7H1BH13H0BH03HFBH1AH12H0AH02HFDH19H11H09H01HFEH18H10H08H00H7HBHDHEH3. 鍵盤掃描鍵盤掃描n識別閉合鍵的方法:行掃描法,簡稱掃識別閉合鍵的方法:行掃描法,簡稱掃描法。描法。n軟件實現過程:軟件實現過程:1.查看是否有閉合鍵;查看是否有閉合鍵;2.判定閉合鍵,計算出對應的鍵碼。判定閉合鍵,計算出對應的鍵碼。7
34、.3.1 鍵掃描和鍵碼生成鍵掃描和鍵碼生成4. 鍵盤掃描程序流程鍵盤掃描程序流程5. 去抖動去抖動每當確認有鍵被按下后,都應當進行去抖動處理。因為每當確認有鍵被按下后,都應當進行去抖動處理。因為鍵在被按下時,由于機械觸點的彈性以及電壓突跳等原鍵在被按下時,由于機械觸點的彈性以及電壓突跳等原因,在觸點閉合及釋放的瞬間將出現電壓抖動,如下圖。因,在觸點閉合及釋放的瞬間將出現電壓抖動,如下圖。鍵閉合和斷開時的電壓抖動示例鍵閉合和斷開時的電壓抖動示例7.3.1 鍵掃描和鍵碼生成鍵掃描和鍵碼生成5. 去抖動去抖動l 去抖動處理有軟件和硬件兩種方法。軟件去抖動去抖動處理有軟件和硬件兩種方法。軟件去抖動方法
35、是采用時間延遲以躲過抖動(延時時間為方法是采用時間延遲以躲過抖動(延時時間為1020 ms即可);即可);l 硬件方法是在鍵盤中附加去抖動電路,以抑制抖硬件方法是在鍵盤中附加去抖動電路,以抑制抖動的產生,具體可使用雙穩態電路或濾波電路等,動的產生,具體可使用雙穩態電路或濾波電路等,但硬件去抖動需增加成本。但硬件去抖動需增加成本。7.3.2 用用8255實現鍵盤接口實現鍵盤接口7.3 鍵盤接口技術鍵盤接口技術1. 接口電路邏輯圖接口電路邏輯圖l以以8255作作84鍵盤的接口為例。鍵盤的接口為例。A口為輸出口,接鍵盤口為輸出口,接鍵盤行線;行線;C口為輸入口,以口為輸入口,以PC3PC0接鍵盤的接
36、鍵盤的4條列線;條列線;如下圖。如下圖。2. 判斷有無閉合鍵的子程序判斷有無閉合鍵的子程序n判斷有無閉合鍵的子程序為判斷有無閉合鍵的子程序為KS,其執行結果為:,其執行結果為: 有閉有閉合鍵,則合鍵,則(A)0;無閉合鍵,則;無閉合鍵,則(A)0。假定。假定 A口地址口地址為為8000H,則,則B口地址為口地址為8001H,C口地址為口地址為8002H,控,控制寄存器地址為制寄存器地址為8003H。程序如下:。程序如下:KS: KS: MOV DPTR, #8000HMOV DPTR, #8000HCLR ACLR A;A;A口送口送00H00HMOVX DPTR, AMOVX DPTR, A
37、INC DPTRINC DPTR; ;建立建立C C口地址口地址INC DPTRINC DPTRMOVX A, DPTRMOVX A, DPTR; ;讀讀C C口口CPL ACPL A;A;A取反取反, ,若無鍵按下,則全為若無鍵按下,則全為0 0ANL A, #0FHANL A, #0FH; ;屏蔽屏蔽A A高半字節高半字節RETRET7.3.2 用用8255實現鍵盤接口實現鍵盤接口3. 鍵盤掃描程序鍵盤掃描程序n在單片機應用系統中常常是鍵盤和顯示器同時存在,在單片機應用系統中常常是鍵盤和顯示器同時存在,因此,可以把鍵盤程序和顯示程序配合起來使用,因此,可以把鍵盤程序和顯示程序配合起來使用,
38、即把顯示程序作為鍵盤程序中的一個延時子程序使即把顯示程序作為鍵盤程序中的一個延時子程序使用。這樣既不耽誤顯示驅動,又可以起到鍵盤定時用。這樣既不耽誤顯示驅動,又可以起到鍵盤定時掃描的作用。掃描的作用。n假定本系統中顯示器驅動程序為假定本系統中顯示器驅動程序為DIR,執行時間約為,執行時間約為6 ms。鍵盤掃描程序如下,程序中。鍵盤掃描程序如下,程序中R2為行掃描碼寄為行掃描碼寄存器,存器,R4為行計數器。為行計數器。7.3.2 用用8255實現鍵盤接口實現鍵盤接口KEY: ACALL KS;檢查是否有鍵閉合檢查是否有鍵閉合JNZ LK1;A非非0,則轉移,則轉移ACALL DIR;驅動顯示器(
39、延時驅動顯示器(延時6 ms)AJMP KEYLK1: ACALL DIR;有鍵閉合有鍵閉合2次驅動顯示器次驅動顯示器ACALL DIR;延時延時12 ms進行去抖動進行去抖動ACALL KS;再檢查是否有鍵閉合再檢查是否有鍵閉合JZ KEY;無鍵閉合,轉無鍵閉合,轉KEY7.3.2 用用8255實現鍵盤接口實現鍵盤接口MOV R2, #FEH;掃描初值送掃描初值送R2MOV R4, #00H;掃描行號送掃描行號送R4LK4:MOV DPTR, #8000H;建立建立A口地址口地址MOV A, R2MOVX DPTR, A;掃描初值送掃描初值送PA口口, 掃描開始掃描開始INC DPTRINC
40、 DPTR;指向指向C口口MOVX A, DPTR;讀讀C口口JB ACC.0, LONE;ACC.01, 第第0列無鍵閉合列無鍵閉合, 轉轉LONEMOV A, #00H;裝第裝第0列狀態碼起始值列狀態碼起始值AJMP LKP;轉計算鍵碼轉計算鍵碼LONE:JB ACC.1, LTWO;ACC.11, 第第1列無鍵閉合列無鍵閉合, 轉轉LTWOMOV A, #08H;裝第裝第1列狀態碼起始值列狀態碼起始值7.3.2 用用8255實現鍵盤接口實現鍵盤接口AJMP LKPLTWO:JB ACC.2, LTHR ;ACC.21,第第2列無閉合列無閉合,轉轉LTHRMOV A, #10H;裝第裝第2
41、列狀態碼起始值列狀態碼起始值AJMP LKPLTHR:JB ACC.3, NEXT;ACC.31,第第3列無鍵閉合,則轉列無鍵閉合,則轉NEXTMOV A, #18H;裝第裝第3列狀態碼起始值列狀態碼起始值LKP:ADD A, R4;計算鍵碼計算鍵碼PUSH ACC;保護鍵碼保護鍵碼LK3:ACALL DIR;延時延時6 msACALL KS;查鍵是否繼續閉合查鍵是否繼續閉合,若閉合再延時若閉合再延時JNZ LK3ACALL DIR;去抖動去抖動ACALL DIRACALL KSJNZ LK3POP ACC;若鍵起若鍵起,則鍵碼送則鍵碼送ARET7.3.2 用用8255實現鍵盤接口實現鍵盤接口
42、NEXT:INC R4;掃描行號加掃描行號加1MOV A, R2JNB ACC.7, KND;第第7位為位為0,已掃完最后一行,則轉已掃完最后一行,則轉KNDRL A;掃描碼循環左移一位掃描碼循環左移一位MOV R2, AJMP LK4;掃描下一行掃描下一行KND:AJMP KEY;一輪掃描完畢一輪掃描完畢,開始新一輪掃描開始新一輪掃描7.3.2 用用8255實現鍵盤接口實現鍵盤接口n8255的初始化的初始化7.4 LED顯示器接口技術顯示器接口技術n在單片機應用系統中,最簡單、最常見的顯示在單片機應用系統中,最簡單、最常見的顯示器件是器件是LED顯示器。顯示器。 8段段LED顯示器顯示器7.
43、4 LED顯示器接口技術顯示器接口技術7.4.1 LED顯示器概述顯示器概述nLED是是Light Emiting Diode(發光二極管發光二極管)的的縮寫,發光二極管是能將電信號轉換為光信縮寫,發光二極管是能將電信號轉換為光信號的電致發光器件。號的電致發光器件。n由條形由條形LED組成的組成的“8”字形字形LED顯示器稱之顯示器稱之為數碼管。數碼管有為數碼管。數碼管有7段和段和8段之分。段之分。7段數碼段數碼管由管由7個發光二極管組成,而個發光二極管組成,而8段數碼管則是段數碼管則是在在7段發光二極管的基礎上再加一個圓點型發段發光二極管的基礎上再加一個圓點型發光二極管(在圖中以光二極管(在
44、圖中以dp表示),用于顯示小表示),用于顯示小數點。數點。8段數碼管中發光二極管的排列形狀如段數碼管中發光二極管的排列形狀如上頁圖(上頁圖(a)所示。)所示。nLED的特點:的特點: 發光響應快,亮度強,高頻特性好;而且隨著材料的不發光響應快,亮度強,高頻特性好;而且隨著材料的不同,數碼管還能發出紅、黃、綠、藍、橙等多種顏色的同,數碼管還能發出紅、黃、綠、藍、橙等多種顏色的光。光。 機械性能好,體積小,重量輕,價格低廉;能與機械性能好,體積小,重量輕,價格低廉;能與CMOS和和TTL電路配合使用;使用壽命長,可達電路配合使用;使用壽命長,可達10-100萬小時。萬小時。 工作電壓低,驅動電流適
45、中。每段工作電流為工作電壓低,驅動電流適中。每段工作電流為510 mA,7段段LED全亮需要電流為全亮需要電流為3570 mA。這樣大的電。這樣大的電流需要由驅動電路提供,因此,使用時要注意數碼管的流需要由驅動電路提供,因此,使用時要注意數碼管的驅動問題。驅動問題。 控制簡單。控制簡單。7.4.1 LED顯示器概述顯示器概述n公共引腳的連接方法:公共引腳的連接方法: 共陰極接法。把發光二極管的陰極連在一起構共陰極接法。把發光二極管的陰極連在一起構成陰極公共引腳,如前圖成陰極公共引腳,如前圖(b)所示。使用時陰極所示。使用時陰極公共引腳接地,這樣陽極引腳上加高電平的發公共引腳接地,這樣陽極引腳上
46、加高電平的發光二極管就導通點亮,而加低電平的則不點亮。光二極管就導通點亮,而加低電平的則不點亮。 共陽極接法。把發光二極管的陽極連在一起作共陽極接法。把發光二極管的陽極連在一起作為陽極公共引腳,如前圖為陽極公共引腳,如前圖(c)所示。使用時陽極所示。使用時陽極公共引腳接公共引腳接+5 V。這樣陰極引腳上加低電平的。這樣陰極引腳上加低電平的發光二極管即可導通點亮,而加高電平的則不發光二極管即可導通點亮,而加高電平的則不點亮。點亮。7.4.1 LED顯示器概述顯示器概述7.4 LED顯示器接口技術顯示器接口技術7.4.2 LED顯示器的顯示原理顯示器的顯示原理1.段碼段碼n所謂段碼就是為數碼管顯示
47、提供的各段狀態組合,所謂段碼就是為數碼管顯示提供的各段狀態組合,即字形代碼。即字形代碼。7段數碼管的段碼為段數碼管的段碼為7位,位,8段數碼段數碼管的段碼為管的段碼為8位,用一個字節即可表示。在段碼位,用一個字節即可表示。在段碼字節中代碼位與各段發光二極管的對應關系如下:字節中代碼位與各段發光二極管的對應關系如下: 段碼段碼D7D6D5D4D3D2D1D0段名段名dpgfedcban顯示的數字(十六進制)與段碼值的關系顯示的數字(十六進制)與段碼值的關系顯示顯示數字數字共陽極段共陽極段碼碼共陰極段共陰極段碼碼顯示顯示數字數字共陽極段共陽極段碼碼共陰極共陰極段碼段碼0C0H3FH990H6FH1
48、F9H06HA88H77H2A4H5BHB83H7CH3B0H4FHCC6H39H499H66HDA1H5EH592H6DHE86H79H682H7DHF8EH71H7F8H07H滅滅FFH00H880H7FH2. LED顯示器的動態顯示方式顯示器的動態顯示方式lLED顯示器多采用動態顯示方式,全部數碼管共用一套段顯示器多采用動態顯示方式,全部數碼管共用一套段碼驅動電路。顯示時通過位控信號采用掃描的方法逐位地碼驅動電路。顯示時通過位控信號采用掃描的方法逐位地循環點亮各位數碼管。循環點亮各位數碼管。LED顯示器動態顯示需要為各位提顯示器動態顯示需要為各位提供段碼以及相應的位控制,此即通常所說的段
49、控和位控。供段碼以及相應的位控制,此即通常所說的段控和位控。 7.4.2 LED顯示器的顯示原理顯示器的顯示原理4位數碼管動態顯示示意圖位數碼管動態顯示示意圖7.4.3 LED顯示器接口顯示器接口1. 計時器實驗的計時器實驗的LED顯示器接口電路顯示器接口電路7.4 LED顯示器接口技顯示器接口技術術7.4.3 LED顯示器接口顯示器接口1. 計時器實驗的計時器實驗的LED顯示器接口電路顯示器接口電路7.4 LED顯示器接口技顯示器接口技術術SN75451B:雙外設驅動器:雙外設驅動器7.4.3 LED顯示器接口顯示器接口n動態控制要用程序實現動態控制要用程序實現 在程序中通過偽指令設置段碼表
50、,表長在程序中通過偽指令設置段碼表,表長16個個字節,存放十六進制數的段碼;字節,存放十六進制數的段碼; 在內部在內部RAM中設置顯示緩沖區,其存儲單元中設置顯示緩沖區,其存儲單元個數與個數與LED顯示器的位數相同,以存放要顯顯示器的位數相同,以存放要顯示的數據;示的數據; 為了保證顯示亮度,在掃描過程中,應在每為了保證顯示亮度,在掃描過程中,應在每一位數碼管上都駐留一段時間(約一位數碼管上都駐留一段時間(約1 ms),),以使數碼管穩定地點亮一段時間,以保證其以使數碼管穩定地點亮一段時間,以保證其顯示亮度。為此在掃描過程中,位與位之間顯示亮度。為此在掃描過程中,位與位之間要加一段延遲時間。要
51、加一段延遲時間。2. LED顯示驅動程序顯示驅動程序設顯示數據存放在內部設顯示數據存放在內部RAM從從30H開始的開始的6個單個單元中,顯示驅動程序可設計如下。元中,顯示驅動程序可設計如下。DIR: MOV R0, #30H;建立顯示緩沖區首址建立顯示緩沖區首址MOV R3, #0FEH;位控碼初值,從右邊開始顯示位控碼初值,從右邊開始顯示LOOP:MOV A, #0FFH;消隱消隱MOV DPTR, #0FF20HMOVX DPTR, AMOV A, R0;取出顯示數據取出顯示數據MOV DPTR, #DSEG;查表取段碼查表取段碼 MOVC A, A+DPTR7.4.3 LED顯示器接口顯
52、示器接口MOV DPTR, #0FF21H ;輸出段控碼輸出段控碼MOVX DPTR, AMOV A, R3;輸出位碼輸出位碼MOV DPTR, #0FF20HMOVX DPTR, AACALL DL1MS;延時延時1msINC R0;轉向下一緩沖單元轉向下一緩沖單元MOV A, R3JNB ACC.5, LD1;判斷是否到最高位。到,則返回判斷是否到最高位。到,則返回RL A;不到,向顯示器高位移位不到,向顯示器高位移位MOV R3, A;位控碼送位控碼送R37.4.3 LED顯示器接口顯示器接口2. LED顯示驅動程序顯示驅動程序AJMP LOOP;繼續掃描繼續掃描LD1: RETDSEG
53、:DB 0C0H;字形代碼表字形代碼表DB 0F9H,0A4H,0B0H,7.4.3 LED顯示器接口顯示器接口2. LED顯示驅動程序顯示驅動程序7.5 打印機接口技術打印機接口技術7.5.1 微型打印機概述微型打印機概述n單片機系統的打印機多采用價格便宜、接口方便的微型打印單片機系統的打印機多采用價格便宜、接口方便的微型打印機。機。nP系列微型打印機具有標準的系列微型打印機具有標準的Centronic接口,與單片機之接口,與單片機之間可以通過一條間可以通過一條20芯的扁平電纜線進行連接,信號為:芯的扁平電纜線進行連接,信號為: DB7DB0數據線,是單向的,即從單片機傳向打印機。數據線,是
54、單向的,即從單片機傳向打印機。/STB數據選通信號,低電平有效的打印機輸入信號。該信號數據選通信號,低電平有效的打印機輸入信號。該信號有效時,打印數據送入打印機,在其上升沿時,將數據鎖存。有效時,打印數據送入打印機,在其上升沿時,將數據鎖存。BUSY打印機打印機“忙忙”信號,打印機輸出的狀態信號。信號,打印機輸出的狀態信號。/ACK打印機應答信號,低電平有效。該信號是打印機已處理打印機應答信號,低電平有效。該信號是打印機已處理完所接收數據后的應答,亦即通知單片機可以發送新數據。完所接收數據后的應答,亦即通知單片機可以發送新數據。/ERR出錯信號,打印機輸出。出錯信號,打印機輸出。7.5 打印機
55、接口技術打印機接口技術1. 單片機與打印機直接連接單片機與打印機直接連接n打印機的接口信號比較少,所以打印機的接口比較簡單,打印機的接口信號比較少,所以打印機的接口比較簡單,甚至可以不用接口電路而直接與單片機連接,如下圖。甚至可以不用接口電路而直接與單片機連接,如下圖。7.5.2 打印機接口打印機接口7.5.2 打印機接口打印機接口1. 單片機與打印機直接連接單片機與打印機直接連接n打印機的打印機的8根數據線直接與根數據線直接與80C51的的P1口線連接,用口線連接,用一根地址線一根地址線(P2.7)去選通)去選通80C51的讀信號的讀信號/RD和寫信和寫信號號/WR,選通后的,選通后的/WR
56、信號接打印機的信號接打印機的STB信號,選信號,選通后的通后的RD信號去控制打印機的信號去控制打印機的BUSY(送口線送口線P1.7)。)。n在打印機中只有一個數據寄存器,用于寄存打印數據。在打印機中只有一個數據寄存器,用于寄存打印數據。只使用地址線只使用地址線P2.7,數據口的地址為,數據口的地址為7000H7FFFH。n對于上圖中的連接形式,只適宜使用查詢方式控制打對于上圖中的連接形式,只適宜使用查詢方式控制打印,即對印,即對BUSY信號的狀態進行查詢。若要使用中斷信號的狀態進行查詢。若要使用中斷方式,應以方式,應以ACK信號作中斷請求,即把信號作中斷請求,即把ACK信號與信號與80C51
57、的外中斷引腳的外中斷引腳INT0或或INT1相連。相連。7.5 打印機接口技術打印機接口技術7.5.2 打印機接口打印機接口2. 使用使用8255作打印機接口作打印機接口n如果如果80C51的口資源比較緊張,則需要使用接口芯片與打印機的口資源比較緊張,則需要使用接口芯片與打印機接口,例如,用接口,例如,用8255作打印機接口芯片,如下圖。作打印機接口芯片,如下圖。7.5 打印機接口技術打印機接口技術2. 使用使用8255作打印機接口作打印機接口n8255與與80C51之間的連接采用線選法進行之間的連接采用線選法進行I/O編址,以編址,以P0.7作為作為8255的片選信號。以兩個最低位地址對應接
58、的片選信號。以兩個最低位地址對應接8255的口選擇端的口選擇端A0和和A1,如果把沒連接的地址都假定為,如果把沒連接的地址都假定為1,則,則8255的的A口地址為口地址為7CH,B口地址為口地址為7DH,C口地址口地址為為7EH,控制寄存器地址為,控制寄存器地址為7FH。n對于對于8255與打印機之間的連接,采用查詢方式進行打印與打印機之間的連接,采用查詢方式進行打印驅動控制,則驅動控制,則8255與打印機的連線內容為:與打印機的連線內容為: A口口(PA7PA0)與打印機數據線相連,傳送打印數)與打印機數據線相連,傳送打印數據。據。C口的口的PC0提供數據選通信號,接打印機的提供數據選通信號
59、,接打印機的STB端,端,進行打印數據送打印機的選通控制。進行打印數據送打印機的選通控制。C口的口的PC7接打印機的接打印機的BUSY端,以端,以BUSY作為狀態查作為狀態查詢信號。詢信號。7.5 打印機接口技術打印機接口技術7.5.2 打印機接口打印機接口2. 使用使用8255作打印機接口作打印機接口n8255工作方式命令字為工作方式命令字為10001010(8AH)。)。A口為方式口為方式0輸出,輸出,D6D5D4000;B口不用,設置為方式口不用,設置為方式0輸入,輸入,D2D101;C口高口高4位輸入,位輸入,D31;C口低口低4位輸出,位輸出,D00。7.5 打印機接口技術打印機接口
60、技術7.5.2 打印機接口打印機接口3. 打印驅動程序打印驅動程序n為編寫打印驅動程序,在內部為編寫打印驅動程序,在內部RAM中設置緩沖區,中設置緩沖區,存放打印數據。設置兩個參數,一個是緩沖區首存放打印數據。設置兩個參數,一個是緩沖區首址址R1,另一個是緩沖區長度,另一個是緩沖區長度R2。送給打印機的。送給打印機的選通信號選通信號STB是一個負脈沖,在打印數據從單片是一個負脈沖,在打印數據從單片機送到機送到8255后,在后,在PC0端產生一個負脈沖。端產生一個負脈沖。3. 打印驅動程序打印驅動程序PT:MOV R0, #7FH;控制寄存器地址控制寄存器地址MOV A, #8AH;工作方式命令
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年下沉市場消費金融場景化應用與行業變革分析報告
- 藥品配送登記管理制度
- 藥害事件檢測管理制度
- 藥店庫房安全管理制度
- 藥店藥品儲存管理制度
- 設備信息資料管理制度
- 設備夜班工作管理制度
- 設備拆除維修管理制度
- 設備檢驗維修管理制度
- 設備維護巡檢管理制度
- 學校信息化建設十五五規劃方案
- 2025年保險專業知識能力測試題及答案
- 小學民法典主題班會教案
- 2025年江西報業傳媒集團招聘題庫帶答案分析
- 公司退貨流程管理制度
- MHD多相流體系統的建模與仿真-洞察闡釋
- 辦公軟件實操試題及詳細答案
- 礦產品銷售合作合同范本
- 米粉項目可行性分析報告
- 江蘇省常州市聯盟學校2022-2023學年高一下學期期末聯考數學試題(學生版)
- 2024-2025學年七年級下冊歷史期末測試模擬卷(統編版)(含答案)
評論
0/150
提交評論