摘要:本文給出了一種基于單片機(jī)AT90PWM2B的BOOST升壓型臨界電流模式有源功率因數(shù)校正的實(shí)現(xiàn)方法。在70W可調(diào)光熒光燈電子鎮(zhèn)流器上的實(shí)用結(jié)果驗(yàn)證了該方法的可行性和有效性。該方法可以推廣到電子鎮(zhèn)流器和開(kāi)關(guān)電源等對(duì)功率因數(shù)要求較高的電力電子產(chǎn)品。關(guān)鍵詞:有源功率因數(shù)校正;BOOST升壓;臨界電流模式;AT90PWM2B;PSC
標(biāo)簽: 單片機(jī) 有源功率因數(shù)校正
上傳時(shí)間: 2013-11-12
上傳用戶:Vici
在超聲技術(shù)日益發(fā)展的今天,一個(gè)高質(zhì)量的超聲信號(hào)源成為各種超聲產(chǎn)品的主動(dòng)力。傳統(tǒng)模擬超聲信號(hào)源的智能化控制尚不完善,只能直接產(chǎn)生適當(dāng)頻率的電信號(hào),用以驅(qū)動(dòng)特定的超聲波換能器。這對(duì)于信號(hào)源的合理利用是一個(gè)較大的弊端。本文介紹了一種采用單片機(jī)與復(fù)雜可編程邏輯器件(CPLD)相結(jié)合的方法設(shè)計(jì)的新型任意波形發(fā)生器(AWG)。其中波形合成采用了直接數(shù)字合成(DDS)技術(shù)。本系統(tǒng)能輸出頻率和幅度可調(diào)的多種標(biāo)準(zhǔn)函數(shù)波以及任意波形。信號(hào)頻率范圍覆蓋超低頻和高頻,同時(shí)極大地提高了頻率的分辨率和準(zhǔn)確度,因此可以用它代替常用的模擬超聲信號(hào)源。本系統(tǒng)采用單片機(jī)(AT89S52)對(duì)整機(jī)的輸入、輸出過(guò)程和波形數(shù)據(jù)采集進(jìn)行控制。高速的CPLD(EPM7128S)將波形數(shù)據(jù)從存儲(chǔ)器(AT28C256)中讀出并送給波形生成DAC(AD7524)進(jìn)行轉(zhuǎn)換,形成所要的波形。并通過(guò)改變幅度控制DAC(DAC0832)的輸入值來(lái)調(diào)節(jié)輸出波形的峰值。用戶通過(guò)面板上的矩陣鍵盤(pán)和1602液晶模塊進(jìn)行人機(jī)交互。串行E2PROM(AT24C02)實(shí)現(xiàn)了波形數(shù)據(jù)掉電保存功能。任意波形數(shù)據(jù)既可由輸入的模擬信號(hào)經(jīng)A/D轉(zhuǎn)換后獲得,也可采用具備RS-232接口的手寫(xiě)板直接輸入。
標(biāo)簽: CPLD 單片機(jī) 任意波形發(fā)生器
上傳時(shí)間: 2013-11-25
上傳用戶:wvbxj
□基于來(lái)電顯示技術(shù),識(shí)別主人,利用手機(jī)或固定電話實(shí)現(xiàn)免接通,免費(fèi)用的絕密遙控關(guān)及撤防。□單芯片多功能可編程設(shè)計(jì),MCU內(nèi)核,有著十分靈活廣泛的應(yīng)用(可定制特殊功能)。自動(dòng)撥號(hào)的電話報(bào)警器方面:室內(nèi)手動(dòng)延時(shí)布防,手機(jī)或固定電話免接通遙控撤防;撥號(hào)報(bào)警+現(xiàn)場(chǎng)報(bào)警(可選)。電話遙控開(kāi)關(guān)方面:用于開(kāi)啟電控門(mén)鎖,保險(xiǎn)柜電控鎖,車(chē)庫(kù)電動(dòng)門(mén),電器開(kāi)關(guān)...等。更多應(yīng)用......。□單芯片最多可存入6組電話號(hào)碼(6個(gè)主人)不重碼,最后一組號(hào)碼可刷新,掉電不丟失,可保100年。□非主人撥入無(wú)效,主人需20秒內(nèi)連續(xù)撥通兩次遙控才有效(撤防或開(kāi)關(guān)),操縱成功后會(huì)自動(dòng)回?fù)苓b控者電話一次,以表示遙控成功。絕不影響電話的正常使用。□循環(huán)撥打1-6組主人電話號(hào)碼報(bào)警15次,接聽(tīng)報(bào)警時(shí)警聲提示,可同時(shí)選擇現(xiàn)場(chǎng)報(bào)警。無(wú)注冊(cè)用戶時(shí),觸發(fā)報(bào)警將自動(dòng)轉(zhuǎn)入連續(xù)現(xiàn)場(chǎng)報(bào)警1分鐘。□接警處理功能,接聽(tīng)報(bào)警期間,手機(jī)或固定電話按"#"鍵退出報(bào)警。未接警的號(hào)碼繼續(xù)打報(bào)警。□僅設(shè)計(jì)兩按鈕實(shí)現(xiàn)用戶注冊(cè)、信息刪除、室那手動(dòng)布防撤防、輸出開(kāi)關(guān)控制、報(bào)警模式設(shè)定,報(bào)警期間無(wú)法手動(dòng)撤防。□兩種反復(fù)可編程報(bào)警模式。掉電不丟失。模式1:報(bào)警完畢自動(dòng)撤防;模式2:報(bào)警完畢保持布防。□兩種自適應(yīng)電路模式:DTMF解碼器接入模式和DTMF解碼器不接入模式。自動(dòng)實(shí)現(xiàn)不同的電路設(shè)計(jì)實(shí)現(xiàn)不同的輸出控制功能。同一電路設(shè)計(jì),通過(guò)增減硬部件即可實(shí)現(xiàn)不同的輸出功能,QL310上電時(shí)自動(dòng)識(shí)別DTMF解碼器是否存在。□兩路警聲輸出:其中一路輸出用于操作音提示及報(bào)警時(shí)加載到電話線路中供監(jiān)聽(tīng)用。另一路為現(xiàn)場(chǎng)報(bào)警使用(可根據(jù)需要選用,這路只有在報(bào)警時(shí)才有輸出,設(shè)計(jì)時(shí)可通過(guò)加大功率提高警聲)。□狀態(tài)記憶功能:布撤防狀態(tài)都有記憶功能(掉電不丟失)。可避免布撤防期間的偶然的停電再上電是狀態(tài)發(fā)生變化。比如,當(dāng)前為布防狀態(tài),掉電再上電后還是保持布防狀態(tài)。□手動(dòng)布撤防提示音,布撤防LED指示燈。□上電開(kāi)機(jī)報(bào)警模式提示音,模式1發(fā)一聲提示音;模式2發(fā)兩聲提示音。□觸發(fā)端的信號(hào)智能檢測(cè),因此可適應(yīng)任何觸發(fā)信號(hào):或高電平,或低電平,或高/低脈沖信號(hào);無(wú)源的開(kāi)關(guān)信號(hào),如繼電器,干簧管或門(mén)磁開(kāi)關(guān)等(由于觸發(fā)端內(nèi)部有上拉電阻)。標(biāo)準(zhǔn)的TTL電平,通過(guò)外接簡(jiǎn)單的限幅電路可實(shí)現(xiàn)更高電平或脈沖的輸入(紅外探頭,防火探頭等)。特強(qiáng)抗干擾處理,長(zhǎng)距離布線可抗強(qiáng)電磁干擾。□20腳PDIP封裝及20腳SOP封裝。□5V低功耗。使用3.58M晶振。□工業(yè)級(jí)設(shè)計(jì),工作溫度:-40℃~+85℃
上傳時(shí)間: 2013-11-13
上傳用戶:lacsx
實(shí)驗(yàn)內(nèi)容: 1.閃爍的LED實(shí)驗(yàn)內(nèi)容:應(yīng)用凌陽(yáng)單片機(jī)控制一個(gè)LED燈不斷閃爍。實(shí)驗(yàn)?zāi)康模菏煜纹瑱C(jī)編程,學(xué)習(xí)通過(guò)IO引腳輸出數(shù)據(jù)。 2.由按鍵控制的LED實(shí)驗(yàn)要求:設(shè)計(jì)電路,完成用按鍵控制一個(gè)LED的亮與滅。實(shí)驗(yàn)?zāi)康模哼M(jìn)一步熟悉單片機(jī)編程,學(xué)習(xí)IO的輸入。 3.定時(shí)閃爍的LED實(shí)驗(yàn)內(nèi)容:設(shè)計(jì)程序,分別控制LED以1Hz、2Hz的速度閃爍。實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)定時(shí)器的使用。 4.自制電子時(shí)鐘實(shí)驗(yàn)內(nèi)容:設(shè)計(jì)電路及程序,自行自作一個(gè)電子鐘。以數(shù)碼管作為顯示。(自選:完成調(diào)時(shí)功能)實(shí)驗(yàn)?zāi)康模壕C合應(yīng)用之前的實(shí)驗(yàn)內(nèi)容,進(jìn)一步熟悉掌握輸入輸出以及定時(shí)器的應(yīng)用。5.AD/DA實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:(1)設(shè)計(jì)程序,使單片機(jī)輸出正弦波。(2)從信號(hào)源獲得一個(gè)正弦信號(hào),采樣后輸出采樣值。實(shí)驗(yàn)?zāi)康模簩W(xué)習(xí)AD/DA的使用。 6.音頻播放實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:壓縮一個(gè)自選音樂(lè)文件,編寫(xiě)程序選擇一個(gè)方式進(jìn)行播放。實(shí)驗(yàn)?zāi)康模赫莆找纛l播放的基本技術(shù)及其原理。 7.聲音錄制與播放實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:編寫(xiě)程序,按鍵1后錄音,按鍵2后停止,按鍵3后播放錄音內(nèi)容。實(shí)驗(yàn)?zāi)康模赫莆章曇翡浿萍夹g(shù)及其原理。 8.語(yǔ)音識(shí)別實(shí)驗(yàn)實(shí)驗(yàn)內(nèi)容:編寫(xiě)程序,完成語(yǔ)音識(shí)別。實(shí)驗(yàn)?zāi)康模赫莆照Z(yǔ)音識(shí)別技術(shù)。
標(biāo)簽: 凌陽(yáng) 單片機(jī)應(yīng)用 實(shí)驗(yàn) 教學(xué)大綱
上傳時(shí)間: 2014-12-27
上傳用戶:dapangxie
在一些需要高頻分辨率、設(shè)置轉(zhuǎn)換度的應(yīng)用場(chǎng)合,直接數(shù)字頻率合成器(DDS)技術(shù)具有其他頻率合成方法無(wú)法比擬的優(yōu)勢(shì)。在介紹DDS的基本原理及其典型器件AD9858的結(jié)構(gòu)和功能的基礎(chǔ)上,詳細(xì)論述了采用單片機(jī)+CPLD來(lái)控制AD9858實(shí)現(xiàn)寬帶雷達(dá)信號(hào)源的設(shè)計(jì)過(guò)程。實(shí)際應(yīng)用證明,該系統(tǒng)設(shè)計(jì)分辨率高,轉(zhuǎn)換速度快,在窄帶時(shí)無(wú)雜散動(dòng)態(tài)范圍SFDR優(yōu)于75 dBc,寬帶無(wú)雜散動(dòng)態(tài)范圍SFDR優(yōu)于55 dBC。
標(biāo)簽: 9858 AD 寬帶雷達(dá) 信號(hào)源
上傳時(shí)間: 2014-12-27
上傳用戶:ming52900
AVR mega128開(kāi)發(fā)板 聯(lián)系 楊迪 15336417867 0531-55508458 QQ:1347978253 http://www.easyele.cn 產(chǎn)品概述:AVR mega128開(kāi)發(fā)板是AVRVi開(kāi)發(fā)的基于Atmega128單片機(jī)的綜合學(xué)習(xí)開(kāi)發(fā)系統(tǒng),板載學(xué)習(xí)資源,集成JTAG仿真器和ISP下載功能,核心板可拆卸獨(dú)立使用,是你學(xué)習(xí)AVR單片機(jī),參加各類(lèi)電子設(shè)計(jì)競(jìng)賽,快速搭建產(chǎn)品的不二選擇。AVR mega128開(kāi)發(fā)板亦可以作為單片機(jī)培訓(xùn),高校實(shí)驗(yàn)室,課程設(shè)計(jì)等的實(shí)驗(yàn)器材。為了更好的支持客戶的學(xué)習(xí)和開(kāi)發(fā),此開(kāi)發(fā)板板通訊接口升級(jí)為USB接口,方便計(jì)算機(jī)沒(méi)有串口的朋友,學(xué)習(xí)起來(lái)更加簡(jiǎn)捷。貨號(hào):EasyAVRM128SK-A 規(guī)格: 套 重量:300克 單價(jià)498/套。 參數(shù)特色: 1.采用核心板和主板分離的形式,在系統(tǒng)的學(xué)習(xí)之后,可以把核心板直接用于產(chǎn)品中,快速搭建系統(tǒng)。 2.開(kāi)發(fā)板上集成了AVR JTAG ICE仿真器和AVR ISP編程器,超高性價(jià)比。 3.您只需要再擁有一臺(tái)計(jì)算機(jī),而不需要購(gòu)買(mǎi)仿真器和編程器就可以學(xué)習(xí)開(kāi)發(fā)了。 4.信號(hào)調(diào)理電路,輸入0~10V,軌至軌信號(hào)調(diào)理。 5.系統(tǒng)資源適中,性價(jià)比高。 6.豐富的學(xué)習(xí)資源,完善的產(chǎn)品支持。 7.EasyAVR教給你從開(kāi)發(fā)環(huán)境建立,軟件編譯,到下載,傳真,硬件設(shè)計(jì)等一系列電子工程師必備的技能,真正學(xué)以致用。 AVR mega128開(kāi)發(fā)板板上資源: M128 所有引腳引出,可以利用杜邦頭很方便的進(jìn)行接插擴(kuò)展,標(biāo)準(zhǔn)2.54針距,可以直接插在萬(wàn)用板上使用,便于進(jìn)行實(shí)驗(yàn) m128 DB Core 自帶5V、3V3 雙路電源穩(wěn)壓 m128 DB Core 外部晶振多種選擇,既可以使用板上已經(jīng)焊接好的14.7456M的晶振,也可以自己根據(jù)自己的需求擴(kuò)展,晶振的切換通過(guò)跳線實(shí)現(xiàn)m128 DB Core 帶有JTAG ISP 標(biāo)準(zhǔn)接口 m128 DB Core 自帶一路標(biāo)準(zhǔn)RS232-TTL轉(zhuǎn)換電路,方便實(shí)現(xiàn)串口通信 AVR mega128 開(kāi)發(fā)板底板:板載JTAG 仿真器 板載STK500 下載內(nèi)核 2路獨(dú)立可調(diào)的信號(hào)調(diào)理電路,可控增益G=0.1-10 2路RS232 串行接口 1路RS485 接口 8 路LED 顯示 4 位動(dòng)態(tài)7 段數(shù)碼管,利用74HC595進(jìn)行驅(qū)動(dòng) 4 位獨(dú)立按鍵 板載IIC 總線PCF8563 實(shí)時(shí)鐘芯片 板載IIC 總線EEPROM AT24c01 1 路有源蜂鳴器 1 路18B20 溫度傳感器接口,支持單總線器件。(12820可選:10元每個(gè)) 1602LCD 接口(送1602液晶) 12232、12864 LCD 接口(LCD12864可選:80元每個(gè)) 想找一份好工作嗎? 你想成為一名電子設(shè)計(jì)工程師嗎? 你對(duì)電子設(shè)計(jì)有濃厚興趣,而沒(méi)有工具嗎? 看了很久的程序方面的書(shū)籍,卻沒(méi)有實(shí)踐的機(jī)會(huì)嗎? 需要開(kāi)發(fā)產(chǎn)品,想快速入門(mén)? 想?yún)⒓与娮釉O(shè)計(jì)大賽,機(jī)器人大賽嗎? 這個(gè)性價(jià)比高的專(zhuān)業(yè)工具是你的不二選擇,它不僅僅是一個(gè)AVR mega128 開(kāi)發(fā)板,他還是一個(gè)強(qiáng)大的開(kāi)發(fā)工具,通過(guò)它進(jìn)行學(xué)習(xí)后,對(duì)電子產(chǎn)品的設(shè)計(jì)有進(jìn)一步的認(rèn)知,建立起學(xué)習(xí)ARM,DSP,F(xiàn)PGA的良好基礎(chǔ)。AVR mega128 開(kāi)發(fā)板集成了AVR學(xué)習(xí)板,AVR開(kāi)發(fā)板,AVR編程器,AVR仿真器,AVR核心板的功能,并且可以分開(kāi)獨(dú)立使用。 銷(xiāo)售清單: 1、調(diào)試好的AVR mega128開(kāi)發(fā)板一塊(板載JTAG ISP 二合一,已經(jīng)寫(xiě)入自檢程序) 2、ATmega128核心板一塊 3、USB供電線一條 4、標(biāo)準(zhǔn)串口(RS232)通訊線纜一條 5、資料光盤(pán)一張 6、使用說(shuō)明書(shū)(實(shí)驗(yàn)講義)一本 7、保修卡即訂單清單一份 8、贈(zèng)送LCD1602液晶一塊
標(biāo)簽: mega AVR 128 開(kāi)發(fā)板
上傳時(shí)間: 2013-11-10
上傳用戶:zm7516678
一種基于單片機(jī)技術(shù)的倒車(chē)后視系統(tǒng)的硬軟件設(shè)計(jì)。系統(tǒng)以單片機(jī)為控制中心,結(jié)合圖像采集和超聲波測(cè)距技術(shù),以車(chē)載電視為顯示平臺(tái)顯示障礙物的準(zhǔn)確信息。
標(biāo)簽: 單片機(jī) 系統(tǒng)設(shè)計(jì)
上傳時(shí)間: 2013-11-13
上傳用戶:mqien
最強(qiáng)萬(wàn)年歷源碼(支持24節(jié)氣、支持所有單片機(jī)、ARM)
標(biāo)簽: ARM 萬(wàn)年歷 源碼 單片機(jī)
上傳時(shí)間: 2013-10-21
上傳用戶:bjgaofei
單片機(jī)指令系統(tǒng)原理 51單片機(jī)的尋址方式 學(xué)習(xí)匯編程序設(shè)計(jì),要先了解CPU的各種尋址法,才能有效的掌握各個(gè)命令的用途,尋址法是命令運(yùn)算碼找操作數(shù)的方法。在我們學(xué)習(xí)的8051單片機(jī)中,有6種尋址方法,下面我們將逐一進(jìn)行分析。 立即尋址 在這種尋址方式中,指令多是雙字節(jié)的,一般第一個(gè)字節(jié)是操作碼,第二個(gè)字節(jié)是操作數(shù)。該操作數(shù)直接參與操作,所以又稱(chēng)立即數(shù),有“#”號(hào)表示。立即數(shù)就是存放在程序存儲(chǔ)器中的常數(shù),換句話說(shuō)就是操作數(shù)(立即數(shù))是包含在指令字節(jié)中的。 例如:MOV A,#3AH這條指令的指令代碼為74H、3AH,是雙字節(jié)指令,這條指令的功能是把立即數(shù)3AH送入累加器A中。MOV DPTR,#8200H在前面學(xué)單片機(jī)的專(zhuān)用寄存器時(shí),我們已學(xué)過(guò),DPTR是一個(gè)16位的寄存器,它由DPH及DPL兩個(gè)8位的寄存器組成。這條指令的意思就是把立即數(shù)的高8位(即82H)送入DPH寄存器,把立即數(shù)的低8位(即00H)送入DPL寄存器。這里也特別說(shuō)明一下:在80C51單片機(jī)的指令系統(tǒng)中,僅有一條指令的操作數(shù)是16位的立即數(shù),其功能是向地址指針DPTR傳送16位的地址,即把立即數(shù)的高8位送入DPH,低8位送入DPL。 直接尋址 直接尋址方式是指在指令中操作數(shù)直接以單元地址的形式給出,也就是在這種尋址方式中,操作數(shù)項(xiàng)給出的是參加運(yùn)算的操作數(shù)的地址,而不是操作數(shù)。例如:MOV A,30H 這條指令中操作數(shù)就在30H單元中,也就是30H是操作數(shù)的地址,并非操作數(shù)。 在80C51單片機(jī)中,直接地址只能用來(lái)表示特殊功能寄存器、內(nèi)部數(shù)據(jù)存儲(chǔ)器以及位地址空間,具體的說(shuō)就是:1、內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個(gè)單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。2、位尋址區(qū)。20H-2FH地址單元。3、特殊功能寄存器。專(zhuān)用寄存器除以單元地址形式給出外,還可以以寄存器符號(hào)形式給出。例如下面我們分析的一條指令 MOV IE,#85H 前面的學(xué)習(xí)我們已知道,中斷允許寄存器IE的地址是80H,那么也就是這條指令可以以MOV IE,#85H 的形式表述,也可以MOV 80H,#85H的形式表述。 關(guān)于數(shù)據(jù)存儲(chǔ)器RAM的內(nèi)部情況,請(qǐng)查看我們課程的第十二課。 直接尋址是唯一能訪問(wèn)特殊功能寄存器的尋址方式! 大家來(lái)分析下面幾條指令:MOV 65H,A ;將A的內(nèi)容送入內(nèi)部RAM的65H單元地址中MOV A,direct ;將直接地址單元的內(nèi)容送入A中MOV direct,direct;將直接地址單元的內(nèi)容送直接地址單元MOV IE,#85H ;將立即數(shù)85H送入中斷允許寄存器IE 前面我們已學(xué)過(guò),數(shù)據(jù)前面加了“#”的,表示后面的數(shù)是立即數(shù)(如#85H,就表示85H就是一個(gè)立即數(shù)),數(shù)據(jù)前面沒(méi)有加“#”號(hào)的,就表示后面的是一個(gè)地址地址(如,MOV 65H,A這條指令的65H就是一個(gè)單元地址)。 寄存器尋址 寄存器尋址的尋址范圍是:1、4個(gè)工作寄存器組共有32個(gè)通用寄存器,但在指令中只能使用當(dāng)前寄存器組(工作寄存器組的選擇在前面專(zhuān)用寄存器的學(xué)習(xí)中,我們已知道,是由程序狀態(tài)字PSW中的RS1和RS0來(lái)確定的),因此在使用前常需要通過(guò)對(duì)PSW中的RS1、RS0位的狀態(tài)設(shè)置,來(lái)進(jìn)行對(duì)當(dāng)前工作寄存器組的選擇。2、部份專(zhuān)用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和進(jìn)位位CY。 寄存器尋址方式是指操作數(shù)在寄存器中,因此指定了寄存器名稱(chēng)就能得到操作數(shù)。例如:MOV A,R0這條指令的意思是把寄存器R0的內(nèi)容傳送到累加器A中,操作數(shù)就在R0中。INC R3這條指令的意思是把寄存器R3中的內(nèi)容加1 從前面的學(xué)習(xí)中我產(chǎn)應(yīng)可以理解到,其實(shí)寄存器尋址方式就是對(duì)由PSW程序狀態(tài)字確定的工作寄存器組的R0-R7進(jìn)行讀/寫(xiě)操作。 寄存器間接尋址 寄存間接尋址方式是指寄存器中存放的是操作數(shù)的地址,即操作數(shù)是通過(guò)寄存器間接得到的,因此稱(chēng)為寄存器間接尋址。 MCS-51單片機(jī)規(guī)定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內(nèi)部或外部數(shù)據(jù)存儲(chǔ)器的256個(gè)單元。為什么會(huì)是256個(gè)單元呢?我們知道,R0或者R1都是一個(gè)8位的寄存器,所以它的尋址空間就是2的八次方=256。例:MOV R0,#30H ;將值30H加載到R0中 MOV A,@R0 ;把內(nèi)部RAM地址30H內(nèi)的值放到累加器A中 MOVX A,@R0 ;把外部RAM地址30H內(nèi)的值放到累加器A中 大家想想,如果用DPTR做為間址寄存器,那么它的尋址范圍是多少呢?DPTR是一個(gè)16位的寄存器,所以它的尋址范圍就是2的十六次方=65536=64K。因用DPTR做為間址寄存器的尋址空間是64K,所以訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器時(shí),我們通常就用DPTR做為間址寄存器。例:MOV DPTR,#1234H ;將DPTR值設(shè)為1234H(16位) MOVX A,@DPTR ;將外部RAM或I/O地址1234H內(nèi)的值放到累加器A中 在執(zhí)行PUSH(壓棧)和POP(出棧)指令時(shí),采用堆棧指針SP作寄存器間接尋址。例:PUSH 30H ;把內(nèi)部RAM地址30H內(nèi)的值放到堆棧區(qū)中堆棧區(qū)是由SP寄存器指定的,如果執(zhí)行上面這條命令前,SP為60H,命令執(zhí)行后會(huì)把內(nèi)部RAM地址30H內(nèi)的值放到RAM的61H內(nèi)。 那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個(gè),R0、R1、DPTR、SP 寄存器間接尋址范圍總結(jié):1、內(nèi)部RAM低128單元。對(duì)內(nèi)部RAM低128單元的間接尋址,應(yīng)使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。 2、外部RAM 64KB。對(duì)外部RAM64KB的間接尋址,應(yīng)使用@DPTR作間址尋址寄存器,其形式為:@DPTR。例如MOVX A,@DPTR;其功能是把DPTR指定的外部RAM的單元的內(nèi)容送入累加器A中。外部RAM的低256單元是一個(gè)特殊的尋址區(qū),除可以用DPTR作間址寄存器尋址外,還可以用R0或R1作間址寄存器尋址。例如MOVX A,@R0;這條指令的意思是,把R0指定的外部RAM單元的內(nèi)容送入累加器A。 堆棧操作指令(PUSH和POP)也應(yīng)算作是寄存器間接尋址,即以堆棧指針SP作間址寄存器的間接尋址方式。 寄存器間接尋址方式不可以訪問(wèn)特殊功能寄存器!! 寄存器間接尋址也須以寄存器符號(hào)的形式表示,為了區(qū)別寄存器尋址我寄存器間接尋址的區(qū)別,在寄存器間接尋址方式式中,寄存器的名稱(chēng)前面加前綴標(biāo)志“@”。 基址寄存器加變址寄存器的變址尋址 這種尋址方式以程序計(jì)數(shù)器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時(shí),把兩者的內(nèi)容相加,所得到的結(jié)果作為操作數(shù)的地址。這種方式常用于訪問(wèn)程序存儲(chǔ)器ROM中的數(shù)據(jù)表格,即查表操作。變址尋址只能讀出程序內(nèi)存入的值,而不能寫(xiě)入,也就是說(shuō)變址尋址這種方式只能對(duì)程序存儲(chǔ)器進(jìn)行尋址,或者說(shuō)它是專(zhuān)門(mén)針對(duì)程序存儲(chǔ)器的尋址方式。例:MOVC A,@A+DPTR這條指令的功能是把DPTR和A的內(nèi)容相加,再把所得到的程序存儲(chǔ)器地址單元的內(nèi)容送A假若指令執(zhí)行前A=54H,DPTR=3F21H,則這條指令變址尋址形成的操作數(shù)地址就是54H+3F21H=3F75H。如果3F75H單元中的內(nèi)容是7FH,則執(zhí)行這條指令后,累加器A中的內(nèi)容就是7FH。 變址尋址的指令只有三條,分別如下:JMP @A+DPTRMOVC A,@A+DPTRMOVC A,@A+PC 第一條指令JMP @A+DPTR這是一條無(wú)條件轉(zhuǎn)移指令,這條指令的意思就是DPTR加上累加器A的內(nèi)容做為一個(gè)16位的地址,執(zhí)行JMP這條指令是,程序就轉(zhuǎn)移到A+DPTR指定的地址去執(zhí)行。 第二、三條指令MOVC A,@A+DPTR和MOVC A,@A+PC指令這兩條指令的通常用于查表操作,功能完全一樣,但使用起來(lái)卻有一定的差別,現(xiàn)詳細(xì)說(shuō)明如下。我們知道,PC是程序指針,是十六位的。DPTR是一個(gè)16位的數(shù)據(jù)指針寄存器,按理,它們的尋址范圍都應(yīng)是64K。我們?cè)趯W(xué)習(xí)特殊功能寄存器時(shí)已知道,程序計(jì)數(shù)器PC是始終跟蹤著程序的執(zhí)行的。也就是說(shuō),PC的值是隨程序的執(zhí)行情況自動(dòng)改變的,我們不可以隨便的給PC賦值。而DPTR是一個(gè)數(shù)據(jù)指針,我們就可以給空上數(shù)據(jù)指針DPTR進(jìn)行賦值。我們?cè)倏粗噶頜OVC A,@A+PC這條指令的意思是將PC的值與累加器A的值相加作為一個(gè)地址,而PC是固定的,累加器A是一個(gè)8位的寄存器,它的尋址范圍是256個(gè)地址單元。講到這里,大家應(yīng)可明白,MOVC A,@A+PC這條指令的尋址范圍其實(shí)就是只能在當(dāng)前指令下256個(gè)地址單元。所在,這在我們實(shí)際應(yīng)用中,可能就會(huì)有一個(gè)問(wèn)題,如果我們需要查詢的數(shù)據(jù)表在256個(gè)地址單元之內(nèi),則可以用MOVC A,@A+PC這條指令進(jìn)行查表操作,如果超過(guò)了256個(gè)單元,則不能用這條指令進(jìn)行查表操作。剛才我們已說(shuō)到,DPTR是一個(gè)數(shù)據(jù)指針,這個(gè)數(shù)據(jù)指針我們可以給它賦值操作的。通過(guò)賦值操作。我們可以使MOVC A,@A+DPTR這條指令的尋址范圍達(dá)到64K。這就是這兩條指令在實(shí)際應(yīng)用當(dāng)中要注意的問(wèn)題。 變址尋址方式是MCS-51單片機(jī)所獨(dú)有的一種尋址方式。 位尋址 80C51單片機(jī)有位處理功能,可以對(duì)數(shù)據(jù)位進(jìn)行操作,因此就有相應(yīng)的位尋址方式。所謂位尋址,就是對(duì)內(nèi)部RAM或可位尋址的特殊功能寄存器SFR內(nèi)的某個(gè)位,直接加以置位為1或復(fù)位為0。 位尋址的范圍,也就是哪些部份可以進(jìn)行位尋址: 1、我們?cè)诘谑n學(xué)習(xí)51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)時(shí),我們已知道在單片機(jī)的內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM的低128單元中有一個(gè)區(qū)域叫位尋址區(qū)。它的單元地址是20H-2FH。共有16個(gè)單元,一個(gè)單元是8位,所以位尋址區(qū)共有128位。這128位都單獨(dú)有一個(gè)位地址,其位地址的名字就是00H-7FH。這里就有一個(gè)比較麻煩的問(wèn)題需要大家理解清楚了。我們?cè)谇懊娴膶W(xué)習(xí)中00H、01H。。。。7FH等等,所表示的都是一個(gè)字節(jié)(或者叫單元地址),而在這里,這些數(shù)據(jù)都變成了位地址。我們?cè)谥噶钪校蛘咴诔绦蛑腥绾蝸?lái)區(qū)分它是一個(gè)單元地址還是一個(gè)位地址呢?這個(gè)問(wèn)題,也就是我們現(xiàn)在正在研究的位尋址的一個(gè)重要問(wèn)題。其實(shí),區(qū)分這些數(shù)據(jù)是位地址還是單元地址,我們都有相應(yīng)的指令形式的。這個(gè)問(wèn)題我們?cè)诤竺娴闹噶钕到y(tǒng)學(xué)習(xí)中再加以論述。 2、對(duì)專(zhuān)用寄存器位尋址。這里要說(shuō)明一下,不是所有的專(zhuān)用寄存器都可以位尋址的。具體哪些專(zhuān)用寄存器可以哪些專(zhuān)用寄存器不可以,請(qǐng)大家回頭去看看我們前面關(guān)于專(zhuān)用寄存器的相關(guān)文章。一般來(lái)說(shuō),地址單元可以被8整除的專(zhuān)用寄存器,通常都可以進(jìn)行位尋址,當(dāng)然并不是全部,大家在應(yīng)用當(dāng)中應(yīng)引起注意。 專(zhuān)用寄存器的位尋址表示方法: 下面我們以程序狀態(tài)字PSW來(lái)進(jìn)行說(shuō)明 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV P 1、直接使用位地址表示:看上表,PSW的第五位地址是D5,所以可以表示為D5H MOV C,D5H 2、位名稱(chēng)表示:表示該位的名稱(chēng),例如PSW的位5是F0,所以可以用F0表示 MOV C,F(xiàn)0 3、單元(字節(jié))地址加位表示:D0H單元位5,表示為DOH.5 MOV C,D0H.5 4、專(zhuān)用寄存器符號(hào)加位表示:例如PSW.5 MOV C,PSW.5 這四種方法實(shí)現(xiàn)的功能都是相同的,只是表述的方式不同而已。 例題: 1. 說(shuō)明下列指令中源操作數(shù)采用的尋址方式。 MOV R5,R7 答案:寄存器尋址方式 MOV A,55H 直接尋址方式 MOV A,#55H 立即尋址方式 JMP @A+DPTR 變址尋址方式 MOV 30H,C 位尋址方式 MOV A,@R0 間接尋址方式 MOVX A,@R0 間接尋址方式 改錯(cuò)題 請(qǐng)判斷下列的MCS-51單片機(jī)指令的書(shū)寫(xiě)格式是否有錯(cuò),若有,請(qǐng)說(shuō)明錯(cuò)誤原因。 MOV R0,@R3 答案:間址寄存器不能使用R2~R7。 MOVC A,@R0+DPTR 變址尋址方式中的間址寄存器不可使用R0,只可使用A。 ADD R0,R1 運(yùn)算指令中目的操作數(shù)必須為累加器A,不可為R0。 MUL AR0 乘法指令中的乘數(shù)應(yīng)在B寄存器中,即乘法指令只可使用AB寄存器組合。
標(biāo)簽: 單片機(jī)指令 系統(tǒng)原理
上傳時(shí)間: 2013-11-11
上傳用戶:caozhizhi
單片機(jī)串行通信發(fā)射機(jī) 我所做的單片機(jī)串行通信發(fā)射機(jī)主要在實(shí)驗(yàn)室完成,參考有關(guān)的書(shū)籍和資料,個(gè)人完成電路的設(shè)計(jì)、焊接、檢查、調(diào)試,再根據(jù)自己的硬件和通信協(xié)議用匯編語(yǔ)言編寫(xiě)發(fā)射和顯示程序,然后加電調(diào)試,最終達(dá)到準(zhǔn)確無(wú)誤的發(fā)射和顯示。在這過(guò)程中需要選擇適當(dāng)?shù)脑侠淼碾娐穲D扎實(shí)的焊接技術(shù),基本的故障排除和糾正能力,會(huì)使用基本的儀器對(duì)硬件進(jìn)行調(diào)試,會(huì)熟練的運(yùn)用匯編語(yǔ)言編寫(xiě)程序,會(huì)用相關(guān)的軟件對(duì)自己的程序進(jìn)行翻譯,并燒進(jìn)芯片中,要與對(duì)方接收機(jī)統(tǒng)一通信協(xié)議,要耐心的反復(fù)檢查、修改和調(diào)試,直到達(dá)到預(yù)期目的。單片機(jī)串行通信發(fā)射機(jī)采用串行工作方式,發(fā)射并顯示兩位數(shù)字信息,既顯示00-99,使數(shù)據(jù)能夠在不同地方傳遞。硬件部分主要分兩大塊,由AT89C51和多個(gè)按鍵組成的控制模塊,包括時(shí)鐘電路、控制信號(hào)電路,時(shí)鐘采用6MHZ晶振和30pF的電容來(lái)組成內(nèi)部時(shí)鐘方式,控制信號(hào)用手動(dòng)開(kāi)關(guān)來(lái)控制,P1口來(lái)控制,P2、P3口產(chǎn)生信號(hào)并通過(guò)共陽(yáng)極數(shù)碼管來(lái)顯示,軟件采用匯編語(yǔ)言來(lái)編寫(xiě),發(fā)射程序在通信協(xié)議一致的情況下完成數(shù)據(jù)的發(fā)射,同時(shí)顯示程序?qū)Πl(fā)射的數(shù)據(jù)加以顯示。畢業(yè)設(shè)計(jì)的目的是了解基本電路設(shè)計(jì)的流程,豐富自己的知識(shí)和理論,鞏固所學(xué)的知識(shí),提高自己的動(dòng)手能力和實(shí)驗(yàn)?zāi)芰Γ瑥亩邆湟欢ǖ脑O(shè)計(jì)能力。我做得的畢業(yè)設(shè)計(jì)注重于對(duì)單片機(jī)串行發(fā)射的理論的理解,明白發(fā)射機(jī)的工作原理,以便以后單片機(jī)領(lǐng)域的開(kāi)發(fā)和研制打下基礎(chǔ),提高自己的設(shè)計(jì)能力,培養(yǎng)創(chuàng)新能力,豐富自己的知識(shí)理論,做到理論和實(shí)際結(jié)合。本課題的重要意義還在于能在進(jìn)一步層次了解單片機(jī)的工作原理,內(nèi)部結(jié)構(gòu)和工作狀態(tài)。理解單片機(jī)的接口技術(shù),中斷技術(shù),存儲(chǔ)方式,時(shí)鐘方式和控制方式,這樣才能更好的利用單片機(jī)來(lái)做有效的設(shè)計(jì)。我的畢業(yè)設(shè)計(jì)分為兩個(gè)部分,硬件部分和軟件部分。硬件部分介紹:?jiǎn)纹瑱C(jī)串行通信發(fā)射機(jī)電路的設(shè)計(jì),單片機(jī)AT89C51的功能和其在電路的作用。介紹了AT89C51的管腳結(jié)構(gòu)和每個(gè)管腳的作用及各自的連接方法。AT89C51 與MCS-51 兼容,4K字節(jié)可編程閃爍存儲(chǔ)器,壽命:1000次可擦,數(shù)據(jù)保存10年,全靜態(tài)工作:0HZ-24HZ,三級(jí)程序存儲(chǔ)器鎖定,128*8 位內(nèi)部RAM,32 跟可編程I/O 線,兩個(gè)16 位定時(shí)/計(jì)數(shù)器,5 個(gè)中斷源,5 個(gè)可編程串行通道,低功耗的閑置和掉電模式,片內(nèi)震蕩和時(shí)鐘電路,P0和P1 可作為串行輸入口,P3口因?yàn)槠涔苣_有特殊功能,可連接其他電路。例如P3.0RXD 作為串行輸出口,其中時(shí)鐘電路采用內(nèi)時(shí)鐘工作方式,控制信號(hào)采用手動(dòng)控制。數(shù)據(jù)的傳輸方式分為單工、半雙工、全雙工和多工工作方式;串行通信有兩種形式,異步和同步通信。介紹了串行串行口控制寄存器,電源管理寄存器PCON,中斷允許寄存器IE,還介紹了數(shù)碼顯示管的工作方式、組成,共陽(yáng)極和共陰極數(shù)碼顯示管的電路組成,有動(dòng)態(tài)和靜態(tài)顯示兩種方式,說(shuō)明了不同顯示方法與單片機(jī)的連接。再后來(lái)還介紹了硬件的焊接過(guò)程,及在焊接時(shí)遇到的問(wèn)題和應(yīng)該注意的方面。硬件焊接好后的檢查電路、不裝芯片上電檢查及上電裝芯片檢查。軟件部分:在了解電路設(shè)計(jì)原理后,根據(jù)原理和目的畫(huà)出電路流程圖,列出數(shù)碼顯示的斷碼表,計(jì)算波特率,設(shè)置串行口,在與接受機(jī)設(shè)置相同的通信協(xié)議的基礎(chǔ)上編寫(xiě)顯示和發(fā)射程序。編寫(xiě)完程序還要進(jìn)行編譯,這就必須會(huì)使用編譯軟件。介紹了編譯軟件的使用和使用過(guò)程中遇到的問(wèn)題,及在編譯后燒入芯片使用的軟件PLDA,后來(lái)的加電調(diào)試,及遇到的問(wèn)題,在沒(méi)問(wèn)題后與接受機(jī)連接,發(fā)射數(shù)據(jù),直到對(duì)方準(zhǔn)確接收到。在軟件調(diào)試過(guò)程中將詳細(xì)介紹調(diào)試遇到的問(wèn)題,例如:通信協(xié)議是否相同,數(shù)碼管是否與芯片連接對(duì)應(yīng),計(jì)數(shù)器是否開(kāi)始計(jì)數(shù)等。
標(biāo)簽: 單片機(jī) 串行通信 發(fā)射機(jī)
上傳時(shí)間: 2013-10-19
上傳用戶:uuuuuuu
蟲(chóng)蟲(chóng)下載站版權(quán)所有 京ICP備2021023401號(hào)-1