亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

圖片格式轉(zhuǎn)換

  • 波形發(fā)生器,含原理圖+電路圖+源程序

    含原理圖+電路圖+程序的波形發(fā)生器:在工作中,我們常常會用到波形發(fā)生器,它是使用頻度很高的電子儀器。現(xiàn)在的波形發(fā)生器都采用單片機來構成。單片機波形發(fā)生器是以單片機核心,配相應的外圍電路和功能軟件,能實現(xiàn)各種波形發(fā)生的應用系統(tǒng),它由硬件部分和軟件部分組成,硬件是系統(tǒng)的基礎,軟件則是在硬件的基礎上,對其合理的調配和使用,從而完成波形發(fā)生的任務。 波形發(fā)生器的技術指標:(1) 波形類型:方型、正弦波、三角波、鋸齒波;(2) 幅值電壓:1V、2V、3V、4V、5V;(3) 頻率值:10HZ、20HZ、50HZ、100HZ、200HZ、500HZ、1KHZ;(4) 輸出極性:雙極性操作設計1、 機器通電后,系統(tǒng)進行初始化,LED在面板上顯示6個0,表示系統(tǒng)處于初始狀態(tài),等待用戶輸入設置命令,此時,無任何波形信號輸出。2、 用戶按下“F”、“V”、“W”,可以分別進入頻率,幅值波形設置,使系統(tǒng)進入設置狀態(tài),相應的數(shù)碼管顯示“一”,此時,按其它鍵,無效;3、 在進入某一設置狀態(tài)后,輸入0~9等數(shù)字鍵,(數(shù)字鍵僅在設置狀態(tài)時,有效)為欲輸出的波形設置相應參數(shù),LED將參數(shù)顯示在面板上;4、 如果在設置中,要改變已設定的參數(shù),可按下“CL”鍵,清除所有已設定參數(shù),系統(tǒng)恢復初始狀態(tài),LED顯示6個0,等待重新輸入命令;5、 當必要的參數(shù)設定完畢后,所有參數(shù)顯示于LED上,用戶按下“EN”鍵,系統(tǒng)會將各波形參數(shù)傳遞到波形產生模塊中,以便控制波形發(fā)生,實現(xiàn)不同頻率,不同電壓幅值,不同類型波形的輸出;6、 用戶按下“EN”鍵后,波形發(fā)生器開始輸出滿足參數(shù)的波形信號,面板上相應類型的運行指示燈閃爍,表示波形正在輸出,LED顯示波形類型編號,頻率值、電壓幅值等波形參數(shù);7、 波形發(fā)生器在輸出信號時,按下任意一個鍵,就停止波形信號輸出,等待重新設置參數(shù),設置過程如上所述,如果不改變參數(shù),可按下“EN”鍵,繼續(xù)輸出原波形信號;8、 要停止波形發(fā)生器的使用,可按下復位按鈕,將系統(tǒng)復位,然后關閉電源。硬件組成部分通過綜合比較,決定選用獲得廣泛應用,性能價格高的常用芯片來構成硬件電路。單片機采用MCS-51系列的89C51(一塊),74LS244和74LS373(各一塊),反相驅動器 ULN2803A(一塊),運算放大器 LM324(一塊)  波形發(fā)生器的硬件電路由單片機、鍵盤顯示器接口電路、波形轉換(D/ A)電路和電源線路等四部分構成。1.單片機電路功能:形成掃描碼,鍵值識別,鍵功能處理,完成參數(shù)設置;形成顯示段碼,向LED顯示接口電路輸出;產生定時中斷;形成波形的數(shù)字編碼,并輸出到D/A接口電路;如電路原理圖所示: 89C51的P0口和P2口作為擴展I/O口,與8255、0832、74LS373相連接,可尋址片外的寄存器。單片機尋址外設,采用存儲器映像方式,外部接口芯片與內部存儲器統(tǒng)一編址,89C51提供16根地址線P0(分時復用)和P2,P2口提供高8位地址線,P0口提供低8位地址線。P0口同時還要負責與8255,0832的數(shù)據(jù)傳遞。P2.7是8255的片選信號,P2.6是0832(1)的片選,P2.5是0832(2)的片選,低電平有效,P0.0、P0.1經過74LS373鎖存后,送到8255的A1、A2作,片內A口,B口,C口,控制口等寄存器的字選。89C51的P1口的低4位連接4只發(fā)光三極管,作為波形類型指示燈,表示正在輸出的波形是什么類型。單片機89C51內部有兩個定時器/計數(shù)器,在波形發(fā)生器中使用T0作為中斷源。不同的頻率值對應不同的定時初值,定時器的溢出信號作為中斷請求。控制定時器中斷的特殊功能寄存器設置如下:定時控制寄存器TCON=(00010000)工作方式選擇寄存器(TMOD)=(00000000)中斷允許控制寄存器(IE)=(10000010)2、鍵盤顯示器接口電路功能:驅動6位數(shù)碼管動態(tài)顯示;           提供響應界面;           掃面鍵盤;           提供輸入按鍵。由并口芯片8255,鎖存器74LS273,74LS244,反向驅動器ULN2803A,6位共陰極數(shù)碼管(LED)和4×4行列式鍵盤組成。8255的C口作為鍵盤的I/O接口,C口的低4位輸出到掃描碼,高4位作為輸入行狀態(tài),按鍵的分布如圖所示。8255的A口作為LED段碼輸出口,與74LS244相連接,B口作為LED的位選信號輸出口,與ULN2803A相連接。8255內部的4個寄存器地址分配如下:控制口:7FFFH , A口:7FFFCH , B口:7FFDH ,  C口:7FFEH    3、D/A電路功能:將波形樣值的數(shù)字編碼轉換成模擬值;完成單極性向雙極性的波形輸出;構成由兩片0832和一塊LM324運放組成。0832(1)是參考電壓提供者,單片機向0832(1)內的鎖存器送數(shù)字編碼,不同的編碼會產生不同的輸出值,在本發(fā)生器中,可輸出1V、2V、3V、4V、5V等五個模擬值,這些值作為0832(2)的參考電壓,使0832(2)輸出波形信號時,其幅度是可調的。0832(2)用于產生各種波形信號,單片機在波形產生程序的控制下,生成波形樣值編碼,并送到0832(2)中的鎖存器,經過D/A轉換,得到波形的模擬樣值點,假如N個點就構成波形的一個周期,那么0832(2)輸出N個樣值點后,樣值點形成運動軌跡,就是波形信號的一個周期。重復輸出N個點后,由此成第二個周期,第三個周期……。這樣0832(2)就能連續(xù)的輸出周期變化的波形信號。運放A1是直流放大器,運放A2是單極性電壓放大器,運放A3是雙極性驅動放大器,使波形信號能帶得起負載。地址分配:0832(1):DFFFH ,0832(2):BFFFH4、電源電路:功能:為波形發(fā)生器提供直流能量;構成由變壓器、整流硅堆,穩(wěn)壓塊7805組成。220V的交流電,經過開關,保險管(1.5A/250V),到變壓器降壓,由220V降為10V,通過硅堆將交流電變成直流電,對于諧波,用4700μF的電解電容給予濾除。為保證直流電壓穩(wěn)定,使用7805進行穩(wěn)壓。最后,+5V電源配送到各用電負載。

    標簽: 波形發(fā)生器 原理圖 電路圖 源程序

    上傳時間: 2013-11-08

    上傳用戶:685

  • 基于P87C591的CAN總線系統(tǒng)智能節(jié)點設計

    基于P87 C591的CAN總線系統(tǒng)智能節(jié)點設計Design of CAN System Intelligent Node Based on P87C591 給出了基于帶CAN控制器的單片8位微控制器P87C591的智能節(jié)點的硬件電路及軟件結構,詳細介紹了設計中的難點及實現(xiàn)過程中應注意的問題。關鍵詞:CAN總線;智能節(jié)點 Abstract:A h ardc ircuita nds oftw arec onfigurationo fth ei ntelligentnode based on a microcontroller with CAN controller P87C591 arepresented.E speciallyt hec ruxi nd esigninga ndt hep roblemst hatshould be paid attention in realizing are discussed in details.Keyw ords:C AN;in telligentn ode CA N 總線 是德國Bosch從20世紀80年代初為解決現(xiàn)代汽車中眾多的控制與測試儀器之間的數(shù)據(jù)交換而開發(fā)的一種串行數(shù)據(jù)通信協(xié)議,它是一種多主總線,通信介質可以是雙絞線、同軸電纜或光導纖維。由于CAN總線具有較強的糾錯能力,支持差分收發(fā),因而適合高噪聲環(huán)境。并具有較遠的傳輸距離,適用于許多領域的分布式測控系統(tǒng)。目前已在工業(yè)自動化、建筑物環(huán)境控制、醫(yī)療設備等許多領域得到廣泛的應用。CAN已成為國際標準化組織IS011898標準。

    標簽: P87C591 CAN 總線系統(tǒng) 智能節(jié)點

    上傳時間: 2013-10-30

    上傳用戶:xymbian

  • 微型計算機課程設計論文—通用微機發(fā)聲程序的匯編設計

    微型計算機課程設計論文—通用微機發(fā)聲程序的匯編設計 本文講述了在微型計算機中利用可編程時間間隔定時器的通用發(fā)聲程序設計,重點講述了程序的發(fā)聲原理,節(jié)拍的產生,按節(jié)拍改變的動畫程序原理,并以設計一個簡單的樂曲評分程序為引子,分析程序設計的細節(jié)。關鍵字:微機 8253 通用發(fā)聲程序 動畫技術 直接寫屏 1. 可編程時間間隔定時器8253在通用個人計算機中,有一個可編程時間間隔定時器8253,它能夠根據(jù)程序提供的計數(shù)值和工作方式,產生各種形狀和各種頻率的計數(shù)/定時脈沖,提供給系統(tǒng)各個部件使用。本設計是利用計算機控制發(fā)聲的原理,編寫演奏樂曲的程序。    在8253/54定時器內部有3個獨立工作的計數(shù)器:計數(shù)器0,計數(shù)器1和計數(shù)器2,每個計數(shù)器都分配有一個斷口地址,分別為40H,41H和42H.8253/54內部還有一個公用的控制寄存器,端地址為43H.端口地址輸入到8253/54的CS,AL,A0端,分別對3個計數(shù)器和控制器尋址.     對8353/54編程時,先要設定控制字,以選擇計數(shù)器,確定工作方式和計數(shù)值的格式.每計數(shù)器由三個引腳與外部聯(lián)系,見教材第320頁圖9-1.CLK為時鐘輸入端,GATE為門控信號輸入端,OUT為計數(shù)/定時信號輸入端.每個計數(shù)器中包含一個16位計數(shù)寄存器,這個計數(shù)器時以倒計數(shù)的方式計數(shù)的,也就是說,從計數(shù)初值逐次減1,直到減為0為止.     8253/54的三個計數(shù)器是分別編程的,在對任一個計數(shù)器編程時,必須首先講控制字節(jié)寫入控制寄存器.控制字的作用是告訴8253/54選擇哪個計數(shù)器工作,要求輸出什么樣的脈沖波形.另外,對8253/54的初始化工作還包括,向選定的計數(shù)器輸入一個計數(shù)初值,因為這個計數(shù)值可以是8為的,也可以是16為的,而8253/5的數(shù)據(jù)總線是8位的,所以要用兩條輸出指令來寫入初值.下面給出8253/54初始化程序段的一個例子,將計數(shù)器2設定為方式3,(關于計數(shù)器的工作方式參閱教材第325—330頁)計數(shù)初值為65536.    MOV   AL,10110110B ;選擇計數(shù)器2,按方式3工作,計數(shù)值是二進制格式    OUT   43H,AL      ; j將控制字送入控制寄存器    MOV   AL,0        ;計數(shù)初值為0    OUT   42H,AL      ;將計數(shù)初值的低字節(jié)送入計數(shù)器2    OUT   42H,AL      ;將計數(shù)初值的高字節(jié)送入計數(shù)器2    在IBM PC中8253/54的三個時鐘端CLK0,CLK1和CLK2的輸入頻率都是1.1931817MHZ. PC機上的大多數(shù)I/O都是由主板上的8255(或8255A)可編程序外圍接口芯片(PPI)管理的.關于8255A的結構和工作原理及應用舉例參閱教材第340—373頁.教材第364頁的”PC/XT機中的揚聲器接口電路”一節(jié)介紹了揚聲器的驅動原理,并給出了通用發(fā)聲程序.本設計正是基于這個原理,通過編程,控制加到揚聲器上的信號的頻率,奏出樂曲的.2.發(fā)聲程序的設計下面是能產生頻率為f的通用發(fā)聲程序:MOV      AL, 10110110B   ;8253控制字:通道2,先寫低字節(jié),后寫高字節(jié)        ;方式3,二進制計數(shù)OUT      43H, AL                  ;寫入控制字MOV      DX, 0012H               ;被除數(shù)高位MOV      AX, 35DEH              ;被除數(shù)低位 DIV      ID      ;求計數(shù)初值n,結果在AX中OUT      42H, AL     ;送出低8位MOV      AL, AHOUT      42H,AL     ;送出高8位IN      AL, 61H     ;讀入8255A端口B的內容MOV      AH, AL                  ;保護B口的原狀態(tài)OR  AL, 03H     ;使B口后兩位置1,其余位保留OUT 61H,AL     ;接通揚聲器,使它發(fā)聲

    標簽: 微型計算機 發(fā)聲程序 論文 微機

    上傳時間: 2013-10-17

    上傳用戶:sunjet

  • 單片開關電源的設計和應用

    單片開關電源集成電路于20世紀如年代中、后期問世以來,在國際上獲得廣泛應用,已成為開發(fā)中、小功率無工頻變壓器式高效開關電源的首選產品。本書從實用角度出發(fā),全面系統(tǒng)深入地闡述了單片開關電源的設計與應用。全書共10章。第1至4章分別介紹了六大系列TOPswitch、TOPSwitch—II、TinySwitch、TNY256、MC33370、TOPSwitch—FX等67種型號的單片開關電源集成電路的原理與應用。第5章講述L4960、L4970/4970A系列15種型號的單片開關式穩(wěn)壓器。第6章介紹16種單片開關電源模塊的設計。第7章闡述單片開關電源的特殊應用。第8、9、10章分別介紹單片開關電源的設計指南、電磁兼容性及酗試技術、外圍電路關鍵元器件的選擇。這是國內第一部關于單片開關電源的專著,充分反映了該領域的國內外最新研究成果。 第1章 單片開關電源概述 1.1 開關電源的發(fā)展趨勢 1.1.1 開關電源的發(fā)展歷史 1.1.2 單片開關電源的發(fā)展趨勢 1.2 開關電源的基本原理 1.2.1 開關電源的控制方式 1.2.2 脈寬調制式開關電源的基本原理 1.3 單片開關電源的產品分類及主要特點 1.4 單片開關電源的基本原理及反饋電路類型 1.4.1 單片開關電源的基本原理 1.4.2 單片開關電源的兩種工作模式 1.4.3 反饋電路的四種基本類型 1.5 單片開關電源典型產品的技術指標 第2章 三端單片開關電源的原理與應用 2.1 TOPSwitch—II系列的產品分類及性能特點 2.1.1 TOPSwitch—II的產品分類 2.1.2 TOPSwitch—II的性能特點 2.2 TOPSwitch—II系列單片開關電源的工作原理

    標簽: 單片開關 電源

    上傳時間: 2013-10-29

    上傳用戶:潛水的三貢

  • 單片機模糊邏輯控制

    單片機模糊模糊控制是目前在控制領域所采用的三種智能控制方法中最具實際意義的方法。模糊控制的采用解決了大量過去人們無法解決的問題,并且在工業(yè)控制、家用電器和各個領域已取得了令人觸目的成效。本書是一本系統(tǒng)地介紹模糊控制的理論、技術、方法和應用的著作;內容包括模糊控制基礎、模糊控制器、模糊控制系統(tǒng)、模糊控制系統(tǒng)的穩(wěn)定性、模糊控制系統(tǒng)的開發(fā)軟件,用單片微型機實現(xiàn)模糊控制的技術和方法,模糊控制在家用電器和工業(yè)上應用的實際例子;反映了模糊控制目前的水平。 單片機模糊模糊控制目錄 : 第一章 模糊邏輯、神經網絡集成電路的發(fā)展 1.1 模糊邏輯及其集成電路的發(fā)展1.1.1 模糊邏輯的誕生和發(fā)展1.1.2 模糊集成電路的發(fā)展進程1.2 神經網絡及其集成電路的發(fā)展1.2.1 神經網絡的形成歷史1.2.2 神經網絡集成電路的發(fā)展1.3 模糊邏輯和神經網絡的結合1.3.1 模糊邏輯和神經網絡結合的意義1.3.2 模糊邏輯和神經網絡結合的前景第二章 模糊邏輯及其理論基礎 2.1 模糊集合與隸屬函數(shù)2.1.1 模糊集合概念2.1.2 隸屬函數(shù)2.1.3 分解定理與擴張定理2.1.4 模糊數(shù)2.2 模糊關系、模糊矩陣與模糊變換2.2.1 模糊關系2.2.2 模糊矩陣2.2.3 模糊變換2.3模糊邏輯和函數(shù)2.3.1模糊命題2.3.2模糊邏輯2.3.3模糊邏輯函數(shù)2.4模糊語言2.4.1 語言及語言的模糊性2.4.2 模糊語言2.4.3 語法規(guī)則和算子2.4.4 模糊條件語句2.5 模糊推理2.5.1 模糊推理的CRI法2.5.2 模糊推理的TVR法2.5.3 模糊推理的直接法2.5.4 模糊推理的精確值法2.5.5 模糊推理的強度轉移法第三章 模糊控制基礎 3.1 模糊控制的系統(tǒng)結構3.2 精確量的模糊化3.2.1 語言變量的分檔3.2.2 語言變量值的表示方法3.2.3 精確量轉換成模糊量3.3 模糊量的精確化3.3.1 最大隸屬度法3.3.2 中位數(shù)法3.3.3 重心法3.4 模糊控制規(guī)則及控制算法3.4.1 模糊控制規(guī)則的格式3.4.2 模糊控制規(guī)則的生成3.4.3 模糊控制規(guī)則的優(yōu)化3.4.4 模糊控制算法3.5 模糊控制的神經網絡方法3.5.1 神經元和神經網絡3.5.2 神經網絡的分布存儲和容錯性3.5.3 神經網絡的學習算法3.5.4 神經網絡實現(xiàn)的模糊控制3.5.5 神經網絡構造隸屬函數(shù)3.5.6 神經網絡存儲控制規(guī)則3.5.7 神經網絡實現(xiàn)模糊化、反模糊化第四章 模糊控制器 4.1 模糊控制器結構4.2 模糊控制器設計4.2.1 常規(guī)模糊控制器設計4.2.2 變結構模糊控制器設計4.2.3 自組織模糊控制器設計4.2.4 自適應模糊控制器設計4.3 模糊控制器的數(shù)學模型4.3.1 常規(guī)模糊控制器的數(shù)學模型4.3.2 模糊控制器數(shù)學模型的建立第五章 模糊控制系統(tǒng) 5.1 模糊系統(tǒng)的辨識和建模5.1.1 模糊系統(tǒng)辨識的數(shù)學基礎5.1.2 基于模糊關系方程的模糊模型辨識5.1.3 基于語言控制規(guī)則的模糊模型辨識5.2 模糊控制系統(tǒng)的設計5.2.1 模糊控制系統(tǒng)的一般設計過程5.2.2 模糊控制系統(tǒng)的典型設計5.3 模糊控制系統(tǒng)的穩(wěn)定性5.3.1 穩(wěn)定性分析的Lyapunov直接法5.3.2 語言規(guī)則描述的模糊控制系統(tǒng)的穩(wěn)定性5.3.3 關系方程描述的模糊控制系統(tǒng)的穩(wěn)定性第六章 數(shù)字單片機與模糊控制6.1 數(shù)字單片機MC68HC705P96.1.1 MC68HC705P9單片機性能概論6.1.2 MC68HC705P9單片機基本結構6.1.3 MC68HC705P9指令系統(tǒng)6.2 數(shù)字單片機模糊控制方式6.2.1 數(shù)字單片機與模糊控制關系6.2.2 數(shù)字單片機模糊控制方式第七章 模糊單片機與模糊控制7.1 模糊單片機NLX2307.1.1 模糊單片機NLX230性能概況7.1.2 NLX230的結構及引腳7.1.3 NLX230的模糊推理方式7.1.4 NLX230的內部寄存器7.1.5 NLX230的操作及接口技術7.2 NLX230開發(fā)系統(tǒng)7.3 NLX230應用例子第八章 模糊控制的開發(fā)軟件8.1 模糊推理機原理8.2 模糊推理機的算法8.3 模糊推理機結構和清單8.4 模糊邏輯知識基發(fā)生器8.5 模糊推理開發(fā)環(huán)境8.5.1 FIDE的工作條件8.5.2 FIDE的結構8.5.3 FIDE的工作過程第九章 模糊控制在家用電器中的應用9.1 模糊控制的電冰箱9.1.1 電冰箱模糊控制系統(tǒng)結構9.1.2 模糊控制規(guī)則和模糊量9.1.3 控制系統(tǒng)的電路結構9.1.4 控制規(guī)則的自調整9.2 模糊控制的電飯鍋9.2.1 煮飯的工藝過程曲線9.2.2 模糊控制的邏輯結構9.2.3 模糊量和模糊推理9.2.4 控制軟件框圖9.3 模糊控制的微波爐9.3.1 控制電路的結構框圖9.3.2 微波爐的模糊量與推理9.3.3 微波爐控制電路結構原理9.3.4 控制軟件原理及框圖9.4 模糊控制的洗衣機9.4.1 模糊洗衣機控制系統(tǒng)邏輯結構9.4.2 模糊洗衣機的模糊推理9.4.3 洗衣機物理量檢測方法9.4.4 布質和布量的模糊推理第十章 模糊控制在工程上的應用10.1 模糊參數(shù)自適應PID控制器10.1.1 自校正PID控制器10.1.2 模糊參數(shù)自適應PID控制系統(tǒng)結構10.1.3 模糊控制規(guī)則的產生10.1.4 模糊推理機理及運行結果10.2 恒溫爐模糊控制10.2.1 恒溫爐模糊控制的系統(tǒng)結構10.2.2 模糊控制器及控制規(guī)則的形成10.2.3 模糊控制器的校正10.3 感應電機模糊矢量控制10.3.1 模糊矢量控制系統(tǒng)結構10.3.2 矢量控制的基本原理10.3.3 模糊電阻觀測器10.3.4 模糊控制器及運行

    標簽: 單片機 模糊邏輯 控制

    上傳時間: 2014-12-28

    上傳用戶:semi1981

  • 微機接口技術試題

    微機接口技術試題:《微機接口技術》模擬試題  一、 選擇題:(每空1分,共20分)1. CPU與外設之間交換數(shù)據(jù)常采用        、       、       和        四種方式,PC機鍵盤接口采用      傳送方式。 ⒉ 當進行DMA方式下的寫操作時,數(shù)據(jù)是從       傳送到       __中。 ⒊ PC總線、ISA總線和EISA總線的地址線分別為:     、     和     根。 ⒋ 8254定時/計數(shù)器內部有     個端口、共有     種工作方式。 ⒌8255的A1和A0引腳分別連接在地址總線的A1和A0,當命令端口的口地址為317H時,則A口、B口、C口的口地址分別為     、     、      。 ⒍ PC微機中最大的中斷號是       、最小的中斷號是       。 ⒎PC微機中鍵盤是從8255的       口得到按鍵數(shù)據(jù)。 ⒏ 串行通信中傳輸線上即傳輸_________,又傳輸_________。 二、選擇題:(每題2分,共10分)⒈ 設串行異步通信每幀數(shù)據(jù)格式有8個數(shù)據(jù)位、無校驗、一個停止位,若波特率為9600B/S,該方式每秒最多能傳送(    )個字符。  ①  1200     ②  150 ③  960          ④  120 2.輸出指令在I/O接口總線上產生正確的命令順序是(    )。① 先發(fā)地址碼,再發(fā)讀命令,最后讀數(shù)據(jù)。② 先發(fā)讀命令、再發(fā)地址碼,最后讀數(shù)據(jù)。③ 先送地址碼,再送數(shù)據(jù),最后發(fā)寫命令。④ 先送地址碼,再發(fā)寫命令、最后送數(shù)據(jù)。3 使用8254設計定時器,當輸入頻率為1MHZ并輸出頻率為100HZ時,該定時器的計數(shù)初值為(      )。 ① 100   ② 1000 ③ 10000 ④ 其它 4 在PC機中5號中斷,它的中斷向地址是(     )。 ① 0000H:0005H   ② 0000H:0010H ③ 0000H:0014H        ④ 0000H:0020H 5. 四片8259級聯(lián)時可提供的中斷請求總數(shù)為(      )。 ① 29個  ② 30個  ③ 31個    ④ 32個 6. 下述總線中,組內都是外設串行總線為(   )組。① RS-485、IDE、ISA。② RS-485、IEEE1394、USB。③ RS-485、PCI、IEEE1394。④ USB、SCSI、RS-232。 7. DMA在(  )接管總線的控制權。① 申請階段  ② 響應階段 ③ 數(shù)據(jù)傳送階段   ④ 結束階段 8. 中斷服務程序入口地址是(  )。 ① 中斷向量表的指針 ② 中斷向量 ③ 中斷向量表  ④ 中斷號

    標簽: 微機 接口技術 試題

    上傳時間: 2013-11-16

    上傳用戶:xiaoxiang

  • pic單片機實用教程(提高篇)

    pic單片機實用教程(提高篇)以介紹PIC16F87X型號單片機為主,并適當兼顧PIC全系列,共分9章,內容包括:存儲器;I/O端口的復位功能;定時器/計數(shù)器TMR1;定時器TMR2;輸入捕捉/輸出比較/脈寬調制CCP;模/數(shù)轉換器ADC;通用同步/異步收發(fā)器USART;主控同步串行端口MSSP:SPI模式和I2C模式。突出特點:通俗易懂、可讀性強、系統(tǒng)全面、學練結合、學用并重、實例豐富、習題齊全。<br>本書作為Microchip公司大學計劃選擇用書,可廣泛適用于初步具備電子技術基礎和計算機知識基礎的學生、教師、單片機愛好者、電子制作愛好者、電器維修人員、電子產品開發(fā)設計者、工程技術人員閱讀。本教程全書共分2篇,即基礎篇和提高篇,分2冊出版,以適應不同課時和不同專業(yè)的需要,也為教師和讀者增加了一種可選方案。 第1章 EEPROM數(shù)據(jù)存儲器和FIASH程序存儲器1.1 背景知識1.1.1 通用型半導體存儲器的種類和特點1.1.2 PIC單片機內部的程序存儲器1.1.3 PIC單片機內部的EEPROM數(shù)據(jù)存儲器1.1.4 PIC16F87X內部EEPROM和FIASH操作方法1.2 與EEPROM相關的寄存器1.3 片內EEPROM數(shù)據(jù)存儲器結構和操作原理1.3.1 從EEPROM中讀取數(shù)據(jù)1.3.2 向EEPROM中燒寫數(shù)據(jù)1.4 與FLASH相關的寄存器1.5 片內FLASH程序存儲器結構和操作原理1.5.1 讀取FLASH程序存儲器1.5.2 燒寫FLASH程序存儲器1.6 寫操作的安全保障措施1.6.1 寫入校驗方法1.6.2 預防意外寫操作的保障措施1.7 EEPROM和FLASH應用舉例1.7.1 EEPROM的應用1.7.2 FIASH的應用思考題與練習題第2章 輸入/輸出端口的復合功能2.1 RA端口2.1.1 與RA端口相關的寄存器2.1.2 電路結構和工作原理2.1.3 編程方法2.2 RB端口2.2.1 與RB端口相關的寄存器2.2.2 電路結構和工作原理2.2.3 編程方法2.3 RC端口2.3.1 與RC端口相關的寄存器2.3.2 電路結構和工作原理2.3.3 編程方法2.4 RD端口2.4.1 與RD端口相關的寄存器2.4.2 電路結構和工作原理2.4.3 編程方法2.5 RE端口2.5.1 與RE端口相關的寄存器2.5.2 電路結構和工作原理2.5.3 編程方法2.6 PSP并行從動端口2.6.1 與PSP端口相關的寄存器2.6.2 電路結構和工作原理2.7 應用舉例思考題與練習題第3章 定時器/計數(shù)器TMR13.1 定時器/計數(shù)器TMR1模塊的特性3.2 定時器/計數(shù)器TMR1模塊相關的寄存器3.3 定時器/計數(shù)器TMR1模塊的電路結構3.4 定時器/計數(shù)器TMR1模塊的工作原理3.4.1 禁止TMR1工作3.4.2 定時器工作方式3.4.3 計數(shù)器工作方式3.4.4 TMR1寄存器的賦值與復位3.5 定時器/計數(shù)器TMR1模塊的應用舉例思考題與練習題第4章 定時器TMR24.1 定時器TMR2模塊的特性4.2 定時器TMR2模塊相關的寄存器4.3 定時器TMR2模塊的電路結構4.4 定時器TMR2模塊的工作原理4.4.1 禁止TMR2工作4.4.2 定時器工作方式4.4.3 寄存器TMR2和PR2以及分頻器的復位4.4.4 TMR2模塊的初始化編程4.5 定時器TMR2模塊的應用舉例思考題與練習題第5章 輸入捕捉/輸出比較/脈寬調制CCP5.1 輸入捕捉工作模式5.1.1 輸入捕捉摸式相關的寄存器5.1.2 輸入捕捉模式的電路結構5.1.3 輸入捕捉摸式的工作原理5.1.4 輸入捕捉摸式的應用舉例5.2 輸出比較工作模式5.2.1 輸出比較模式相關的寄存器5.2.2 輸出比較模式的電路結構5.2.3 輸出比較模式的工作原理5.2.4 輸出比較模式的應用舉例5.3 脈寬調制輸出工作模式5.3.1 脈寬調制模式相關的寄存器5.3.2 脈寬調制模式的電路結構5.3.3 脈寬調制模式的工作原理5.3.4 脈定調制模式的應用舉例5.4 兩個CCP模塊之間相互關系思考題與練習題第6章 模/數(shù)轉換器ADC6.1 背景知識6.1.1 ADC種類與特點6.1.2 ADC器件的工作原理6.2 PIC16F87X片內ADC模塊6.2.1 ADC模塊相關的寄存器6.2.2 ADC模塊結構和操作原理6.2.3 ADC模塊操作時間要求6.2.4 特殊情況下的A/D轉換6.2.5 ADC模塊的轉換精度和分辨率6.2.6 ADC模塊的內部動作流程和傳遞函數(shù)6.2.7 ADC模塊的操作編程6.3 PIC16F87X片內ADC模塊的應用舉例思考題與練習題第7章 通用同步/異步收發(fā)器USART7.1 串行通信的基本概念7.1.1 串行通信的兩種基本方式7.1.2 串行通信中數(shù)據(jù)傳送方向7.1.3 串行通信中的控制方式7.1.4 串行通信中的碼型、編碼方式和幀結構7.1.5 串行通信中的檢錯和糾錯方式7.1.6 串行通信組網方式7.1.7 串行通信接口電路和參數(shù)7.1.8 串行通信的傳輸速率7.2 PIC16F87X片內通用同步/異步收發(fā)器USART模塊7.2.1 與USART模塊相關的寄存器7.2.2 USART波特率發(fā)生器BRG7.2.3 USART模塊的異步工作方式7.2.4 USART模塊的同步主控工作方式7.2.5 USART模塊的同步從動工作方式7.3 通用同步/異步收發(fā)器USART的應用舉例思考題與練習題第8章 主控同步串行端口MSSP——SPI模式8.1 SPI接口的背景知識8.1.1 SPI接口信號描述8.1.2 基于SPI的系統(tǒng)構成方式8.1.3 SPI接口工作原理8.1.4 兼容的MicroWire接口8.2 PIC16F87X的SPI接口8.2.1 SPI接口相關的寄存器8.2.2 SPI接口的結構和操作原理8.2.3 SPI接口的主控方式8.2.4 SPI接口的從動方式8.3 SPI接口的應用舉例思考題與練習題第9章 主控同步串行端口MSSP——I(平方)C模式9.1 I(平方)C總線的背景知識9.1.1 名詞術語9.1.2 I(平方)C總線的技術特點9.1.3 I(平方)C總線的基本工作原理9.1.4 I(平方)C總線信號時序分析9.1.5 信號傳送格式9.1.6 尋址約定9.1.7 技術參數(shù)9.1.8 I(平方)C器件與I(平方)C總線的接線方式9.1.9 相兼容的SMBus總線9.2 與I(平方)C總線相關的寄存器9.3 典型信號時序的產生方法9.3.1 波特率發(fā)生器9.3.2 啟動信號9.3.3 重啟動信號9.3.4 應答信號9.3.5 停止信號9.4 被控器通信方式9.4.1 硬件結構9.4.2 被主控器尋址9.4.3 被控器接收——被控接收器9.4.4 被控器發(fā)送——被控發(fā)送器9.4.5 廣播式尋址9.5 主控器通信方式9.5.1 硬件結構9.5.2 主控器發(fā)送——主控發(fā)送器9.5.3 主控器接收——主控接收器9.6 多主通信方式下的總線沖突和總線仲裁9.6.1 發(fā)送和應答過程中的總線沖突9.6.2 啟動過程中的總線沖突9.6.3 重啟動過程中的總線沖突9.6.4 停止過程中的總線沖突9.7 I(平方)C總線的應用舉例思考題與練習題附錄A 包含文件P16F877.INC附錄B 新版宏匯編器MPASM偽指令總表參考文獻

    標簽: pic 單片機 實用教程

    上傳時間: 2013-12-14

    上傳用戶:xiaoyuer

  • 單片機應用技術選編3

    單片機應用技術選編(3) 目錄  第一章 單片機的綜合應用技術1.1 8098單片機存儲器的擴展技術1.2 87C196KC單片機的DMA功能1.3 MCS?96系列單片機高精度接口設計1.4 利用PC機的8096軟件開發(fā)系統(tǒng)1.5 EPROM模擬器及其應用1.6 MCS?51智能反匯編軟件的設計與實現(xiàn)1.7 MCS?51系列軟件設計與調試中一個值得注意的問題1.8 PL/M語言在微機開發(fā)系統(tǒng)中的應用特性1.9 MCS?51單片機開發(fā)系統(tǒng)中的斷點產生1.10 C語言實型數(shù)與單片機浮點數(shù)之間數(shù)據(jù)格式的轉換1.11 微機控制系統(tǒng)初始化問題探討1.12 MCS?51中斷系統(tǒng)中的復位問題1.13 工業(yè)控制軟件的編程原則與編程技巧1.14 CMOS微處理器的功耗特性及其功耗控制原理和應用1.15 基于PLL技術的A/D、D/A轉換器的設計1.16 智能儀器監(jiān)控程序的模塊化設計1.17 用軟件邏輯開關實現(xiàn)單片機的地址重疊使用1.18 8259A可編程中斷控制器與8031單片機接口電路及編程1.19 NSC810及其在各種微處理機中的應用1.20 MC146818在使用中的幾個問題1.21 交流伺服系統(tǒng)中采用8155兼作雙口信箱存儲器的雙微機結構1.22 實用漢字庫芯片的制作 第二章 新一代存儲器及邏輯器件2.1 新一代非易失性記憶元件--閃爍存儲器2.2 Flash存儲器及應用2.3 隨機靜態(tài)存儲器HM628128及應用2.4 非揮發(fā)性隨機存儲器NOVRAM2.5 ASIC的設計方法和設計工具2.6 GAL器件的編程方法及其應用2.7 第三代可編程邏輯器件--高密EPLD輯器件EPLDFPGA設計轉換 第三章 數(shù)據(jù)采集、前向通道與測量技術 3.1 溫度傳感器通道接口技術 3.2 LM135系列精密溫度傳感器的原理和應用 3.3 儀表放大器AD626的應用 3.4 5G7650使用中應注意的問題 3.5 用集成運算放大器構成電荷放大器組件 3.6 普通光電耦合器的線性應用 3.7 高線性光耦合型隔離放大器的研制 3.8 一種隔離型16位單片機高精度模擬量接口3.9 單片16位A/D轉換器AD7701及其與8031單片機的串行接口3.10 雙積分型A/D轉換器與MCS?51系列單片機接口的新方法3.11 8031單片機與AD574A/D轉換器的最簡接口3.12 8098單片機A/D轉換接口及其程序設計3.13 提高A/D轉換器分辨率的實用方案3.14 用CD4051提高8098單片機內10位A/D轉換器分辨率的方法3.15 單片機實現(xiàn)16位高速積分式A/D轉換器3.16 434位A/D轉換器MAX133(134)的原理及應用3.17 AD574A應用中應注意的問題 3.18 CC14433使用中應注意的問題 3.19 高精度寬范圍數(shù)據(jù)采集系統(tǒng)的溫度補償途徑 3.20 縮短ICL7135A/D采樣程序時間的一種方法 3.21 用單片機實現(xiàn)的數(shù)字式自動增益控制 3.22 自動量程轉換電路 3.23 雙積分型A/D的自動量程切換電路 3.24 常用雙積分型A/D轉換器自換程功能的擴展3.25 具有自動量程轉換功能的單片機A/D接口3.26 混合型數(shù)據(jù)采集器SDM857的功能與應用3.27 高速數(shù)據(jù)采集系統(tǒng)的傳輸接口3.28 SJ2000方向鑒別位移脈寬頻率檢測多用途專用集成電路3.29 多路高速高精度F/D專用集成電路3.30 數(shù)控帶通濾波器的實現(xiàn)及其典型應用 第四章 控制系統(tǒng)與后向通道接口技術4.1 模糊邏輯與模糊控制4.2 自動控制技術的新發(fā)展--模糊控制技術4.3 模糊控制表的確定原則4.4 變結構模糊控制系統(tǒng)的實驗研究4.5 新型集成模糊數(shù)據(jù)相關器NLX1124.6 功率固態(tài)繼電器的應用4.7 雙向功率MOS固態(tài)繼電器4.8 SSR小型固態(tài)繼電器與PSSR功率參數(shù)固態(tài)繼電器4.9 JGD型多功能固態(tài)繼電器的原理和應用4.10 光電耦合器在晶閘管觸發(fā)電路中的應用4.11 一種廉價的12位D/A轉換器AD667及接口4.12 利用單片機構成高精度PWM式12位D/A4.13 三相高頻PWM模塊SLE45204.14 專用集成電路TCA785及其應用4.15 單片溫度控制器LM3911的應用4.16 工業(yè)測控系統(tǒng)軟件設計的若干問題研究 第五章 人機對話通道接口技術5.1 廉價實用的8×8鍵盤5.2 單片機遙控鍵盤接口5.3 對8279鍵盤顯示接口的改進5.4 用單片機8031的七根I/O線實現(xiàn)對鍵盤與顯示器的控制5.5 通用8位LED數(shù)碼管驅動電路ICM7218B5.6 利用條圖顯示驅動器LM3914組成100段LED顯示器的方法5.7 液晶顯示器的多極驅動方式5.8 點陣式液晶顯示屏的構造與應用5.9 點陣式液晶顯示器圖形程序設計5.10 DMF5001N點陣式液晶顯示器和8098單片機的接口技術5.11 8098單片機與液晶顯示控制器HD61830接口5.12 利用PL/M語言對點陣式液晶顯示器進行漢字程序設計5.13 語音合成器TMS 5220的開發(fā)與應用5.14 制作T6668語音系統(tǒng)的一些技術問題5.15 單片機、單板機在屏顯系統(tǒng)中的應用 第六章 多機通訊網絡與遙控技術6.1 用雙UART構成的可尋址遙測點裝置--兼談如何組成系統(tǒng)6.2 IBM?PC微機與8098單片機的多機通訊6.3 80C196單片機與IBM?PC機的串行通訊6.4 IBM?PC與MCS?51多機通訊的研究6.5 半雙工方式傳送的單片機多機通信接口電路及軟件設計6.6 單片機與IBM/PC機通訊的新型接口及編程6.7 用光耦實現(xiàn)一點對多點的總線式通訊電路6.8 用EPROM作為通訊變換器實現(xiàn)多機通訊6.9 ICL232單電源雙RS?232發(fā)送/接收器及其應用6.10 DTMF信號發(fā)送/接收電路芯片MT8880及應用6.11 通用紅外線遙控系統(tǒng)6.12 8031單片機在遙控解碼方面的應用 第七章 電源、電壓變換及電源監(jiān)視7.1 用于微機控制系統(tǒng)的高可靠性供電方法7.2 80C31單片機防掉電和抗干擾電源的設計7.3 可編程基準電壓源7.4 電源電壓監(jiān)視器件M81953B7.5 檢出電壓可任意設定的電源電壓監(jiān)測器7.6 低壓降(LDO?Low Drop?Out)穩(wěn)壓器7.7 LM317三端可調穩(wěn)壓器應用二例7.8 三端集成穩(wěn)壓器的擴流應用 第八章 可靠性與抗干擾技術8.1 數(shù)字電路的可靠性設計實踐與體會8.2 單片機容錯系統(tǒng)的設計與實現(xiàn)8.3 微機測控系統(tǒng)的接地、屏蔽和電源供給8.4 ATE的抗干擾及接地技術8.5 微處理器監(jiān)控電路MAX690A/MAX692A8.6 電測儀表電路的實用抗干擾技術8.7 工業(yè)鍍鋅電阻爐溫度控制機的抗干擾措施8.8 一種簡單的抗干擾控制算法 ? 第九章 綜合應用實例9.1 蔬菜灌溉相關參數(shù)的自動檢測9.2 MH?214溶解氧測定儀9.3 COP840C單片機在液晶線控空調電腦控制器中的應用9.4 單片機在電飯煲中的應用9.5 用PIC單片機制作電扇自然風發(fā)生器 第十章 文章摘要 一、 單片機的綜合應用技術1.1 摩托羅拉8位單片機的應用和開發(fā)1.2 NS公司的COP800系列8位單片機1.3 M68HC11與MCS?51單片機功能比較1.4 8098單片機8M存儲空間的擴展技術1.5 80C196KC單片機的外部設備事件服務器1.6 一種多進程實時控制系統(tǒng)的軟件設計1.7 開發(fā)單片機的結構化高級語言PL/M?961.8 應用軟件開發(fā)中的菜單接口技術1.9 單片機用戶系統(tǒng)EPROM中用戶程序的剖析方法1.10 BJS?98硬件、軟件典型實驗1.11 FORTH語言系統(tǒng)的開發(fā)應用1.12 在Transputer系統(tǒng)上用并行C語言編程的特點1.13 一種軟件擴展8031內部計數(shù)器簡易方法1.14 MCS 51系列單片機功能測試方法研究1.15 用CD 4520B設計對稱輸出分頻器的方法1.16 多路模擬開關CC 4051功能擴展方法1.17 條形碼技術及其應用系統(tǒng)的設計與實現(xiàn)? 二、 新一代存儲器及邏輯器件2.1 一種多功能存儲器M6M 72561J2.2 串行E2PROM及其在智能儀器中的應用2.3 新型高性能的AT24C系列串行E2PROM2.4 2K~512K EPROM編程卡2.5 電子盤的設計與實現(xiàn)2.6 NS GAL器件的封裝標簽、類型代碼和編程結構間的關系 三、數(shù)據(jù)采集、前向通道與測量技術3.1 儀器用精密運放CA3193的應用3.2 集成電壓?電流轉換器XTR100的應用3.3 瞬時浮點放大器及應用3.4 隔離放大器289J及其應用3.5 ICS?300系列新型加速度傳感器3.6 一種實用的壓力傳感器接口電路3.7 霍爾傳感器的應用3.8 一種對多個傳感器進行調理的方法3.9 兩線制壓力變送器3.10 小信號雙線變送器XTR101的使用3.11 兩線長距離頻率傳輸壓力變送器的設計3.12 測溫元件AD590及其應用3.13 熱敏電阻應用動態(tài)3.14 一種組合式A/D、D/A轉換器的設計3.15 一種復合式A/D轉換器3.16 TLC549串行輸出ADC及其應用3.17 提高A/D轉換精度的方法--雙通道A/D轉換3.18 模數(shù)轉換器ICL7135的0~3.9999V顯示3.19 微型光耦合器3.20 一種高精度的分壓器電路3.21 利用單片機軟件作熱電偶非線性補償3.22 三線制RTD測量電路及應用中要注意的問題3.23 微伏信號高精度檢測中極易被忽略的問題3.24 寬范圍等分辨率精密測量法3.25 傳感器在線校準系統(tǒng)3.26 一種高精度的熱敏電阻測溫電路3.27 超聲波專用集成電路LM1812的原理與應用3.28 旋轉變壓器數(shù)字化檢測及其在8098單片機控制伺服系統(tǒng)中的應用3.29 單片集成兩端式感溫電流源AD590在溫度測控系統(tǒng)中的應用?3.30 數(shù)字示波器和單片機構成的自動測試系統(tǒng)3.31 霍爾效應式功率測量研究 四、 控制系統(tǒng)與后向通道接口技術4.1 模糊邏輯與模糊控制(實用模糊控制講座之一)4.2 紅綠燈模糊控制器(實用模糊控制講座之二)4.3 國外模糊技術新產品4.4 交流串級調速雙環(huán)模糊PI單片機控制系統(tǒng)4.5 時序控制專用集成電路LT156及其應用4.6 電池充電控制集成電路4.7 雙向晶閘管4.8 雙向可控硅的自觸發(fā)電路及其應用4.9 微處理器晶閘管頻率自適應觸發(fā)器4.10 F18系列晶閘管模塊介紹4.11 集成電路UAA4002的原理及應用4.12 IGBT及其驅動電路4.13 TWH8751應用集錦4.14 結構可變式計算機工業(yè)控制系統(tǒng)設計4.15 單片機控制的音響編輯器 五、 人機對話通道接口技術5.1 5×7點陣LED智能顯示器的應用5.2 基于8031串行口的LED電子廣告牌5.3 點陣液晶顯示控制器與計算機的接口技術5.4 單片機控制可編程液晶顯示系統(tǒng)5.5 大規(guī)模語言集成電路應用綜述5.6 最新可編程語言集成電路MSSIO61的應用5.7 用PC打印機接口擴展并行接口 六、 多機系統(tǒng)、網絡與遙控技術6.1 用8098單片機構成的分布式測溫系統(tǒng)6.2 平衡接口EIA?422和EIA485設計指南6.3 I2C BUS及其系統(tǒng)設計6.4 摩托羅拉可尋址異步接受/發(fā)送器6.5 用5V供電的RS232C接口芯片6.6 四通道紅外遙控器6.7 TA7333P和TA7657P的功能及應用 七、 電源、電壓變換及電源監(jiān)視7.1 單片機控制的可控硅三相電源調壓穩(wěn)壓技術7.2 集成開關電源控制器MC34063的原理及應用7.3 LM299精密基準電壓源7.4 集成過壓保護器的應用7.5 3V供電的革命7.6 HMOS微機的超低電源電壓運行技術 八、 可靠性與抗干擾設計8.1 淺談艦船電磁兼容與可靠性 九、 綜合應用實例9.1 8098單片機交流電氣參數(shù)測試系統(tǒng)的設計和應用9.2 主軸回轉誤差補償控制器9.3 FWK?A型大功率發(fā)射臺微機控制系統(tǒng)9.4 高性能壓控振蕩型精密波形發(fā)生器ICL8038及應用9.5 單片機COP 840C在洗碗機中的應用

    標簽: 單片機 應用技術

    上傳時間: 2013-11-10

    上傳用戶:lijinchuan

  • PS/2鼠標和單片機的接口

    鼠標有RS232串口和PS/2二種接口,在單片機應用中,由于PS/2鼠標是1yrL電平,和單片接口更方便,通常PS/2鼠標控制芯片采用TP8452。以TP8452為例說明PS/2鼠標的工作原理,其他的PS/2鼠標控制芯片均與TP8452兼容。TP8452能接受3個按鍵和2組光電探頭的信號,組合成一定格式的信息,傳送給系統(tǒng)。TP8452還具有按鍵去抖和噪聲抑制功能,組成完善的信號采集前端電路。在單片機系統(tǒng)中,可以直接利用鼠標作為輸入設備,也可以單獨使用TP8452,作為轉速、距離測量的預處理電路。由于TP8452的存在,不論是高速旋轉,還是慢速爬行,甚至正反振蕩,都不會影響其測量的準確性。1 PS/2鼠標原標圖采用TP8452的典型3鍵鼠標原理圖如圖1所示。GX、GY是2組光電探頭,檢測滾輪的轉動。每組光電探頭內有2個光敏接收管,間隔為滾輪格柵的1/4,根據(jù)2個信號的相位關系,TP8452可以確定滾輪的正反轉向。K1、K2、K3是3個按鍵。TP8452連續(xù)監(jiān)視2個滾輪和3個按鍵,一旦有動作,立即將信息通過PS/2接口向系統(tǒng)報告。

    標簽: PS 鼠標 單片機 接口

    上傳時間: 2013-10-29

    上傳用戶:xuanjie

  • 匯編+保護模式+教程

    九.輸入/輸出保護為了支持多任務,80386不僅要有效地實現(xiàn)任務隔離,而且還要有效地控制各任務的輸入/輸出,避免輸入/輸出沖突。本文將介紹輸入輸出保護。 這里下載本文源代碼。 <一>輸入/輸出保護80386采用I/O特權級IPOL和I/O許可位圖的方法來控制輸入/輸出,實現(xiàn)輸入/輸出保護。 1.I/O敏感指令輸入輸出特權級(I/O Privilege Level)規(guī)定了可以執(zhí)行所有與I/O相關的指令和訪問I/O空間中所有地址的最外層特權級。IOPL的值在如下圖所示的標志寄存器中。 標  志寄存器 BIT31—BIT18 BIT17 BIT16 BIT15 BIT14 BIT13—BIT12 BIT11 BIT10 BIT9 BIT8 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 00000000000000 VM RF 0 NT IOPL OF DF IF TF SF ZF 0 AF 0 PF 1 CF I/O許可位圖規(guī)定了I/O空間中的哪些地址可以由在任何特權級執(zhí)行的程序所訪問。I/O許可位圖在任務狀態(tài)段TSS中。 I/O敏感指令 指令 功能 保護方式下的執(zhí)行條件 CLI 清除EFLAGS中的IF位 CPL<=IOPL STI 設置EFLAGS中的IF位 CPL<=IOPL IN 從I/O地址讀出數(shù)據(jù) CPL<=IOPL或I/O位圖許可 INS 從I/O地址讀出字符串 CPL<=IOPL或I/O位圖許可 OUT 向I/O地址寫數(shù)據(jù) CPL<=IOPL或I/O位圖許可 OUTS 向I/O地址寫字符串 CPL<=IOPL或I/O位圖許可 上表所列指令稱為I/O敏感指令,由于這些指令與I/O有關,并且只有在滿足所列條件時才可以執(zhí)行,所以把它們稱為I/O敏感指令。從表中可見,當前特權級不在I/O特權級外層時,可以正常執(zhí)行所列的全部I/O敏感指令;當特權級在I/O特權級外層時,執(zhí)行CLI和STI指令將引起通用保護異常,而其它四條指令是否能夠被執(zhí)行要根據(jù)訪問的I/O地址及I/O許可位圖情況而定(在下面論述),如果條件不滿足而執(zhí)行,那么將引起出錯碼為0的通用保護異常。 由于每個任務使用各自的EFLAGS值和擁有自己的TSS,所以每個任務可以有不同的IOPL,并且可以定義不同的I/O許可位圖。注意,這些I/O敏感指令在實模式下總是可執(zhí)行的。 2.I/O許可位圖如果只用IOPL限制I/O指令的執(zhí)行是很不方便的,不能滿足實際要求需要。因為這樣做會使得在特權級3執(zhí)行的應用程序要么可訪問所有I/O地址,要么不可訪問所有I/O地址。實際需要與此剛好相反,只允許任務甲的應用程序訪問部分I/O地址,只允許任務乙的應用程序訪問另一部分I/O地址,以避免任務甲和任務乙在訪問I/O地址時發(fā)生沖突,從而避免任務甲和任務乙使用使用獨享設備時發(fā)生沖突。 因此,在IOPL的基礎上又采用了I/O許可位圖。I/O許可位圖由二進制位串組成。位串中的每一位依次對應一個I/O地址,位串的第0位對應I/O地址0,位串的第n位對應I/O地址n。如果位串中的第位為0,那么對應的I/O地址m可以由在任何特權級執(zhí)行的程序訪問;否則對應的I/O地址m只能由在IOPL特權級或更內層特權級執(zhí)行的程序訪問。如果在I/O外層特權級執(zhí)行的程序訪問位串中位值為1的位所對應的I/O地址,那么將引起通用保護異常。 I/O地址空間按字節(jié)進行編址。一條I/O指令最多可涉及四個I/O地址。在需要根據(jù)I/O位圖決定是否可訪問I/O地址的情況下,當一條I/O指令涉及多個I/O地址時,只有這多個I/O地址所對應的I/O許可位圖中的位都為0時,該I/O指令才能被正常執(zhí)行,如果對應位中任一位為1,就會引起通用保護異常。 80386支持的I/O地址空間大小是64K,所以構成I/O許可位圖的二進制位串最大長度是64K個位,即位圖的有效部分最大為8K字節(jié)。一個任務實際需要使用的I/O許可位圖大小通常要遠小于這個數(shù)目。 當前任務使用的I/O許可位圖存儲在當前任務TSS中低端的64K字節(jié)內。I/O許可位圖總以字節(jié)為單位存儲,所以位串所含的位數(shù)總被認為是8的倍數(shù)。從前文中所述的TSS格式可見,TSS內偏移66H的字確定I/O許可位圖的開始偏移。由于I/O許可位圖最長可達8K字節(jié),所以開始偏移應小于56K,但必須大于等于104,因為TSS中前104字節(jié)為TSS的固定格式,用于保存任務的狀態(tài)。 1.I/O訪問許可檢查細節(jié)保護模式下處理器在執(zhí)行I/O指令時進行許可檢查的細節(jié)如下所示。 (1)若CPL<=IOPL,則直接轉步驟(8);(2)取得I/O位圖開始偏移;(3)計算I/O地址對應位所在字節(jié)在I/O許可位圖內的偏移;(4)計算位偏移以形成屏蔽碼值,即計算I/O地址對應位在字節(jié)中的第幾位;(5)把字節(jié)偏移加上位圖開始偏移,再加1,所得值與TSS界限比較,若越界,則產生出錯碼為0的通用保護故障;(6)若不越界,則從位圖中讀對應字節(jié)及下一個字節(jié);(7)把讀出的兩個字節(jié)與屏蔽碼進行與運算,若結果不為0表示檢查未通過,則產生出錯碼為0的通用保護故障;(8)進行I/O訪問。設某一任務的TSS段如下: TSSSEG                  SEGMENT PARA USE16                        TSS     <>             ;TSS低端固定格式部分                        DB      8 DUP(0)       ;對應I/O端口00H—3FH                        DB      10000000B      ;對應I/O端口40H—47H                        DB      01100000B      ;對用I/O端口48H—4FH                        DB      8182 DUP(0ffH) ;對應I/O端口50H—0FFFFH                        DB      0FFH           ;位圖結束字節(jié)TSSLen                  =       $TSSSEG                  ENDS 再假設IOPL=1,CPL=3。那么如下I/O指令有些能正常執(zhí)行,有些會引起通用保護異常:                         in      al,21h  ;(1)正常執(zhí)行                        in      al,47h  ;(2)引起異常                        out     20h,al  ;(3)正常實行                        out     4eh,al  ;(4)引起異常                        in      al,20h  ;(5)正常執(zhí)行                        out     20h,eax ;(6)正常執(zhí)行                        out     4ch,ax  ;(7)引起異常                        in      ax,46h  ;(8)引起異常                        in      eax,42h ;(9)正常執(zhí)行 由上述I/O許可檢查的細節(jié)可見,不論是否必要,當進行許可位檢查時,80386總是從I/O許可位圖中讀取兩個字節(jié)。目的是為了盡快地執(zhí)行I/O許可檢查。一方面,常常要讀取I/O許可位圖的兩個字節(jié)。例如,上面的第(8)條指令要對I/O位圖中的兩個位進行檢查,其低位是某個字節(jié)的最高位,高位是下一個字節(jié)的最低位。可見即使只要檢查兩個位,也可能需要讀取兩個字節(jié)。另一方面,最多檢查四個連續(xù)的位,即最多也只需讀取兩個字節(jié)。所以每次要讀取兩個字節(jié)。這也是在判別是否越界時再加1的原因。為此,為了避免在讀取I/O許可位圖的最高字節(jié)時產生越界,必須在I/O許可位圖的最后填加一個全1的字節(jié),即0FFH。此全1的字節(jié)應填加在最后一個位圖字節(jié)之后,TSS界限范圍之前,即讓填加的全1字節(jié)在TSS界限之內。 I/O許可位圖開始偏移加8K所得的值與TSS界限值二者中較小的值決定I/O許可位圖的末端。當TSS的界限大于I/O許可位圖開始偏移加8K時,I/O許可位圖的有效部分就有8K字節(jié),I/O許可檢查全部根據(jù)全部根據(jù)該位圖進行。當TSS的界限不大于I/O許可位圖開始偏移加8K時,I/O許可位圖有效部分就不到8K字節(jié),于是對較小I/O地址訪問的許可檢查根據(jù)位圖進行,而對較大I/O地址訪問的許可檢查總被認為不可訪問而引起通用保護故障。因為這時會發(fā)生字節(jié)越界而引起通用保護異常,所以在這種情況下,可認為不足的I/O許可位圖的高端部分全為1。利用這個特點,可大大節(jié)約TSS中I/O許可位圖占用的存儲單元,也就大大減小了TSS段的長度。 <二>重要標志保護輸入輸出的保護與存儲在標志寄存器EFLAGS中的IOPL密切相關,顯然不能允許隨便地改變IOPL,否則就不能有效地實現(xiàn)輸入輸出保護。類似地,對EFLAGS中的IF位也必須加以保護,否則CLI和STI作為敏感指令對待是無意義的。此外,EFLAGS中的VM位決定著處理器是否按虛擬8086方式工作。 80386對EFLAGS中的這三個字段的處理比較特殊,只有在較高特權級執(zhí)行的程序才能執(zhí)行IRET、POPF、CLI和STI等指令改變它們。下表列出了不同特權級下對這三個字段的處理情況。 不同特權級對標志寄存器特殊字段的處理 特權級 VM標志字段 IOPL標志字段 IF標志字段 CPL=0 可變(初POPF指令外) 可變 可變 0  不變 不變 可變 CPL>IOPL 不變 不變 不變 從表中可見,只有在特權級0執(zhí)行的程序才可以修改IOPL位及VM位;只能由相對于IOPL同級或更內層特權級執(zhí)行的程序才可以修改IF位。與CLI和STI指令不同,在特權級不滿足上述條件的情況下,當執(zhí)行POPF指令和IRET指令時,如果試圖修改這些字段中的任何一個字段,并不引起異常,但試圖要修改的字段也未被修改,也不給出任何特別的信息。此外,指令POPF總不能改變VM位,而PUSHF指令所壓入的標志中的VM位總為0。 <三>演示輸入輸出保護的實例(實例九)下面給出一個用于演示輸入輸出保護的實例。演示內容包括:I/O許可位圖的作用、I/O敏感指令引起的異常和特權指令引起的異常;使用段間調用指令CALL通過任務門調用任務,實現(xiàn)任務嵌套。 1.演示步驟實例演示的內容比較豐富,具體演示步驟如下:(1)在實模式下做必要準備后,切換到保護模式;(2)進入保護模式的臨時代碼段后,把演示任務的TSS段描述符裝入TR,并設置演示任務的堆棧;(3)進入演示代碼段,演示代碼段的特權級是0;(4)通過任務門調用測試任務1。測試任務1能夠順利進行;(5)通過任務門調用測試任務2。測試任務2演示由于違反I/O許可位圖規(guī)定而導致通用保護異常;(6)通過任務門調用測試任務3。測試任務3演示I/O敏感指令如何引起通用保護異常;(7)通過任務門調用測試任務4。測試任務4演示特權指令如何引起通用保護異常;(8)從演示代碼轉臨時代碼,準備返回實模式;(9)返回實模式,并作結束處理。

    標簽: 匯編 保護模式 教程

    上傳時間: 2013-12-11

    上傳用戶:nunnzhy

主站蜘蛛池模板: 和顺县| 广南县| 安福县| 博客| 凤凰县| 吉林省| 宜州市| 正阳县| 天门市| 广昌县| 枣强县| 正定县| 都江堰市| 卢氏县| 林甸县| 扎囊县| 镶黄旗| 岐山县| 林口县| 民权县| 桂阳县| 嵩明县| 杨浦区| 东源县| 田林县| 呈贡县| 贵阳市| 内黄县| 尼木县| 赤水市| 烟台市| 广饶县| 西吉县| 吴堡县| 双牌县| 成安县| 普宁市| 大姚县| 定陶县| 六枝特区| 景东|