單片機(jī)一些基礎(chǔ)問題
中斷允許控制寄存器寄存器地址A8H,位尋址AFH~A8H。
中斷的允許或禁止是由片內(nèi)可進(jìn)行位(什么是位,大家可別到現(xiàn)在還說不知道哦)尋址的 8位中斷允許寄存器 IE 來控制的,單片機(jī)中斷系統(tǒng)中有兩種不同類型的中斷:一種稱為非屏蔽中斷;另一種稱為屏蔽中斷。對(duì)于非屏蔽中斷,用戶不能用軟件方法加以禁止,一旦有中斷申請(qǐng),CPU 將根據(jù)自然優(yōu)先級(jí)予以響應(yīng)。這里主要講屏蔽中斷,對(duì)于屏蔽中斷,我們可以通過軟件的方法來予以控制(允許中斷我們把它稱為中斷開放,不允許中斷我們把它稱之為中斷屏蔽),如何操作,說穿了其實(shí)很簡單,就是通過對(duì) IE 的相應(yīng)位的置“1”或請(qǐng)“0”來允許或禁止某個(gè)中斷,請(qǐng)看下面的表格:
EA × × ES ET1 EX1 ET0 EX0
(1)EA:總中斷允許開關(guān)。它是個(gè)總開關(guān),凡是要設(shè)置中端都得先通過它。EA=1,開放所有的中斷;EA=0,則所有中斷都被禁止。
(2)ES:串行口中斷控制位。ES=1,允許中斷;ES=0,禁止中斷。
(3)ET1:定時(shí)/計(jì)數(shù)器 1 中斷控制位。ET1=1,允許中斷;ET1=0,禁止中斷。
(4)EX1:外中斷 1 中斷控制位。EX1=1,允許中斷;EX1=0,禁止中斷。
(5)ET0:定時(shí)器 0 中斷控制位。ET0=1,允許中斷;ET0=0,禁止中斷。
(6)EX0:外中斷 0 中斷控制位。EX0=1,允許中斷;EX0=0,禁止中斷。
SETB
SETB是匯編指令,意思是把其后面的那個(gè)寄存器的位置1。
DJNZ
功能:減1,若非0則跳轉(zhuǎn)
說明:DJNE指令首先將第1個(gè)操作數(shù)所代表的變量減1,如果結(jié)果不為0,則轉(zhuǎn)移到第2個(gè)操作數(shù)所指定的地址去執(zhí)行。如果第1個(gè)操作數(shù)的值為00H,則減1后變?yōu)?FFH。該指令不影響標(biāo)志位。跳轉(zhuǎn)目標(biāo)地址的計(jì)算:首先將PC值加2(即指向下一條指令的首字節(jié)),然后將第2操作數(shù)表示的有符號(hào)的相對(duì)偏移量加到PC上去即可。byte所代表的操作數(shù)可采用寄存器尋址或直接尋址。
為什么要通過了74HC14把持ULN2003 驅(qū)動(dòng)芯片驅(qū)動(dòng)蜂鳴器
74HC14是六反相施密特觸發(fā)器集成電路,其基礎(chǔ)作用就是反相器,一般用于信號(hào)輸入電路,用施密特觸發(fā)器對(duì)輸入信號(hào)進(jìn)行波形整形,對(duì)干擾信號(hào)有必定的克制作用,其輸出為標(biāo)準(zhǔn)的TTL電平。ULN2003 的每一對(duì)達(dá)林頓都串聯(lián)一個(gè)2.7K 的基極電阻,在5V 的工作電壓下它能與TTL 和CMOS 電路直接相連,可以直接處理本來需要標(biāo)準(zhǔn)邏輯緩沖器來處理的數(shù)據(jù)。所以,ULN2003 是通過74HC14把持的,而74HC14是反相器,不加是不行的。。。
ULN2003 是高耐壓、大電流復(fù)合晶體管陣列,由七個(gè)硅NPN 復(fù)合晶體管組成。ULN2003 工作電壓高,工作電流大,灌電流可達(dá)500mA,并且能夠在關(guān)態(tài)時(shí)承受50V 的電壓,可以在高負(fù)載電流并行運(yùn)行。 74HC14實(shí)現(xiàn)了6路施密特觸發(fā)反相器。 蜂鳴器和繼電器是電流型驅(qū)動(dòng)的器件,直接用單片機(jī)的引腳驅(qū)動(dòng)的話電流不夠,所以用ULN2003 進(jìn)行驅(qū)動(dòng),74HC14是反向器,也就是把輸入的1變?yōu)?
2003是反向的三極管輸出陣列(有7路),但是,其集電極是開路輸出的。輸入高就輸出低;輸入低時(shí),其輸出三極管截止,電平懸浮,高電平靠外部負(fù)載上的電源V+實(shí)現(xiàn)。
2003的第8腳,通常接地;第9腳COM接電源V+,可以為負(fù)載電流在斷流時(shí)提供續(xù)流通路.
2003的電流驅(qū)動(dòng)能力就相當(dāng)于是多個(gè)普通的分離的三極管,總電流可達(dá)五百毫安。加74HC14主要是確保上電后2003無輸出,否則上電后蜂鳴器會(huì)先叫一聲。
繼電器的引腳怎么接
2和6是常開,1和6是常閉,3和4是線圈,5和6是連著的,用哪個(gè)都行。
其實(shí)不用看引腳圖,用萬能表一測便知。
把萬能表跳到電阻X1K檔,有一定值的是線圈,等于0的是常閉,無窮大的是常開,一試就知道了
74HC與74LS的區(qū)別
LS的驅(qū)動(dòng)能力要比HC的強(qiáng)一些,所以如果后級(jí)的負(fù)載比較重的話,要選LS的.同時(shí),LS的功耗也比HC的大一些.HC采用高速CMOS工藝制作,自身功耗低,輸出高低電平范圍寬。 LS采用早期的雙極型工藝,驅(qū)動(dòng)能力相對(duì)較大些。
74系列集成電路大致可分為6大類:l 74××(標(biāo)準(zhǔn)型);l 74LS××(低功耗肖特基);l 74S××(肖特基);l 74ALS××(先進(jìn)低功耗肖特基);l 74AS××(先進(jìn)肖特基);l 74F××(高速)。近年來還出現(xiàn)了高速CMOS電路的74系列,該系列可分為3大類:l HC為COMS工作電平;l HCT為TTL工作電平,可與74LS系列互換使用;l HCU適用于無緩沖級(jí)的CMOS電路。這9種74系列產(chǎn)品,只要后邊的標(biāo)號(hào)相同,其邏輯功能和管腳排列就相同。根據(jù)不同的條件和要求可選擇不同類型的74系列產(chǎn)品,比如電路的供電電壓為3V就應(yīng)選擇74HC系列的產(chǎn)品。
TTL和CMOS有什么區(qū)別
1,TTL電平:
輸出高電平>2.4V,輸出低電平0.4V。在室溫下,一般輸出高電平是3.5V,輸出低電平是0.2V。最小輸入高電平和低電平:輸入高電平>=2.0V,輸入低電平=0.8V,噪聲容限是0.4V。
2,CMOS電平:
邏輯電平電壓接近于電源電壓,0邏輯電平接近于0V。而且具有很寬的噪聲容限。
3,電平轉(zhuǎn)換電路:
因?yàn)門TL和COMS的高低電平的值不一樣(ttl 5v==>cmos 3.3v),所以互相連接時(shí)需要電平的轉(zhuǎn)換:就是用兩個(gè)電阻對(duì)電平分壓,沒有什么高深的東西。
4, OC門,即集電極開路門電路,OD門,即漏極開路門電路,必須外界上拉電阻和電源才能將開關(guān)電平作為高低電平用。否則它一般只作為開關(guān)大電壓和大電流負(fù)載,所以又叫做驅(qū)動(dòng)門電路。
5,TTL和COMS電路比較:
1)TTL電路是電流控制器件,而coms電路是電壓控制器件。
2)TTL電路的速度快,傳輸延遲時(shí)間短(5-10ns),但是功耗大。
COMS電路的速度慢,傳輸延遲時(shí)間長(25-50ns),但功耗低。
COMS電路本身的功耗與輸入信號(hào)的脈沖頻率有關(guān),頻率越高,芯片集越熱,這是正?,F(xiàn)象。
3)CMOS是場效應(yīng)管構(gòu)成,TTL為雙極晶體管構(gòu)成
4)COMS的邏輯電平范圍比較大(5~15V),TTL只能在5V下工作
5)CMOS的高低電平之間相差比較大、抗干擾性強(qiáng),TTL則相差小,抗干擾能力差
數(shù)碼管的8位二進(jìn)制是高位在前底位在后
評(píng)論