· 摘要: 本文利用了十六位SPCE061A單片機的強大的DSP功能,實現(xiàn)了特定發(fā)音人識別(Speaker Dependent)功能.結(jié)合大容量的FLASH存儲器,成功地實現(xiàn)將語音播放與識別技術應用于智能家居控制系統(tǒng)中.另外,詳細介紹了具有語音識別功能的新一代智能家居控制系統(tǒng)的硬件配置與軟件流程,從而在實現(xiàn)系統(tǒng)功能的同時,將低成本、低功耗與友好人機界面有機結(jié)合起來.
標簽: 單片機 語音識別 智能家居控制系統(tǒng) 實現(xiàn)方案
上傳時間: 2013-04-24
上傳用戶:xwd2010
基本信息 ·出版社:清華大學出版社 ·頁碼:360 頁 ·出版日期:2005年10月 ·ISBN:7302115095 ·條形碼:9787302115090 ·版本:第1版 ·裝幀:平裝 ·開本:16開 Pages Per Sheet -------------------------------------------------------------------------------- 內(nèi)容簡介 《電子設計從零開始》全書分為三大部分,共17章。第1章至第8章深入淺出地介紹了模擬電路的相關知識;第9章至第11章是數(shù)字電路部分,介紹了一些基本概念和系統(tǒng)開發(fā)過程中經(jīng)常使用的器件;從第12章到結(jié)束是以51單片機為例的單片機應用技術介紹,其中有大量的實例和完整的程序。 電子設計涉及的知識面廣、難度大,初學者往往不知從何入手。《電子設計從零開始》結(jié)合了作者多年的學習與輔導經(jīng)驗,全面系統(tǒng)地介紹了進行電子設計與制作所需要的各種知識,包括模擬電路、數(shù)字電路和單片機應用基礎,并結(jié)合Multisim仿真軟件對大部分實例進行了演示。 -------------------------------------------------------------------------------- 編輯推薦 《電子設計從零開始》通過“講故事”的形式將這三部分內(nèi)容逐步展開,并結(jié)合電路仿真軟Multisim 2001對一些實例進行了演示和驗證。著眼技術的應用,并不苛求計算和深刻的理論理解正是《電子設計從零開始》編寫時的目的;講求通俗易懂,在閱讀時應當注意提取知識點和實例中蘊含的技巧。書中還有一個特點就是插圖豐富,這對理解所講內(nèi)容是很有幫助的。 《電子設計從零開始》適合電類本、專科學生作為全面掌握電子設計基礎知識的參考書;也可作為無線電愛好者的實例參考用書;對于學有余力的非電類工科學生以及對電子設計感興趣的中學生朋友來說,也是一本很好的全面了解電子設計基礎知識的入門讀物。 -------------------------------------------------------------------------------- 目錄 第一章 走進電子技術 第二章 收音機里蘊含知識 第三章 制作第一件電子作品 第四章 從擴音機中學放大器 第五章 制作一臺多媒體音箱 第六章 振蕩器豐富多彩 第七章 集成電路ABC 第八章 傳感器及其他器件 第九章 數(shù)字啟航 第十章 邏輯門應用 第十一章 翻轉(zhuǎn)與計數(shù) 第十二章 單片機就在我們身邊 第十三章 單片機和LED 第十四章 單片機下命令 第十五章 跑馬燈 第十六章 馬表與時鐘 第十七章 采集我們的聲音 附錄A Multisim2001的安裝 附錄B Multisim2001的菜單欄 附錄C Multisim2001中的虛擬儀表 附錄D 數(shù)字電路綜合設計——數(shù)字鐘 附錄E ASCⅡ碼表 參考文獻 ……
上傳時間: 2013-06-05
上傳用戶:HGH77P99
? 尺寸:長152mmX寬163mmX高25mm ? 主要芯片:STC89C52RC(支持51單片機) ? 工作電壓:直流12伏(另有24V) 二、 特點 ? RS485標準接口 ? 16路輸出光電隔離控制繼電器。 ? 標準的11.0592M晶振。(便于設置串口波特率) ? 具有上電復位和手動復位。 ? MODBUS_RTU標準協(xié)議控制 ? 帶有掉電存儲功能,該單片機內(nèi)部集成。 ? 輸出16路繼電器LED指示。 ? 軟件設定地址等參數(shù)
標簽: Modbus_RTU 模式 控制板 繼電器輸出
上傳時間: 2013-10-08
上傳用戶:gdgzhym
電子發(fā)燒友網(wǎng)訊:應廣大電子發(fā)燒友網(wǎng)讀者要求,本電子書《C51單片機及C語言知識點必備秘籍》為《單片機關鍵知識點全攻略》單片機系列教程及《單片機C語言知識點全攻略》系列單片機C語言學習教程的全整合篇,供所需學習或收藏的工程師及單片機學生、單片機愛好者下載。 點擊下載《C51單片機及C語言知識點必備秘籍》電子書 單片機對于初學者來說確實很難理解,不少學過單片機的同學或電子愛好者,甚至在畢業(yè)時仍舊是一無所獲。基于此,電子發(fā)燒友網(wǎng)將整合《單片機關鍵知識點全攻略》,共分為四個系列,以饗讀者,敬請期待!此系列對于業(yè)內(nèi)電子工程師也有收藏和參考價值。 單片機關鍵知識點一覽: 系列一 1:單片機簡敘 2:單片機引腳介紹 3:單片機存儲器結(jié)構 4:第一個單片機小程序 5:單片機延時程序分析 6:單片機并行口結(jié)構 7:單片機的特殊功能寄存器 系列二 8:單片機尋址方式與指令系統(tǒng) 9:單片機數(shù)據(jù)傳遞類指令 10:單片機數(shù)據(jù)傳送類指令 11:單片機算術運算指令 12:單片機邏輯運算類指令 13:單片機邏輯與或異或指令祥解 14:單片機條件轉(zhuǎn)移指令 系列三 15:單片機位操作指令 16:單片機定時器與計數(shù)器 17:單片機定時器/計數(shù)器的方式 18:單片機的中斷系統(tǒng) 19:單片機定時器、中斷試驗 20:單片機定時/計數(shù)器實驗 21:單片機串行口介紹 系列四 22:單片機串行口通信程序設計 23:LED數(shù)碼管靜態(tài)顯示接口與編 24:動態(tài)掃描顯示接口電路及程序 25:單片機鍵盤接口程序設計 26:單片機矩陣式鍵盤接口技術及 27:關于單片機的一些基本概念 28:實際案例實踐——單片機音樂程序設計 繼《單片機學習知識點全攻略》得到廣大讀者好評,根據(jù)有網(wǎng)友提出美中不足的是所用單片機編程語言為匯編,基于此,電子發(fā)燒友網(wǎng)再接再厲再次為讀者誠摯奉上非常詳盡的《單片機C語言知識點全攻略》系列單片機C語言學習教程,本教程共分為四部分,主要知識點如下所示。 第一部分知識點: 第一課 建立你的第一個KeilC51項目 第二課 C51HEX文件的生成和單片機 第三課 C51數(shù)據(jù)類型 第四課 C51常量 第二部分知識點: 第五課 C51變量 第六課 C51運算符和表達式 第七課 運算符和表達式(關系運算符) 第八課 運算符和表達式(位運算符) 第九課 C51運算符和表達式(指針和地址運算符) 第三部分知識點: 第十課 C51表達式語句及仿真器 第十一課 C51復合語句和條件語句 第十二課 C51開關分支語句 第十三課 C51循環(huán)語句 第十四課 C51函數(shù) 第四部分知識點: 第十五課 C51數(shù)組的使用 第十六課 C51指針的使用 第十七課 C51結(jié)構、聯(lián)合和枚舉的使用 附錄(運算符優(yōu)先級和結(jié)合性等)
標簽: C51 單片機 C語言 創(chuàng)新
上傳時間: 2013-11-03
上傳用戶:Amygdala
前言智能儀表課采用了《單片機原理與接口技術》作為教材,這是一門實踐性極強的課程,理論和實驗教學的有機結(jié)合,是提高教學質(zhì)量的唯一途徑。為密切配合理論教學,針對SICElab賽思開放式綜合實驗/仿真系統(tǒng),我們編寫了配套的實驗教材。SICElab賽思開放式綜合實驗/仿真系統(tǒng)采用了符合單片機開發(fā)過程的“仿真式”組合設計思想,使得所有的實驗模塊及CPU資源均全力對用戶開放,從而充分滿足“驗證式”→“模仿式”→“探索式”→“開發(fā)式”的由淺入深的各種實驗要求。賽思開放式綜合實驗/仿真系統(tǒng)采用偉福G6W仿真器,為用戶提供了一個大集成軟件環(huán)境,統(tǒng)一的界面,包含一個項目管理器,一個功能強大的編輯器,匯編Make、build和調(diào)試工具并提供一個與第三方編譯器的接口,具有DOS/WINDOWS雙平臺,仿真器與實驗平臺分離,采用“仿真”方式進行實驗,同時,允許進行脫機運行工作,所以,實驗過程是與實際開發(fā)過程完全一致的。仿真器使用的是雙“CPU”架構方式,100%資源出讓,100%實時,100%無條件硬件斷點,可滿足學生實驗,畢業(yè)設計,參加電子競爭,教師科研所需。第一章簡單介紹了賽思開放式綜合實驗/仿真系統(tǒng)的組成(包括實驗平臺、仿真器、軟件支持、開關電源),實驗內(nèi)容,實驗方式,支持器件等。第二章選編了二十例驗證式實驗,包括實驗平臺操作,連接仿真器、PC機,利用DOS和WINDOWS平臺軟硬件結(jié)合的實驗,按由淺入深原則排列。第三章選編了十六例模仿和探索開發(fā)式實驗。教師和學生可根據(jù)課時和具體情況選擇實驗內(nèi)容,或自行設計新的實驗內(nèi)容。由于課時所限,有的實驗可讓學生在課后開放實驗室時完成,以提高學生動手能力,提高教學質(zhì)量,培養(yǎng)學生創(chuàng)新精神。附錄一介紹了綜合實驗平臺各模塊的電路圖,附錄二是實驗平臺鍵盤操作仿真方法說明。由于時間匆忙,加上編者水平有限,難免有錯漏之處,請讀者不吝賜教。
上傳時間: 2013-10-22
上傳用戶:sunshie
目錄 第一章 偉福仿真系統(tǒng)說明第一節(jié) 偉福仿真系統(tǒng)的使用說明快速入門第一節(jié) 分析功能使用第二章 仿真系統(tǒng)構成概述第三章 板上仿真器使用方法第一節(jié) 鍵盤使用說明第二節(jié) 脫機仿真第四章 偉福系列實驗說明第五章 實驗項目軟件實驗一 存儲器塊清零軟件實驗二 二進制到BCD轉(zhuǎn)換軟件實驗三 二進制到ASCII碼轉(zhuǎn)換軟件實驗四 內(nèi)存塊移動軟件實驗五 程序跳轉(zhuǎn)表軟件實驗六 數(shù)據(jù)排序硬件實驗一 P1口輸入、輸出實驗硬件實驗二 繼電器控制實驗硬件實驗三 用74LS245讀入數(shù)據(jù)硬件實驗四 用74LS273輸出數(shù)據(jù)硬件實驗五 音頻控制實驗硬件實驗六 8255輸入、輸出實驗硬件實驗七 計數(shù)器實驗硬件實驗八 外部中斷實驗硬件實驗九 定時器實驗硬件實驗十 外部中斷(急救車與交通燈)硬件實驗十一 八段數(shù)碼管顯示硬件實驗十二 鍵盤掃描顯示實驗硬件實驗十三 單片機串行口通訊實驗硬件實驗十四 直流電機控制實驗硬件實驗十五 步進電機控制實驗硬件實驗十六 8253計數(shù)器實驗硬件實驗十七 8259外部中斷實驗硬件實驗十八 8253定時器實驗硬件實驗十九 8251A串行通訊實驗附錄一 8086實驗程序及說明附錄二 MCS51實驗程序及說明參考書目
上傳時間: 2014-11-23
上傳用戶:GHF
16*2點陣字符液晶模塊是由點陣字符液晶顯示器件和專用的行列驅(qū)動器、控制器及必要的連接件、結(jié)構件裝配而成,可以顯示數(shù)字和英文字符。這種點陣字符模塊本身具有字符發(fā)生器,顯示容量大.功能豐富。
上傳時間: 2014-12-27
上傳用戶:longlong12345678
MSP430十六位單片機是世界著名的美國德州儀器公司(TEXASINSTRUMENTS)研制的,1999年進入中國市場以來發(fā)展迅速,應用領域日趨廣泛,主要有水表、氣表、熱表、電表、工業(yè)控制、家用電器、安防、金融等方面。
上傳時間: 2013-11-22
上傳用戶:wpt
摘要:通過對西瓜的力學和物理特性的分析,設計一套以凌陽十六位單片機為控制核心,以MEMS(微機電系統(tǒng))加速度傳感器為檢測工具,以FFT(快速傅里葉變換)為信號分析和計算方法的西瓜成熟度快速檢測裝置.檢測過程中,利用對西瓜的敲擊產(chǎn)生的振動頻率響應,來準確判斷西瓜的成熟程度.檢測結(jié)果將顯示在液晶顯示器上,包括振動波形,振動頻率和成熟度指數(shù),并且進行成熟度等級分類.關鍵詞:MEMS;單片機;西瓜成熟度
上傳時間: 2013-10-14
上傳用戶:urgdil
單片機指令系統(tǒng)原理 51單片機的尋址方式 學習匯編程序設計,要先了解CPU的各種尋址法,才能有效的掌握各個命令的用途,尋址法是命令運算碼找操作數(shù)的方法。在我們學習的8051單片機中,有6種尋址方法,下面我們將逐一進行分析。 立即尋址 在這種尋址方式中,指令多是雙字節(jié)的,一般第一個字節(jié)是操作碼,第二個字節(jié)是操作數(shù)。該操作數(shù)直接參與操作,所以又稱立即數(shù),有“#”號表示。立即數(shù)就是存放在程序存儲器中的常數(shù),換句話說就是操作數(shù)(立即數(shù))是包含在指令字節(jié)中的。 例如:MOV A,#3AH這條指令的指令代碼為74H、3AH,是雙字節(jié)指令,這條指令的功能是把立即數(shù)3AH送入累加器A中。MOV DPTR,#8200H在前面學單片機的專用寄存器時,我們已學過,DPTR是一個16位的寄存器,它由DPH及DPL兩個8位的寄存器組成。這條指令的意思就是把立即數(shù)的高8位(即82H)送入DPH寄存器,把立即數(shù)的低8位(即00H)送入DPL寄存器。這里也特別說明一下:在80C51單片機的指令系統(tǒng)中,僅有一條指令的操作數(shù)是16位的立即數(shù),其功能是向地址指針DPTR傳送16位的地址,即把立即數(shù)的高8位送入DPH,低8位送入DPL。 直接尋址 直接尋址方式是指在指令中操作數(shù)直接以單元地址的形式給出,也就是在這種尋址方式中,操作數(shù)項給出的是參加運算的操作數(shù)的地址,而不是操作數(shù)。例如:MOV A,30H 這條指令中操作數(shù)就在30H單元中,也就是30H是操作數(shù)的地址,并非操作數(shù)。 在80C51單片機中,直接地址只能用來表示特殊功能寄存器、內(nèi)部數(shù)據(jù)存儲器以及位地址空間,具體的說就是:1、內(nèi)部數(shù)據(jù)存儲器RAM低128單元。在指令中是以直接單元地址形式給出。我們知道低128單元的地址是00H-7FH。在指令中直接以單元地址形式給出這句話的意思就是這0-127共128位的任何一位,例如0位是以00H這個單元地址形式給出、1位就是以01H單元地址給出、127位就是以7FH形式給出。2、位尋址區(qū)。20H-2FH地址單元。3、特殊功能寄存器。專用寄存器除以單元地址形式給出外,還可以以寄存器符號形式給出。例如下面我們分析的一條指令 MOV IE,#85H 前面的學習我們已知道,中斷允許寄存器IE的地址是80H,那么也就是這條指令可以以MOV IE,#85H 的形式表述,也可以MOV 80H,#85H的形式表述。 關于數(shù)據(jù)存儲器RAM的內(nè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 前面我們已學過,數(shù)據(jù)前面加了“#”的,表示后面的數(shù)是立即數(shù)(如#85H,就表示85H就是一個立即數(shù)),數(shù)據(jù)前面沒有加“#”號的,就表示后面的是一個地址地址(如,MOV 65H,A這條指令的65H就是一個單元地址)。 寄存器尋址 寄存器尋址的尋址范圍是:1、4個工作寄存器組共有32個通用寄存器,但在指令中只能使用當前寄存器組(工作寄存器組的選擇在前面專用寄存器的學習中,我們已知道,是由程序狀態(tài)字PSW中的RS1和RS0來確定的),因此在使用前常需要通過對PSW中的RS1、RS0位的狀態(tài)設置,來進行對當前工作寄存器組的選擇。2、部份專用寄存器。例如,累加器A、通用寄存器B、地址寄存器DPTR和進位位CY。 寄存器尋址方式是指操作數(shù)在寄存器中,因此指定了寄存器名稱就能得到操作數(shù)。例如:MOV A,R0這條指令的意思是把寄存器R0的內(nèi)容傳送到累加器A中,操作數(shù)就在R0中。INC R3這條指令的意思是把寄存器R3中的內(nèi)容加1 從前面的學習中我產(chǎn)應可以理解到,其實寄存器尋址方式就是對由PSW程序狀態(tài)字確定的工作寄存器組的R0-R7進行讀/寫操作。 寄存器間接尋址 寄存間接尋址方式是指寄存器中存放的是操作數(shù)的地址,即操作數(shù)是通過寄存器間接得到的,因此稱為寄存器間接尋址。 MCS-51單片機規(guī)定工作寄存器的R0、R1做為間接尋址寄存器。用于尋址內(nèi)部或外部數(shù)據(jù)存儲器的256個單元。為什么會是256個單元呢?我們知道,R0或者R1都是一個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是一個16位的寄存器,所以它的尋址范圍就是2的十六次方=65536=64K。因用DPTR做為間址寄存器的尋址空間是64K,所以訪問片外數(shù)據(jù)存儲器時,我們通常就用DPTR做為間址寄存器。例:MOV DPTR,#1234H ;將DPTR值設為1234H(16位) MOVX A,@DPTR ;將外部RAM或I/O地址1234H內(nèi)的值放到累加器A中 在執(zhí)行PUSH(壓棧)和POP(出棧)指令時,采用堆棧指針SP作寄存器間接尋址。例:PUSH 30H ;把內(nèi)部RAM地址30H內(nèi)的值放到堆棧區(qū)中堆棧區(qū)是由SP寄存器指定的,如果執(zhí)行上面這條命令前,SP為60H,命令執(zhí)行后會把內(nèi)部RAM地址30H內(nèi)的值放到RAM的61H內(nèi)。 那么做為寄存器間接尋址用的寄存器主要有哪些呢?我們前面提到的有四個,R0、R1、DPTR、SP 寄存器間接尋址范圍總結(jié):1、內(nèi)部RAM低128單元。對內(nèi)部RAM低128單元的間接尋址,應使用R0或R1作間址寄存器,其通用形式為@Ri(i=0或1)。 2、外部RAM 64KB。對外部RAM64KB的間接尋址,應使用@DPTR作間址尋址寄存器,其形式為:@DPTR。例如MOVX A,@DPTR;其功能是把DPTR指定的外部RAM的單元的內(nèi)容送入累加器A中。外部RAM的低256單元是一個特殊的尋址區(qū),除可以用DPTR作間址寄存器尋址外,還可以用R0或R1作間址寄存器尋址。例如MOVX A,@R0;這條指令的意思是,把R0指定的外部RAM單元的內(nèi)容送入累加器A。 堆棧操作指令(PUSH和POP)也應算作是寄存器間接尋址,即以堆棧指針SP作間址寄存器的間接尋址方式。 寄存器間接尋址方式不可以訪問特殊功能寄存器!! 寄存器間接尋址也須以寄存器符號的形式表示,為了區(qū)別寄存器尋址我寄存器間接尋址的區(qū)別,在寄存器間接尋址方式式中,寄存器的名稱前面加前綴標志“@”。 基址寄存器加變址寄存器的變址尋址 這種尋址方式以程序計數(shù)器PC或DPTR為基址寄存器,累加器A為變址寄存器,變址尋址時,把兩者的內(nèi)容相加,所得到的結(jié)果作為操作數(shù)的地址。這種方式常用于訪問程序存儲器ROM中的數(shù)據(jù)表格,即查表操作。變址尋址只能讀出程序內(nèi)存入的值,而不能寫入,也就是說變址尋址這種方式只能對程序存儲器進行尋址,或者說它是專門針對程序存儲器的尋址方式。例:MOVC A,@A+DPTR這條指令的功能是把DPTR和A的內(nèi)容相加,再把所得到的程序存儲器地址單元的內(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這是一條無條件轉(zhuǎn)移指令,這條指令的意思就是DPTR加上累加器A的內(nèi)容做為一個16位的地址,執(zhí)行JMP這條指令是,程序就轉(zhuǎn)移到A+DPTR指定的地址去執(zhí)行。 第二、三條指令MOVC A,@A+DPTR和MOVC A,@A+PC指令這兩條指令的通常用于查表操作,功能完全一樣,但使用起來卻有一定的差別,現(xiàn)詳細說明如下。我們知道,PC是程序指針,是十六位的。DPTR是一個16位的數(shù)據(jù)指針寄存器,按理,它們的尋址范圍都應是64K。我們在學習特殊功能寄存器時已知道,程序計數(shù)器PC是始終跟蹤著程序的執(zhí)行的。也就是說,PC的值是隨程序的執(zhí)行情況自動改變的,我們不可以隨便的給PC賦值。而DPTR是一個數(shù)據(jù)指針,我們就可以給空上數(shù)據(jù)指針DPTR進行賦值。我們再看指令MOVC A,@A+PC這條指令的意思是將PC的值與累加器A的值相加作為一個地址,而PC是固定的,累加器A是一個8位的寄存器,它的尋址范圍是256個地址單元。講到這里,大家應可明白,MOVC A,@A+PC這條指令的尋址范圍其實就是只能在當前指令下256個地址單元。所在,這在我們實際應用中,可能就會有一個問題,如果我們需要查詢的數(shù)據(jù)表在256個地址單元之內(nèi),則可以用MOVC A,@A+PC這條指令進行查表操作,如果超過了256個單元,則不能用這條指令進行查表操作。剛才我們已說到,DPTR是一個數(shù)據(jù)指針,這個數(shù)據(jù)指針我們可以給它賦值操作的。通過賦值操作。我們可以使MOVC A,@A+DPTR這條指令的尋址范圍達到64K。這就是這兩條指令在實際應用當中要注意的問題。 變址尋址方式是MCS-51單片機所獨有的一種尋址方式。 位尋址 80C51單片機有位處理功能,可以對數(shù)據(jù)位進行操作,因此就有相應的位尋址方式。所謂位尋址,就是對內(nèi)部RAM或可位尋址的特殊功能寄存器SFR內(nèi)的某個位,直接加以置位為1或復位為0。 位尋址的范圍,也就是哪些部份可以進行位尋址: 1、我們在第十二課學習51單片機的存儲器結(jié)構時,我們已知道在單片機的內(nèi)部數(shù)據(jù)存儲器RAM的低128單元中有一個區(qū)域叫位尋址區(qū)。它的單元地址是20H-2FH。共有16個單元,一個單元是8位,所以位尋址區(qū)共有128位。這128位都單獨有一個位地址,其位地址的名字就是00H-7FH。這里就有一個比較麻煩的問題需要大家理解清楚了。我們在前面的學習中00H、01H。。。。7FH等等,所表示的都是一個字節(jié)(或者叫單元地址),而在這里,這些數(shù)據(jù)都變成了位地址。我們在指令中,或者在程序中如何來區(qū)分它是一個單元地址還是一個位地址呢?這個問題,也就是我們現(xiàn)在正在研究的位尋址的一個重要問題。其實,區(qū)分這些數(shù)據(jù)是位地址還是單元地址,我們都有相應的指令形式的。這個問題我們在后面的指令系統(tǒng)學習中再加以論述。 2、對專用寄存器位尋址。這里要說明一下,不是所有的專用寄存器都可以位尋址的。具體哪些專用寄存器可以哪些專用寄存器不可以,請大家回頭去看看我們前面關于專用寄存器的相關文章。一般來說,地址單元可以被8整除的專用寄存器,通常都可以進行位尋址,當然并不是全部,大家在應用當中應引起注意。 專用寄存器的位尋址表示方法: 下面我們以程序狀態(tài)字PSW來進行說明 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0 RS1 RS0 OV P 1、直接使用位地址表示:看上表,PSW的第五位地址是D5,所以可以表示為D5H MOV C,D5H 2、位名稱表示:表示該位的名稱,例如PSW的位5是F0,所以可以用F0表示 MOV C,F(xiàn)0 3、單元(字節(jié))地址加位表示:D0H單元位5,表示為DOH.5 MOV C,D0H.5 4、專用寄存器符號加位表示:例如PSW.5 MOV C,PSW.5 這四種方法實現(xiàn)的功能都是相同的,只是表述的方式不同而已。 例題: 1. 說明下列指令中源操作數(shù)采用的尋址方式。 MOV R5,R7 答案:寄存器尋址方式 MOV A,55H 直接尋址方式 MOV A,#55H 立即尋址方式 JMP @A+DPTR 變址尋址方式 MOV 30H,C 位尋址方式 MOV A,@R0 間接尋址方式 MOVX A,@R0 間接尋址方式 改錯題 請判斷下列的MCS-51單片機指令的書寫格式是否有錯,若有,請說明錯誤原因。 MOV R0,@R3 答案:間址寄存器不能使用R2~R7。 MOVC A,@R0+DPTR 變址尋址方式中的間址寄存器不可使用R0,只可使用A。 ADD R0,R1 運算指令中目的操作數(shù)必須為累加器A,不可為R0。 MUL AR0 乘法指令中的乘數(shù)應在B寄存器中,即乘法指令只可使用AB寄存器組合。
標簽: 單片機指令 系統(tǒng)原理
上傳時間: 2013-11-11
上傳用戶:caozhizhi