




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
項目
密碼鍵盤的實現項目介紹項目:密碼鍵盤的實現任務1:單片機PC機串行通信的實現任務2:數碼管顯示矩陣鍵盤鍵值任務3:密碼鍵盤的設計密碼鍵盤項目:綜合應用了數碼管、按鍵、串行通訊等模塊。項目整體設計任務
單片機PC機串行通信的實現任務介紹實現單片機通過USB串口與PC機的連接;完成USB轉串行口通信電路的搭建;完成方式1下雙機串行通信的程序編寫;實現通過串口,將26個字母’A’~’Z’發送出去。單片機PC機串行通信的實現單片機PC機串行通信的實現5.1.1數據通信的概念計算機CPU與外部設備之間、計算機與計算機之間的信息交換稱為數據通信。基本的通信方式有兩種:并行通信和串行通信。并行通信:所傳送數據的各位同時進行發送或接收。如圖5.2所示,并行方式傳輸一個字節(假定是8位二進制數10010011B)時,需要8條數據線,D0~D7是同時進行傳送的。這種方式的特點是通信速度快,但傳輸線多,價格較貴,適合近距離傳輸。串行通信:所傳送數據的各位按順序一位一位地發送或接收。圖5.3表示同樣的數據進行串行通信,只需要一條數據線。最初傳遞的是D0位,然后是D1位,最后傳遞D7位。這種方式的特點是傳輸速度慢,但因數據傳輸線少,線路結構簡單、抗干擾能力強,特別適用于遠距離通信。單片機PC機串行通信的實現任務硬件設計5.1.2同步串行通信和異步串行通信1.同步通信在同步通信中,發送器和接收器由同一個時鐘控制,發送方在時鐘的控制下逐位發送數據,接收方在時鐘的控制下逐位接收數據,由此實現收發雙方的嚴格同步;發送端在發送數據之前,首先發送1~2個字節的特殊數據(稱為同步字符),接收方一旦檢測到規定的同步字符就開始接收,發送方接著連續按順序傳送n個字節的數據。當n個字節的數據發送完畢,發送校驗碼。同步通信如圖5.4所示。2.異步串行通信:異步串行通信的數據或字符是一幀一幀地傳送的,一幀數據由1位低電平的起始位、5~8位數據位、1位奇偶校驗位,1~2位高電平的終止位組成。起始位:在通信線上沒有數據傳送時處于邏輯“1”狀態,當發送器要發送一幀數據時,首先發出一個邏輯“0”信號,這個邏輯低電平就是起始位。起始位通過通信線傳給接收器,當接收器檢測到這個邏輯低電平后,就開始準備接收數據位信號。因此起始位表示一幀數據傳送的開始。數據位:緊跟在起始位后的是數據位。數據位的位數可以是5、6、7、8位,傳輸時低位在先,高位在后。奇偶校驗位:串行通信用于遠距離數據傳送時,受到的干擾較大,為了保證數據傳送的可靠性,可在每幀數據的數據位后,加上奇偶校驗位。奇校驗:發送字符中(包括校驗位內)含“1”的個數為奇數。偶校驗:發送字符中(包括校驗位內)含“1”的個數為偶數。在異步通信中,數據按圖5.5的格式一幀接一幀地傳送。在發送的間隙,即空閑時,通信線路總是處于邏輯“1”(高電平)狀態,每個數據幀(字符)的傳送均以邏輯“0”(低電平)開始。異步串行通信的線路比較簡單,但是每一幀中的位數比較少,而且還要有啟始位、終止位等用于同步的位,所以傳送的效率不高、速度比較慢,而同步方式在數據傳送時省去了起始位和停止位,一幀可以連續傳送若干個字節,所以其速度高于異步傳送,但對硬件結構要求較高。5.1.3通信方向串行通信有單工通信、半雙工通信和全雙工通信3種方式。單工通信:數據只能單方向地從一端向另一端傳送。半雙工通信:數據可以雙向傳送,但任一時刻只能向一個方向傳送,即分時雙向傳送數據。全雙工通信:數據可同時向兩個方向傳送,全雙工通信效率最高,適用于計算機之間的通信。5.1.4波特率波特率:通信中對數據傳送速率的規定,指每秒傳送二進制數據的位數,單位為位/秒(bit/s)。例如:在某異步串行通信中,每傳送一個字符需要10位(1位起始位、8個數據位、1位停止位),如果采用波特率為4800波特進行串行通信,則每秒可以傳送480個字符。在串行通信中,收、發雙方必須按照同樣的速率進行串行通信,即收發雙方采用相同的波特率。在串行傳輸中,二進制數據序列是以數字信號波形的形式出現的;發送時,在發送時鐘作用下將發送移位寄存器的數據串行移位輸出;接收時,在接收時鐘的作用下將通信線上傳來的數據串行移入移位寄存器。發送時鐘和接收時鐘也可稱為移位時鐘,產生移位時鐘的電路稱為波特率發生器。為了提高采樣分辨率,準確地測定數據位的上升沿或下降沿,時鐘頻率總是高于波特率的若干倍,這個倍數稱為波特率因子。在單片機中發送/接收時鐘可以由系統時鐘fosc產生,其波特率因子取為12、32、64,由于fosc為常數,這種方式也稱為固定波特率方式;發送/接收時鐘也可以由定時器T1產生,只要改變定時器的計數初值,就能改變由T1產生的時鐘頻率,因此稱為可變波特率方式。5.1.5通信線的連接根據傳輸線路的電氣特性,串行通信的傳輸速率隨傳輸距離的增加而降低,通信距離不同,電路的連接方式也不相同。如果兩片單片機相距很近,或在同一塊PCB板上,通信雙方的連接只需3根信號線:TXD(串行數據發送線)、RXD(串行數據接收線)和GND(地線),直接以TTL電平連接,如圖5.7所示。通常需將TTL電平轉換為RS232電平,以提高信號的幅度,增加傳輸距離,如圖5.8所示,這種連接方式最大距離一般不超過15m。5.1.6RS-232簡介RS-232是一種串行通信標準,是由美國電機工業協會(EIA)為了利用電話線及調制解調器進行數據通信而制定的,它對信號的功能、電氣特性、連接器等都作了明確的規定。由于RS-232早期不是專為計算機通信設計的,因此有25針D型連接器和9針D型連接器,目前的PC機采用的都是9針D型連接器。這里僅對9針D型連接器進行說明。1.RS-232的信號
RS-232除了基本的數據收發線TXD、RXD外,還有用于收發雙方聯絡、協調的握手信號。(1)基本的數據傳送引腳
TXD:數據輸出端,串行數據由此送出。
RXD:數據輸入端,串行數據由此輸入。
GND:信號地線。在串行通信中,最簡單的通信只需連接這3根線。在PC機與PC機之間,PC機與單片機之間、單片機與單片機之間的數據通信大多采用這種連接方式。(2)握手信號
RTS:請求發送信號,輸出。
CTS:清除傳送,是對RTS的響應信號,輸入。
DSR:數據通信準備就緒,輸入。
DTR:數據終端就緒,表明計算機已做好接收準備,輸出。
DCD:數據載波檢測,輸入。以上握手信號在和調制/解調器連接時使用,為便于理解,我們舉例如下:當一臺PC機與調制解調器相連,要向遠方發送數據時,如果PC機作好了發送準備,就用RTS信號通知調制解調器;當調制解調器也作好發送數據的準備,就向PC機發出CTS信號,RTS和CTS這對握手信號溝通后,就可以進行串行數據發送了。當PC機要從遠方接收數據時,如果PC機作好了接受準備,就發出DTR信號通知調制解調器;當調制解調器也作好接收數據的準備就向PC機發出DSR信號,DTR和DSR這對握手信號溝通后,就可以進行串行數據接收了。2.
接口的電氣特性RS-232采用的是EIA電平,信號線上的電壓為負邏輯關系:邏輯1對應的電壓為-3V~-15V邏輯0對應的電壓為+3V~+15V介于-3V~+3V之間的電壓,低于-15V或高于+15V的電壓是沒有意義的。3.
電平轉換電路RS-232的EIA電平是以正/負電壓來表示邏輯0/1的,與TTL電路以低/高電平表示邏輯0/1不同。因此為了實現與TTL器件的連接,必須在EIA電平與TTL電平之間進行電平轉換。為此半導體公司特別為RS-232制造了用于信號電平轉換的專用集成電路,常見的型號有:MAX232、TSC232、ICL232等,它們的引腳及特性是兼容的,可以相互之間代換使用。MAX232芯片內部具有電壓倍增電路,只需+5V電源供電,外接4個電容器,使用非常方便。如圖5.10所示,該芯片可連接兩對收發線,既能將兩路TTL電平(T1IN、T2IN)轉換成RS232電平(T1OUT、T2OUT)送到傳輸線上,又能將傳輸線上的兩路RS232電平(R1IN、R2IN)轉換成TTL電平(R1OUT、R2OUT)。4.
單片機與PC機之間的連接在許多應用場合,由單片機構成的自動控制系統、智能儀器往往需要與PC機進行數據通信。PC機提供的兩個RS-232串行口COM1、COM2是EIA電平,而單片機的串行數據收發線RXD、TXD都是TTL電平,因此單片機需使用MAX232芯片進行電平轉換,通過串行電纜線與PC機相連接,如圖5.11所示。5.1.7單片機通過USB串口與PC機連接目前在筆記本電腦上基本上已不配置9針的RS-232接口,取而代之的是即插即用的USB接口,一些芯片生產商提供了USB轉串口的接口芯片,比如PL2303HX、CH340G,通過這類芯片,將USB接口轉換為串行口后與單片機連接,同時如果單片機系統功耗不大的話,還可以通過USB接口向單片機供電,這樣反而較傳統的RS-232連接方式更加方便5.1.8認識STC15單片機的串行口1STC15單片機串行口結構STC15W4K61S4系列單片機具有4個采用UART工作方式的全雙工異步串行通信接口(串口1、串口2、串口3和串口4)。這里主要介紹串口1的使用,串口1的兩個緩沖器共用的地址碼是99H;串口1的兩個緩沖器統稱串行通信特殊功能寄存器SBUF。串口1有4種工作方式,其中兩種方式的波特率是可變的,另兩種是固定的,以供不同應用場合選用。用戶可用軟件設置不同的波特率和選擇不同的工作方式。主機可通過查詢或中斷方式對接收/發送進行程序處理,使用十分靈活。STC15W4K61S4系列單片機串行口對應的硬件部分是TxD和RxD。串口1可以在3組引腳之間進行切換。通過設置特殊功能寄存器
AUXR1/P_SW1中的位
S1_
S1和S1_S0兩位決定。如圖5.14所示,設有A、B兩臺單片機串行通信,A機發送、B機接收。A機的CPU將數據寫入發送SBUF,就啟動了發送過程,按設定的波特率,每來一個移位脈沖,SBUF中的數據便移出一位,按先低位后高位的順序一位一位地將數據移到TXD引腳上,當A機的一幀數據發送完畢(發送SBUF移空),硬件電路自動將發送中斷標志TI置1,向CPU發出中斷請求,請求CPU將下一個數據寫入發送SBUF。與此同時B機按設定的波特率,每來一個移位脈沖,就會將RXD引腳上的數據移入SBUF,這樣先低位后高位,直到一幀數據接收完成(接收SBUF滿),硬件電路自動將RI標志置1,向CPU發中斷請求,請求CPU及時取走剛剛收到的數據。2串行口的控制寄存器(1)串行通信控制寄存器SCONMCS-51單片機串行口的工作方式、接收和發送控制及串行口的狀態標志都是由寄存器SCON來控制和指示。其格式如下:位地址9FH9EH9DH9CH9BH9AH99H98H位名SM0/FESM1SM2RENTB8RB8TIRISM0/FE、SM1:當PCON寄存器中的SMOD0位為1時,SM0/FE用于幀錯誤檢測,當檢測到一個無效停止位時,通過UART接收器設置該位,它必須由軟件清零。當PCON寄存器中的SMOD0位為0時,SM0/FE、SM1兩位決定了串口通信的工作方式,如下表所示:SM0/FESM1工作方式功能波特率0008位的移位寄存器fosc/12或fosc/20118位的UART由定時器T1的溢出率確定1029位的UARTfosc/32或fosc/641139位的UART由定時器T1的溢出率確定SM2:是多機通信控制位。通常應把該位置為“0”;在串口方式2和方式3,進行多機通信時,該位需要置成“1”。REN:允許接收位REN=1時,允許接收數據;REN=0時,禁止接收數據。TB8:發送數據的第9位在方式2、方式3,TB8的內容是要發送數據的第9位,其值由用戶通過軟件設置。在雙機通信時,TB8一般作為奇偶校驗位使用;在多機通信時,常以TB8的狀態表示主機發送的是地址幀還是數據幀,一般約定:TB8=0為數據幀,TB8=1為地址幀。RB8:接收數據第9位在方式2、方式3時,RB8存放接收到的第9位數據,對應于發送方的TB8。TI:發送中斷標志在方式0時,發送完第8位數據后,該位由硬件置1。在其它方式,在發送停止位前由硬件置1。因此TI=1,表示一幀數據已發送結束,其狀態可供程序查詢,也可請求中斷。TI必須用程序清0。RI:接收中斷標志在方式0時,接收到第8位數據后,該位由硬件置1。在其它方式,當接收到停止位時,該位由硬件置1。因此RI=1,表示串行口已接收到一幀數據,其狀態可供程序查詢,也可請求中斷。RI必須用程序清0。SCON寄存器可以位尋址。(2)PCON寄存器PCON寄存器中只有其最高位(SMOD位)與串行通信有關,其它位則用于電源管理。位地址B7B6B5B4B3B2B1B0位名SMODSMOD0——GF1GF0PDIDSMOD:波特率加倍位當該位設為“1”時,所設定的波特率被加倍。注意PCON寄存器是不能位尋址的,所以使用“SMOD=1;”或“SMOD=0;”語句都是非法的,將SMOD置“1”可用“PCON|=0x80;”語句,將SMOD清“0”可用“PCON&=0x7F;”語句。SMOD0:幀錯誤檢測有效控制位。當SMOD0為1時,SM0/FE用于幀錯誤檢測;當SMOD0為0時,由SM0/FE、SM1兩位決定串口通信的工作方式。(3)輔助寄存器AUXR輔助寄存器的格式和各位含義如下:位地址B7B6B5B4B3B2B1B0位名T0x12T1x12UART_M0x6T2RT2_C/TT2x12EXTRAMS1ST2其中與串行通信相關的位介紹如下:
T1x12:定時器1速度控制位。T1x12為0時,定時器1是傳統8051速度,12分頻;T1x12為1時,定時器1的速度是傳統8051的12倍,不分頻。如果UART串口1用T1作為波特率發生器,則由T1x12決定UART1串口是12T還是1T。UART_M0x6:串口模式0的通信速度設置位。UART_M0x6為0時,串口1模式0的速度是傳統8051單片機串口的速度,即12分頻;UART_M0x6為1時,串口1模式0的速度是傳統8051單片機串口速度的6倍,即2分頻。T2R:定時器2允許控制位。T2R為0時,不允許定時器T2運行;T2R為1,允許定時器T2運行。T2_C/T:控制定時器T2用作定時器或計數器。T2_C/T為0時,用作定時器(對內部系統時鐘進行計數);T2_C/T為1時,用作計數器(對引腳T2/P3.1的外部脈沖進行計數)。T2x12:定時器2速度控制位。T2x12為0時,定時器T2是傳統8051速度,12分頻1,定時器T2的速度是傳統8051的12倍,不分頻。
如果串口1或串口2用T2作為波特率發生器,則由T2x12決定串口1或串口2是12T還是1T。S1ST2:串口1選擇定時器2作波特率發生器的控制位。S1ST2為0,選擇定時器T1作為串口1的波特率發生器;S1ST2為1,選擇定時器T2作為串口1的波特率發生器,此時定時器T1得到釋放,可以作為獨立定時器使用。串口1默認選擇定時器T2作為其波特率發生器。(4)定時器T2的寄存器T2HT2L定時器T2寄存器T2H(地址為D6H,復位值為00H)及寄存器T2L(地址為D7H,復位值為00)用于保存重裝時間常數。(5)與串行中斷相關的控制位ES和PS串行口中斷允許位ES位于中斷允許寄存器IE中,中斷允許寄存器的格式如下:中斷允許寄存器IE(可位尋址):位地址B7B6B5B4B3B2B1B0位名EAELVDEADCESET1EX1ET0EX0ES:串行口中斷允許位。ES為1時,允許串行口中斷;ES為0時,禁止串行口中斷。中斷優先級控制寄存器IP(可位尋址):PS:串口1中斷優先級控制位。PS為0時,串口1中斷為低優先級中斷(優先級0)PS為1時,串行口中斷為高優先級。(6)串行口1引腳切換寄存器AUXR1/P_SW1位地址B7B6B5B4B3B2B1B0位名PPCAPLVDPADCPSPT1PX1PT0PX0位地址B7B6B5B4B3B2B1B0位名S1_S1S1_S0CCP_S1CCP_S0CCP_S1CCP_S10DPSS1_S1、S1_S0用于切換串口1通信引腳:S1_S1S1_S0串口1通信引腳00[RxD/P3.0,TxD/P3.1]01[RxD_2/P3.6,TXD_2/P3.7]10[P1.6/RxD_3/XTAL2,P1.7/TxD_3/XTAL1]11無效5.1.9串行口的應用5.1.9.1
方式0串行口工作方式0又稱為“移位寄存器方式”,是將串行口作為同步移位寄存器使用,這時以RXD端作為數據的輸入/輸出端,在TXD端輸出移位脈沖。實際上是把串行口變作并行口使用,在單片機應用系統中,如果并行口不夠用,可通過外接串入并出移位寄存器擴展輸出口,通過外接并入串出移位寄存器擴展輸入接口。串行口工作于方式0時,數據長度為8位,當串行口模式0的通信速度設置位UARTM0x6AUXR=0時,其波特率固定為SYSclk/12。當串行口模式0的通信速度設置位UARTMOX6/AUXR5=1時,其波特率固定為SYSclk2。現對方式0發送數據方法進行說明:(1)
設置控制寄存器SCON的SM0、SM1為方式0(2)
清除TI標志。(3)
將發送的數據送入SBUF,這樣SBUF中的數據在TXD腳移位脈沖的作用下,一位一位地在RXD腳送出。(4)
當第8位發送完畢,TI標志自動置1,如果還有數據要發送,重復(2)~(4)。5.1.9.2方式1方式1是異步串行通信方式,以TXD為串行數據發送端,RXD為數據接收端,每幀數據共10位:一個起始位“0”,8個數據位,一個停止位“1”。其中起始位和停止位是由硬件電路自動插入的。方式1下,波特率由定時器T1的溢出率(每秒鐘溢出的次數)和SMOD共同決定,其公式為:
波特率=串行通信模式1的波特率是可變的,可變的波特率由定時器/計數器T1或定時器T2產生,優先選擇定時器T2產生波特率。(1)當串行口1用定時器T2作為其波特率發生器時:串行口1的波特率=(定時器T2的溢出率)/4(注意:此時波特率也與SMD無關。)當T2工作在1T(不分頻)時模式(AUXR2/T2x12=1),定時器2的溢出率=
FOSC/(65536-[RL_TH2,RL_TL2]);即此時,串行口1的波特率=
FOSC/(65536-[RL_TH2,RL_TL2])/4;當T2工作在12T(12分頻)模式時(AUXR2/T2x12=0),定時器2的溢出率=FOSC/12/(65536-[RL_TH2,RL_TL2]);即此時,串行口1的波特率=
FOSC/12/(65536-
[RL_TH2,RL_TL2])/4RL_TH2是T2H的自動重裝載寄存器,RL_TL2是12L的自動重裝載寄存器。(2)當串行口1用定時器T1作為其波特率發生器且定時器T1工作于模式0(16位自動重裝載模式)時:串行口1的波特率=(定時器1的溢出率)/4(注意:此時波特率與SMOD無關。)當定時器T1工作于模式0(16位自動重裝載模式)且Tx12=0(12分頻)時,定時器T1的溢出率=
FOSC/12/(65536[
RL_THI,
RL_TL1]),即此時,串行口1的波特率=
FOSC/12/(65536-[RL_TH1,RL_TL1])/4;當定時器T1工作于模式0(16位自動重裝載模式)且Tx12=1(不分頻)時,定時器T1的溢出率=
FOSC/(65536[
RL_THI,
RL_TL1]),即此時,串行口1的波特率=
FOSC/(65536-[RL_TH1,RL_TL1])/4;RL_TH是TH的自動重裝載寄存器,RL_TL是TL的自動重裝載寄存器。(3)當串行口1用定時器T1作為其波特率發生器且定時器T1工作于模式2(8位自動重裝模式)時:串行口1的波特率=(2SMOD/32)x(定時器1的溢出率)當定時器1工作于模式2(8位自動重裝模式)且T1x12=0(12分頻)時,定時器T1的溢出率=
FOSC/12/(256-TH1),即此時,串行口1的波特率=(2SMOD/32)×
FOSC/12/(256-TH1)當定時器1工作于模式2(8位自動重裝模式)且T1x12=1(不分頻)時,定時器T1的溢出率=
FOSC/(256-TH1),即此時,串行口1的波特率=(2SMOD/32)
xFOSC/(256-TH1)具體應用時,總是根據預先確定的波特率,去計算定時器的計數初值,當時鐘頻率fosc=11.0592MHz時,波特率為9600,不分頻時,通過推導,我們可以得到T2計數初值的公式為:T2H=(65536-((FOSC/4)/BAUD))/256; //裝入時間常數,T2L=(65536-((FOSC/4)/BAUD))%256;5.1.9.3方式2方式2是異步串行通信方式,在STC15中建議不學習。方式2以TXD為串行數據發送端,RXD為數據接收端,每幀數據共11位:一個起始位“0”,9個數據位,一個停止位“1”。發送時,第9個數據位由SCON寄存器中的TB8提供,接收時,收到的第9位數據存放在SCON寄存器中的RB8。第9位數據可作為奇偶校驗位,也可在多機通信時,作為數據信息或地址信息的標志位。方式2的波特率是固定的:
波特率=5.1.9.4方式3方式3為9位數據異步通信UART模式,用于多機通信,其一幀的信息由11位組成:1位起始位,8位數據位(低位在先),1位可編程位(第9位數據)和1位停止位。發送時可編程位(第9位數據)由SCON中的TB8提供,可軟件設置為1或0,或者可將PSW中的奇/偶校驗位P值裝入TB8(TB8既可作為多機通信中的地址數據標志位,又可作為數據的奇偶校驗位)。接收時第9位數據裝入SCON的RB8。TxD/P3.1為發送端口,RxDP3.0為接收端口,以全雙工模式進行接收/發送。模式3和模式1相比,除發送時由TB8提供給移位寄存器第9數據位不同外,其余功能結構均基本相同,其接收“發送操作過程及時序也基本相同。在模式3中,接收到的停止位與SBUF、RB8和R無關,通過軟件對SCON中的SM2、TB8的設置以及通信協議的約定,為多機通信提供了方便。串行通信模式3的波特率也是可變的,可變的波特由定時器/計數器1或定時器2產生。本任務選用串口方式1完成單片機與虛擬終端的通信,我們首先完成一個簡單的示例:示例5.1:通過串行口,將26個字母‘A’~‘Z’發送出去,已知單片機的時鐘頻率為11.0592MHz。要求采用串口方式1,波特率為9600。任務硬件設計:為了便于觀察、調試,我們在Proteus環境下,可加入虛擬終端(VIRTUALTERMINAL),如圖5.15所示,將單片機的數據發送端TXD與虛擬終端的RXD相連,以監視串行口發出數據的情況。任務軟件設計方式1發送程序的編寫方法:(1)根據波特率,對定時器T1進行初始化。(2)設置控制寄存器SCON,選擇串口方式1。(3)清除TI標志。(4)將數據送入發送緩沖器SBUF。當SBUF中的數據發送完畢,硬件電路自動將TI標志置1。(5)如果還有數據要發送,重復(3)~(5)。方式1接收程序的編寫方法:(1)根據波特率,對定時器T1進行初始化,注意波特率應與發送端一致。(2)設置控制寄存器SCON,選擇串口方式1,并令REN=1。(3)清除RI標志。(4)當串行口收到一幀數據后,RI置1,會產生中斷請求,通知CPU從接收SBUF中讀取數據。(5)如果還有數據要接收,重復(3)~(5)。數據的發送程序既可采用查詢方式,也可采用中斷方式。任務調試方法如果虛擬終端收不到單片機發來的數據,可設置虛擬終端的屬性,打開如圖5.16所示的窗口,檢查‘BaudRate’欄的波特率是否與程序中所設置的一致。另外還要檢查單片機的時鐘頻是否為11.0592MHz,在Proteus下單片機默認的時鐘頻率為12MHz。圖5.16虛擬終端屬性設置如果希望在真實的硬件環境中實現與PC機的串行通信,通過學習板將‘A’~‘Z’26個字母發送給PC機,可利用STC-ISP工具提供的串口助手配合實施:(1)將案例2產生的hex文件通過STC-ISP寫入單片機。(2)如圖4.18所示,點擊STC-ISP工具的“串口助手”選項卡,在“串口”選擇欄選擇的串口號,必須與STC-ISP界面左上方的“串口號”保持一致。(3)如圖4.18所示,設置好波特率(與案例2設定的波特率一致),接緩沖區和發送緩沖區都選擇文本模式。(4)點擊“打開串口”按鈕,該按鈕的標題變為“關閉串口”(5)按下學習板上的復位按鈕,在STC-ISP工具的接收緩沖區將顯示‘A’~‘Z’26個字母,如圖5.17所示。圖5.17STC-ISP工具的串口助手任務效果展示在Proteus環境下虛擬終端(VIRTUALTERMINAL)虛擬終端接收到的數據,如圖5.18所示。任務
數碼管顯示矩陣鍵盤鍵值任務介紹本任務將實現數碼管顯示矩陣鍵盤的按鍵值,編寫程序,將所按鍵值送LED顯示器顯示。單片機PC機串行通信的實現任務硬件設計圖
行列式鍵盤與動態LED顯示器接口電路圖5.2.1行列式鍵盤的基本原理鍵盤是計算機系統中不可缺少的輸入設備,矩陣式鍵盤也稱為行列式鍵盤,其結構如圖5.19所示。圖中有3根行線和4根列線,按鍵跨接在行線和列線上。3×4的行列結構可以構成12個按鍵的鍵盤,與獨立式鍵盤相比,按鍵數量相同時占用口線少,因此適用于按鍵數量較多的場合。如圖5.19中3根行線接到P2.0~P2.2,作為輸出口,4根列線接到P2.4~P2.7,作為輸入口,通常采用掃描法檢測鍵盤有
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 汽車物流運輸管理合同樣本
- 2025年度北京市智能家居系統成裝修合同參考
- 賓館裝修延期及賠償條款
- 獲獎十五分鐘課件
- 2025年度企業安全生產綜合評估合同書
- 營養管理與慢病預防
- 毫針操作基本技術
- 2024溫州市里仁科技職業學校工作人員招聘考試及答案
- 2024漣源市工貿職業中等專業學校工作人員招聘考試及答案
- 小學六年級口算題卡(含答案)
- 中醫藥生物信息學知到課后答案智慧樹章節測試答案2025年春浙江中醫藥大學
- 樹木移植合同范本
- 2025年張家界航空工業職業技術學院單招職業技能測試題庫及參考答案
- 海姆立克急救技術操作流程及評分標準
- 農村自建房施工合同范本(包工包料)
- deepseek在科研機構知識管理中的應用實例
- 污水處理設施運維服務投標方案(技術標)
- 手機攝影培訓教程
- 《質量分級及“領跑者”評價要求 新型電力系統》
- 臨床反復氣管插管患者的個案護理
- 中醫執業醫師考試-中醫基礎理論練習題
評論
0/150
提交評論