51單片機(jī)動(dòng)態(tài)LED顯示電路編程實(shí)例:上一節(jié)我們講述了單只LED與單片機(jī)的接口電路及編程實(shí)例,目的在于讓初學(xué)者了解LED在單片機(jī)中的應(yīng)用原理,單只LED顯示在實(shí)際應(yīng)用中并無多大用途,一般都是多位的LED顯示。現(xiàn)在我們作進(jìn)一步學(xué)習(xí),我們要講解的是8位LED的顯示原理及實(shí)際的編程方法。這里我們沒有采用多I/O口的8051系列單片機(jī),而是采用了完全兼容C51指令系統(tǒng)的質(zhì)優(yōu)價(jià)廉的AT89C2051單片機(jī),它的軟件編程與C51完全一致。 在多數(shù)的應(yīng)用場合中,我們并不希望使用多I/O端口的單片機(jī),原則上是使用盡量少引腳的器件。在沒有富余端口的情況下,怎樣通過擴(kuò)展電路達(dá)到預(yù)期的目的呢?我們希望通過此例使設(shè)計(jì)人員在實(shí)際應(yīng)用中了解一點(diǎn)電路擴(kuò)展的原理,對實(shí)際的應(yīng)用有所幫助。 此電路中,74LS273用于驅(qū)動(dòng)LED的8位段碼,8位LED相應(yīng)的"a"—"g"段連在一起,它們的公共端分別連至由74LS138(點(diǎn)擊芯片型號(hào)可瀏覽其詳細(xì)的技術(shù)手冊)譯碼選通后經(jīng)74LS04反相驅(qū)動(dòng)的輸出端。這樣當(dāng)選通某一位LED時(shí),相應(yīng)的地址線(74LS04輸出端)輸出的是高電平,所以我們的LED選用共陽LED數(shù)碼管。 動(dòng)態(tài)掃描的頻率有一定的要求,頻率太低,LED將出現(xiàn)閃爍現(xiàn)象。如頻率太高,由于每個(gè)LED點(diǎn)亮的時(shí)間太短,LED的亮度太低,肉眼無法看清,所以一般均取幾個(gè)ms左右為宜,這就要求在編寫程序時(shí),選通某一位LED使其點(diǎn)亮并保持一定的時(shí)間,程序上常采用的是調(diào)用延時(shí)子程序。在C51指令中,延時(shí)子程序是相當(dāng)簡單的,并且延時(shí)時(shí)間也很容易更改,可參見程序清單中的DELAY延時(shí)子程序。 為簡單起見,我們只是編寫了8位LED同步顯示"00000000"—"11111111"直到"99999999"數(shù)字,并且反復(fù)循環(huán)。程序很簡單,流程圖略去。
標(biāo)簽: LED 51單片機(jī) 動(dòng)態(tài) 顯示電路
上傳時(shí)間: 2013-11-18
上傳用戶:皇族傳媒
SPCE061A采用的內(nèi)核 SPCE061A采用的內(nèi)核(CPU)為μ‘nSP。 μ‘nSP(讀做micro-n-S-P)是凌陽科技推出的16位微處理器,它的突出特點(diǎn)是較高的處理速度,這就使其有能力進(jìn)行復(fù)雜的數(shù)字信號(hào)處理(DSP,Digital Signal Processing)。 μ‘nSP內(nèi)核由凌陽自主開發(fā),因而也具備它自己的指令系統(tǒng)。 指令系統(tǒng).61 3.1 指令系統(tǒng)的概述及符號(hào)約定.61 3.2 數(shù)據(jù)傳送指令62 3.3 算術(shù)運(yùn)算..66 3.3.1 加法運(yùn)算..67 3.3.2 減法運(yùn)算..68 3.3.3 帶進(jìn)位的加減運(yùn)算.70 3.3.4 取補(bǔ)運(yùn)算..70 3.3.5 SPCE061A的乘法指令.71 3.3.6 SPCE061A的n項(xiàng)內(nèi)積運(yùn)算指令.71 3.3.7 比較運(yùn)算(影響標(biāo)志位N,Z,S,C)..73 3.4 SPCE061A的邏輯運(yùn)算.74 3.4.1 邏輯與..74 3.4.2 邏輯或..75 3.4.3 邏輯異或..76 3.4.4 測試(TEST).78 3.4.5 SPCE061A的移位操作.80 3.5 SPCE061A的控制轉(zhuǎn)移類指令..83 3.6 偽指令86 3.6.1 偽指令的語法格式及特點(diǎn)..87 3.6.2 偽指令符號(hào)約定..87 3.6.3 標(biāo)準(zhǔn)偽指令.87 3.6.4 宏定義與調(diào)用98 3.6.5 段的定義與調(diào)用101 3.6.6 結(jié)構(gòu)的定義與調(diào)用..102 3.6.7 過程的定義與調(diào)用..106 3.6.8 偽指令的應(yīng)用舉例..106
標(biāo)簽: SPCE 061A 061 指令系統(tǒng)
上傳時(shí)間: 2013-10-31
上傳用戶:xuanchangri
所學(xué)的指令LD、LDI、OUT AND、ANI OR、 ORI LDP、 LDF、ANDP、ANDF、 ORP、 ORF ORB、 ANB MPS、 MRD、 MPP MC、 MCRSET RSTNOP END 自鎖電路觸點(diǎn)的動(dòng)作發(fā)光二極管的工作原理。八段碼顯示是利用發(fā)光二極管的不同段碼組合來實(shí)現(xiàn)的,它可以實(shí)現(xiàn)0到F的顯示。搶答器的顯示就是利用八段碼顯示的特性,來完成幾個(gè)不同組別的顯示。用PLC實(shí)現(xiàn)八段碼顯示0~9組的3組以上搶答器的程序編寫,并完成以下要求:1)設(shè)計(jì)由PLC實(shí)現(xiàn)的八段碼顯示0~9組的3組以上搶答器的程序編寫,并完成以下要求: ①列出PLC的輸入輸出地址分配表 ②畫出PLC的輸入輸出接線圖(即I/O接線圖) ③設(shè)計(jì)PLC的梯形圖 ④根據(jù)梯形圖列寫指令表 2)按PLC控制I/O口(輸入/輸出)接線圖在模擬實(shí)驗(yàn)設(shè)備上正確接線。
上傳時(shí)間: 2013-11-22
上傳用戶:lmeeworm
匯編指令查詢器:數(shù)據(jù)傳送指令 MOV 格式: MOV OPRD1,OPRD2 功能: 本指令將一個(gè)源操作數(shù)送到目的操作數(shù)中,即OPRD1<--OPRD2. 說明: 1. OPRD1 為目的操作數(shù),可以是寄存器、存儲(chǔ)器、累加器. OPRD2 為源操作數(shù),可以是寄存器、存儲(chǔ)器、累加器和立即數(shù). 2. MOV 指令以分為以下四種情況: <1> 寄存器與寄存器之間的數(shù)據(jù)傳送指令 <2> 立即數(shù)到通用寄存器數(shù)據(jù)傳送指令 <3> 寄存器與存儲(chǔ)器之間的數(shù)據(jù)傳送指令 <4> 立即數(shù)到存儲(chǔ)器的數(shù)據(jù)傳送 3. 本指令不影響狀態(tài)標(biāo)志位
上傳時(shí)間: 2013-11-13
上傳用戶:腳趾頭
單片機(jī)系統(tǒng)軟件抗干擾方法:在提高硬件系統(tǒng)抗干擾能力的同時(shí),軟件抗干擾以其設(shè)計(jì)靈活、節(jié)省硬件資源、可靠性好越來越受到重視。下面以MCS-51單片機(jī)系統(tǒng)為例,對微機(jī)系統(tǒng)軟件抗干擾方法進(jìn)行研究。1、軟件抗干擾方法的研究在工程實(shí)踐中,軟件抗干擾研究的內(nèi)容主要是: 消除模擬輸入信號(hào)的嗓聲(如數(shù)字濾波技術(shù)); 程序運(yùn)行混亂時(shí)使程序重入正軌的方法。本文針對后者提出了幾種有效的軟件抗干擾方法。1.1 指令冗余CPU取指令過程是先取操作碼,再取操作數(shù)。當(dāng)PC受干擾出現(xiàn)錯(cuò)誤,程序便脫離正常軌道“亂飛”,當(dāng)亂飛到某雙字節(jié)指令,若取指令時(shí)刻落在操作數(shù)上,誤將操作數(shù)當(dāng)作操作碼,程序?qū)⒊鲥e(cuò)。若“飛”到了三字節(jié)指令,出錯(cuò)機(jī)率更大。在關(guān)鍵地方人為插入一些單字節(jié)指令,或?qū)⒂行巫止?jié)指令重寫稱為指令冗余。通常是在雙字節(jié)指令和三字節(jié)指令后插入兩個(gè)字節(jié)以上的NOP。這樣即使亂飛程序飛到操作數(shù)上,由于空操作指令NOP的存在,避免了后面的指令被當(dāng)作操作數(shù)執(zhí)行,程序自動(dòng)納入正軌。此外,對系統(tǒng)流向起重要作用的指令如RET、RETI、LCALL、LJMP、JC等指令之前插入兩條NOP,也可將亂飛程序納入正軌,確保這些重要指令的執(zhí)行。1.2 攔截技術(shù)所謂攔截,是指將亂飛的程序引向指定位置,再進(jìn)行出錯(cuò)處理。通常用軟件陷阱來攔截亂飛的程序。因此先要合理設(shè)計(jì)陷阱,其次要將陷阱安排在適當(dāng)?shù)奈恢谩?.2.1 軟件陷阱的設(shè)計(jì)當(dāng)亂飛程序進(jìn)入非程序區(qū),冗余指令便無法起作用。通過軟件陷阱,攔截亂飛程序,將其引向指定位置,再進(jìn)行出錯(cuò)處理。軟件陷阱是指用來將捕獲的亂飛程序引向復(fù)位入口地址0000H的指令。通常在EPROM中非程序區(qū)填入以下指令作為軟件陷阱:
標(biāo)簽: 單片機(jī) 系統(tǒng)軟件 抗干擾
上傳時(shí)間: 2013-10-29
上傳用戶:大三三
設(shè)置復(fù)位標(biāo)志位便于區(qū)分不同原因引發(fā)的復(fù)位,作為一種新技術(shù)被越來越多的新型單片機(jī)所采納。例如Philips公司的P87LPC700和 P89LPC900系列、Freescale公司(原Motorola半導(dǎo)體部)的MC68HC05系列和MC68HC08系列、Sunplus公司的 SPMC65系列、Microchip公司的PIC系列等,內(nèi)部都設(shè)計(jì)了專門用于記錄各種復(fù)位標(biāo)志的狀態(tài)寄存器。MC68HC08系列有一個(gè)復(fù)位狀態(tài)寄存器,負(fù)責(zé)記錄6種復(fù)位標(biāo)志位:上電復(fù)位、引腳復(fù)位、看門狗復(fù)位、非法指令復(fù)位、非法地址復(fù)位和欠壓復(fù)位。SPMC65系列有一個(gè)系統(tǒng)控制寄存器,負(fù)責(zé)記錄5種復(fù)位標(biāo)志位:上電復(fù)位、外部復(fù)位、看門狗復(fù)位、非法地址復(fù)位和欠壓復(fù)位。51兼容的P89LPC900系列有一個(gè)復(fù)位源寄存器,負(fù)責(zé)記錄6種復(fù)位標(biāo)志位:欠壓復(fù)位、上電復(fù)位、外部復(fù)位、看門狗復(fù)位、軟件復(fù)位和UART收到間隔字符復(fù)位(主要作為進(jìn)入ISP監(jiān)控程序的途徑之一)。就連初學(xué)者很常用的 AT89S51/52和P89C52X2,也在其電源控制寄存器PCON中增設(shè)了一個(gè)上電標(biāo)志位POF。1、 復(fù)位標(biāo)志位的設(shè)置方法傳統(tǒng)的80C51單片機(jī)沒有設(shè)計(jì)復(fù)位標(biāo)志位的記錄功能,這應(yīng)該說是一種遺憾,那么能否通過一定的技術(shù)手段來彌補(bǔ)這個(gè)缺憾呢?這里給廣大80C51單片機(jī)用戶提供一種啟示和引導(dǎo)。實(shí)現(xiàn)復(fù)位標(biāo)志位的記錄肯定需要一定的硬件電路支持,而這種電路的設(shè)計(jì)不存在固定模式。筆者利用一片MAX813L設(shè)計(jì)了一種支撐電路,如圖1所示,僅供讀者參考。
標(biāo)簽: 單片機(jī)復(fù)位 標(biāo)志位 應(yīng)用研究
上傳時(shí)間: 2013-10-21
上傳用戶:lhw888
MCS51系列單片機(jī)軟件控制復(fù)位的可靠方法:文章指出了一種廣泛流傳的誤解:在MCS-51系列單片機(jī)中,只要用指令使程序從起始地址開始執(zhí)行,就可以復(fù)位單片機(jī),擺脫干擾。通過實(shí)驗(yàn),揭示了軟件控制復(fù)位的可靠方法。有的單片機(jī)(如8098)有專門的復(fù)位指令,某些增強(qiáng)型MCS-51系統(tǒng)單片機(jī)雖然沒有復(fù)位指令,但片內(nèi)集成了WATCHDOG電路,故抗干擾也不成問題。而普及型MCS-51系列單片機(jī)(如8031和8032)既然無復(fù)位指令,又不帶硬件WATCHDOS,如果沒有外接硬件WATCHDOG電路,就必須采用軟件抗干擾技術(shù)。常用的軟件抗干擾技術(shù)有:軟件陷阱、指令冗余、軟件WATCHDOG等,它們的作用是在系統(tǒng)受干擾時(shí)能及時(shí)發(fā)現(xiàn),再用軟件的方法使系統(tǒng)復(fù)位。所謂軟件復(fù)位就是用一系列指令來模仿復(fù)位操作,這就是MCS-51系列單片機(jī)所特有的軟件復(fù)位技術(shù)。現(xiàn)用一簡單的實(shí)驗(yàn)說明。接于P1.0的發(fā)光二極管LED0用來表示主程序的工作情況,接于P1.1的發(fā)光二極管LED1用于表示低級(jí)中斷子程序的工作情況,接于P1.2的發(fā)光二極管LED2用來表示高級(jí)中斷子程序的工作情況,接于P3.2口的按鈕用來設(shè)立干擾標(biāo)志,程序檢測到干擾標(biāo)志后故意進(jìn)入死循環(huán)或掉進(jìn)陷井,模仿受干擾的情況,從而檢驗(yàn)各種復(fù)位方法的實(shí)際效果。實(shí)驗(yàn)初始化程序如下:
上傳時(shí)間: 2013-11-03
上傳用戶:sevenbestfei
5.1 中斷基本概念5.1.1 中斷基本概念定義:CPU暫停現(xiàn)行程序,轉(zhuǎn)而處理隨機(jī)到來的事件,待處理完后再回到被暫停的程序繼續(xù)執(zhí)行,這個(gè)過程就是中斷。中斷過程:中斷處理的隱操作:程序狀態(tài)及程序斷點(diǎn)地址的進(jìn)棧及出棧。 中斷系統(tǒng)其他功能: 支持多中斷源和多種中斷源。 支持中斷屏蔽處理。 支持中斷嵌套處理。 支持中斷優(yōu)先級(jí)修改。 支持中斷結(jié)束方式選擇。5.1.2 中斷類型1.外部硬件(如鍵盤、鼠標(biāo),串口,并口打印機(jī)等)中斷屬性:硬件、可屏蔽、向量。 中斷請求:多個(gè)中斷請求的排隊(duì)和判優(yōu)由中斷控制器完成,產(chǎn)生的有無中斷請求的信號(hào)送到CPU的INTR引腳。 中斷類型號(hào):通過數(shù)據(jù)總線送到CPU中。EFLAGS寄存器的IF位影響CPU對中斷請求的響應(yīng)。處理器在當(dāng)前指令執(zhí)行結(jié)束的時(shí)候啟動(dòng)中斷識(shí)別INTA總線周期。
標(biāo)簽: 中斷技術(shù)
上傳時(shí)間: 2013-11-09
上傳用戶:黃婷婷思密達(dá)
數(shù)據(jù)傳送的控制 數(shù)據(jù)傳送涉及的3個(gè)問題1)數(shù)據(jù)的來源;2)數(shù)據(jù)的去處;3)數(shù)據(jù)本身以及如何控制數(shù)據(jù)的傳送。 DMA方式控制的數(shù)據(jù)傳送 DMA傳送方式通常用來高速傳送大批量的數(shù)據(jù)塊。如: 硬盤和軟盤I/O; 快速通信通道I/O; 多處理機(jī)和多程序數(shù)據(jù)塊傳送; 在圖像處理中,對CRT屏幕送數(shù)據(jù); 快速數(shù)據(jù)采集; DRAM的刷新操作。 DMA傳送包括:(1)存儲(chǔ)單元傳送:存儲(chǔ)器→存儲(chǔ)器。(2)DMA讀傳送:存儲(chǔ)器→I/O設(shè)備。(3)DMA寫傳送:I/O設(shè)備→存儲(chǔ)器。4.1.2 DMA傳送的工作過程 1)I/O設(shè)備向DMAC發(fā)出DMA請求;2) DMAC向CPU發(fā)出總線請求;3)CPU在執(zhí)行完當(dāng)前指令的當(dāng)前的總線周期后,向DMAC發(fā)出總線響應(yīng)信號(hào);4)CPU脫離對系統(tǒng)總線的控制,由DMAC接管對系統(tǒng)總線的控制; 為什么DMA傳送方式能實(shí)現(xiàn)高速傳送?DMA傳送的過程是什么樣的?畫出流程。DMA有哪些操作方式?各有什么特點(diǎn)。簡述DMA控制器的兩個(gè)工作狀態(tài)的特點(diǎn)。試設(shè)計(jì)一種在8088大模式下與8237連接的基本電路圖。并說明你的設(shè)計(jì)中8237各個(gè)端口的實(shí)際地址。DMA控制器的時(shí)序包括哪幾個(gè)狀態(tài)周期?試畫出正常讀傳輸?shù)臅r(shí)序。DMAC的內(nèi)部地址寄存器是16位的,如何擴(kuò)展地址來訪問16MB的地址空間?
標(biāo)簽: DMA
上傳時(shí)間: 2013-11-18
上傳用戶:leixinzhuo
第6章 定時(shí)與計(jì)數(shù)技術(shù)6.1 概 述1.定時(shí) 定義:提供的時(shí)間基準(zhǔn)。 分類:內(nèi)部定時(shí)、外部定時(shí)。2.計(jì)數(shù) 定時(shí)與計(jì)數(shù)本質(zhì)上是一致的。 計(jì)數(shù)的信號(hào)隨機(jī),定時(shí)的信號(hào)具有周期性。3.應(yīng)用分時(shí)系統(tǒng)切換任務(wù)的時(shí)間基準(zhǔn)、測速、計(jì)數(shù)6.1.2 定時(shí)方法1.軟件定時(shí) 通過軟件指令周期方法定時(shí),如執(zhí)行循環(huán)程序。 增加CPU負(fù)擔(dān),通用性差,一般用于短延時(shí)。2.不可編程硬件定時(shí) 采用中小規(guī)模IC構(gòu)成。 不增加CPU負(fù)擔(dān),成本低,定時(shí)值不可改變。3.可編程硬件定時(shí) 采用可編程計(jì)數(shù)器完成,軟件可改變計(jì)數(shù)值。 可編程定時(shí)/計(jì)數(shù)器:實(shí)質(zhì)上定時(shí)和計(jì)數(shù)本質(zhì)上都是脈沖計(jì)數(shù)器,定時(shí)計(jì)的是內(nèi)部基準(zhǔn)時(shí)鐘源產(chǎn)生的脈沖,計(jì)數(shù)是計(jì)外部脈沖。6.1.3 定時(shí)/計(jì)數(shù)器基本原理1.內(nèi)部邏輯CPU接口: 片選、低端地址線、讀寫控制線、數(shù)據(jù)線外設(shè)接口: 時(shí)鐘、控制、輸出內(nèi)部邏輯: 端口地址譯碼器、各種寄存器2.工作過程 設(shè)初值、控制(計(jì)數(shù))、輸出
標(biāo)簽: 定時(shí) 計(jì)數(shù)技術(shù)
上傳時(shí)間: 2013-11-07
上傳用戶:yuzsu
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1