當(dāng)單片機(jī)內(nèi)部程序存儲(chǔ)器容量不足時(shí),就需要進(jìn)行程序存儲(chǔ)器的擴(kuò)展。單片機(jī)的程序存儲(chǔ)器擴(kuò)展使用只讀存儲(chǔ)器芯片。只讀存儲(chǔ)器ROM中的信息一旦寫入之后就不能隨意更改,即不能在程序運(yùn)行過(guò)程中寫入新的內(nèi)容,而只能讀存儲(chǔ)單元內(nèi)容。因?yàn)榈綦姾驲OM中存放的數(shù)據(jù)不會(huì)丟失,所以ROM適宜存放程序[詳細(xì)]
1、匯編語(yǔ)言源程序的格式 1.內(nèi)部數(shù)據(jù)傳送指令 匯編語(yǔ)言是面向機(jī)器的,因此,語(yǔ)言格式因機(jī)器不同而異。對(duì)MCS-51系統(tǒng)來(lái)說(shuō),匯編語(yǔ)言中每條語(yǔ)句的格式包括下列4項(xiàng)內(nèi)容: 標(biāo)號(hào): 操作碼 操作數(shù); 注釋匯編語(yǔ)句中,標(biāo)號(hào)和操作碼要用冒號(hào)“:”隔開(kāi);操作碼和操作數(shù)之間的分隔[詳細(xì)]
圖1 中斷系統(tǒng)結(jié)構(gòu) 由圖1結(jié)構(gòu)可知,51單片機(jī)有五個(gè)中斷請(qǐng)求源,四個(gè)用于中斷控制的寄存器IE、IP、TCON(用6位)和SCON(用2位)—用于控制中斷的類型、中斷的開(kāi)/關(guān)和各種中斷源的優(yōu)先級(jí)別。五個(gè)中斷源有二個(gè)中斷優(yōu)先級(jí),每個(gè)中斷源可以編程為高優(yōu)先級(jí)或低優(yōu)先級(jí)中斷,可以實(shí)現(xiàn)二級(jí)中斷[詳細(xì)]
在單片機(jī)系統(tǒng)以及現(xiàn)代單片機(jī)測(cè)控系統(tǒng)中,廣泛使用了串行通信方式。本文主要學(xué)習(xí)串行接口的編程方法和了解常用的串口通信應(yīng)用。我們首先應(yīng)該掌握串口基礎(chǔ)知識(shí),包括其各個(gè)工作方式的特點(diǎn)和接收、發(fā)送邏輯,掌握串口控制寄存器的設(shè)置方法。在此基礎(chǔ)上,通過(guò)學(xué)習(xí)本文的示例來(lái)了解串口編程的基本方法。一、串口[詳細(xì)]
MCS-51單片計(jì)算機(jī)內(nèi)部的定時(shí)器/計(jì)數(shù)器邏輯結(jié)構(gòu)如圖1所示。圖1 定時(shí)器/計(jì)數(shù)器邏輯結(jié)構(gòu)圖 [詳細(xì)]
MCS-51單片計(jì)算機(jī)內(nèi)部設(shè)置的兩個(gè)16位可編程的定時(shí)器/計(jì)數(shù)器T0和T1,它們均有定時(shí)和計(jì)數(shù)功能。T0和T1的工作方式功能選擇、定時(shí)時(shí)間、啟動(dòng)方式等均可以通過(guò)編程對(duì)相應(yīng)特殊功能寄存器TMOD和TCON的設(shè)置來(lái)實(shí)現(xiàn)的,計(jì)數(shù)器值也由軟件命令設(shè)置于16位的計(jì)數(shù)寄存器中(TH0、TL0或TH1、TL1),計(jì)數(shù)器的工作是加1[詳細(xì)]
在單片機(jī)系統(tǒng)中主要有兩類數(shù)據(jù)傳送操作,一類是單片機(jī)和存儲(chǔ)器之間的數(shù)據(jù)讀寫操作;另一類則是單片機(jī)和其它設(shè)備之間的數(shù)據(jù)輸入/輸出(I/O)操作。單片機(jī)和存儲(chǔ)器之間的連接十分簡(jiǎn)單,主要包括地址線、數(shù)據(jù)線、讀寫選通信號(hào)。 單片機(jī)與控制對(duì)象或外部設(shè)備之間的數(shù)據(jù)傳[詳細(xì)]
1、外部程序存儲(chǔ)器的擴(kuò)展原理及時(shí)序MCS-51單片機(jī)擴(kuò)展外部程序存儲(chǔ)器的硬件電路如圖所示。從圖中可以看出,在進(jìn)行系統(tǒng)擴(kuò)展時(shí)采用的是總線結(jié)構(gòu)。數(shù)據(jù)總線是由P0口提供;地址總線由P0口和P2口共同提供;控制總線用專用的控制信號(hào)。 MCS-51單片機(jī)訪問(wèn)外部程序存儲(chǔ)器所使用的控制信號(hào)有:ALE和PSEN。其中ALE是[詳細(xì)]
1、串行口方式0 在方式0下,串行口為同步移位寄存器方式,波特率固定為 /12。這時(shí)的數(shù)據(jù)傳送,無(wú)論是輸入還是輸出,均由RxD(P3.0)端完成,而由TxD(P3.1)端輸出移位時(shí)鐘脈沖。發(fā)送和接收一幀的數(shù)據(jù)為8位二進(jìn)制,不設(shè)起始位和停止位,低位在前,高位在后。一般用于I/O口擴(kuò)展。 2、串行口方式1 在方[詳細(xì)]
1、時(shí)間太長(zhǎng),記不清在哪個(gè)項(xiàng)目里遇到的,指向code區(qū)數(shù)組的指針也要加 code 關(guān)鍵字聲明。比如 unsigned char code arr[30]; 數(shù)組,要用指針指向它,要把指針也聲明成 unsigned charcode*p;后來(lái)使用發(fā)現(xiàn)其它很多地方使用是不需要這樣聲明的,只要 unsigned char *p;就行了,但是清楚地記得那次確實(shí)是要加 code[詳細(xì)]
在8031單片機(jī)應(yīng)用系統(tǒng)中,靜態(tài)RAM是最常見(jiàn)的,由于這種存儲(chǔ)器的設(shè)計(jì)無(wú)需考慮刷新問(wèn)題,因而它與微處理器的接口很簡(jiǎn)單。最常用的靜態(tài)RAM芯片有6116(2kB×8)、6264(8kB×8)、62128(16kB×8)、62256(32kB×8)等多種,它們都用單一+5V供電,雙列直插封裝,6116為24引腳封裝,6264、62128、62256為28引腳封裝[詳細(xì)]
MCS-51單片機(jī)的典型芯片是8031、8051、8751。8051內(nèi)部有4 KB ROM,8751內(nèi)部有4KB EPROM,8031內(nèi)部無(wú)ROM;除此之外,三者的內(nèi)部結(jié)構(gòu)及引腳完全相同。因此,以8051為例,說(shuō)明本系列單片機(jī)的內(nèi)部組成及信號(hào)引腳。 1) 中央處理器(CPU) &nbs[詳細(xì)]
1、串行口的結(jié)構(gòu)MCS-51串行口結(jié)構(gòu)框圖示于圖。由圖可見(jiàn) MCS-51單片機(jī)串行口主要由兩個(gè)物理上獨(dú)立的串行數(shù)據(jù)緩沖寄存器SBUF、發(fā)送控制器、接收控制器、輸入移位寄存器和輸出控制門組成。兩個(gè)特殊功能寄存器SCON和PCON用來(lái)控制串行口的工作方式和波特率。發(fā)送緩沖寄存器SBUF只能寫,不能讀;接收緩沖寄存器SBUF[詳細(xì)]
中斷響應(yīng):1.響應(yīng)條件CPU響應(yīng)中斷的條件有:①有中斷源發(fā)出中斷請(qǐng)求;②中斷總允許位EA=1,即CPU開(kāi)中斷;③申請(qǐng)中斷的中斷源的中斷允許位為1;滿足以上條件,CPU響應(yīng)中斷;如果中斷受阻,CPU不會(huì)響應(yīng)中斷。2.響應(yīng)過(guò)程單片機(jī)一旦響應(yīng)中斷,首先置位響應(yīng)的優(yōu)先級(jí)觸發(fā)器,然后執(zhí)行一個(gè)硬件子程序調(diào)用,把斷點(diǎn)地址[詳細(xì)]
由于8051的串行口在方式0工作狀態(tài)下,可以方便地通過(guò)移位寄存器74LS164擴(kuò)展并行輸出口。因此,可以將這些并行口線作為列線,與P3口的行線構(gòu)成行列式鍵盤。每占用一條P3口線可增加8個(gè)按鍵,用戶根據(jù)需要可增減。 在8051的串行口方式0工作狀態(tài)下,結(jié)合P3.4和P3.5實(shí)現(xiàn)2*8鍵盤。如[詳細(xì)]
1、方式0和方式2在方式0時(shí),每個(gè)機(jī)器周期發(fā)送或接收一位數(shù)據(jù),因此波特率固定為單片機(jī)時(shí)鐘頻率的1/12(即fosc/12),且不受SMOD的影響。若晶振頻率fosc=12MHz時(shí),則波特率=fosc/12=12MHz/12=1Mb/s,即1 μs移位一次。方式2的波特率取決于PCON中的SMOD之值,當(dāng)SMOD=0時(shí),波特率為fOSC的1/64;若SMOD=1時(shí),則波[詳細(xì)]
51單片機(jī)指MCS-51系列單片機(jī),CICS指令集。由Intel公司開(kāi)發(fā),其結(jié)構(gòu)增加了如乘(MUL)、除(DIV)、減(SUBB)、比較(CMP)、16位數(shù)據(jù)指針、布爾代數(shù)運(yùn)算等指令,以及串行通信能力和5個(gè)中斷源,內(nèi)有128個(gè)RAM單元及4K的ROM。其代表型號(hào)是ATMEL公司的AT89系列,它廣泛應(yīng)用于工業(yè)測(cè)控系統(tǒng)之中。目前國(guó)內(nèi)的51單片機(jī)市[詳細(xì)]
文件包含是指一個(gè)程序文件將另一個(gè)指定文件的全部?jī)?nèi)容包含進(jìn)來(lái)。文件包含命令的功能是用指定文件的全部?jī)?nèi)容替換該預(yù)處理行。文件包含命令的一般格式為:#include <文件名> 或 #include “文件名”。宏定義命令為#define,它的作用是用一個(gè)宏定義來(lái)替換一個(gè)字符串,而這個(gè)字符串既可以是常數(shù),也可以是其他[詳細(xì)]
指令給出參與運(yùn)算的數(shù)據(jù)方式稱為尋址方式。換句話說(shuō),尋址方式就是尋找確定參與操作的數(shù)的真正地址。在MCS-51系列單片機(jī)的指令系統(tǒng)中尋址方式共有7種,立即尋址方式。mcs-51單片機(jī)的一種尋址方式,操作數(shù)就寫在指令中,和操作碼一起放在程序存貯器中。把“#”號(hào)放在立即數(shù)前面,以表示該尋址方式為立即尋址,如[詳細(xì)]
掃碼關(guān)注我們
0755-82591179
傳真:0755-82591176
郵箱:vicky@yingtexin.net
地址:深圳市龍華區(qū)民治街道民治大道973萬(wàn)眾潤(rùn)豐創(chuàng)業(yè)園A棟2樓A08
Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved. 粵ICP備14043402號(hào)-4