2.1 MCS-51系列單片機概述 2.1.1 MCS - 51系列單片機的基本結構單片機是一個大規模集成電路芯片,其上集成有CPU、存儲器、I/O口(串行口、并行口)、其它輔助電路(如中斷系統,定時/計數器,振蕩電路及時鐘電路等)。 其基本結構框圖如下: 2.1.2 MCS - 51系列單片機的分類2.2 89C51單片機內部結構 2.3 89C51單片機的引腳 2.4 MCS-51系列單片機的工作方式
上傳時間: 2013-10-09
上傳用戶:18165383642
單片機模糊模糊控制是目前在控制領域所采用的三種智能控制方法中最具實際意義的方法。模糊控制的采用解決了大量過去人們無法解決的問題,并且在工業控制、家用電器和各個領域已取得了令人觸目的成效。本書是一本系統地介紹模糊控制的理論、技術、方法和應用的著作;內容包括模糊控制基礎、模糊控制器、模糊控制系統、模糊控制系統的穩定性、模糊控制系統的開發軟件,用單片微型機實現模糊控制的技術和方法,模糊控制在家用電器和工業上應用的實際例子;反映了模糊控制目前的水平。 單片機模糊模糊控制目錄 : 第一章 模糊邏輯、神經網絡集成電路的發展 1.1 模糊邏輯及其集成電路的發展1.1.1 模糊邏輯的誕生和發展1.1.2 模糊集成電路的發展進程1.2 神經網絡及其集成電路的發展1.2.1 神經網絡的形成歷史1.2.2 神經網絡集成電路的發展1.3 模糊邏輯和神經網絡的結合1.3.1 模糊邏輯和神經網絡結合的意義1.3.2 模糊邏輯和神經網絡結合的前景第二章 模糊邏輯及其理論基礎 2.1 模糊集合與隸屬函數2.1.1 模糊集合概念2.1.2 隸屬函數2.1.3 分解定理與擴張定理2.1.4 模糊數2.2 模糊關系、模糊矩陣與模糊變換2.2.1 模糊關系2.2.2 模糊矩陣2.2.3 模糊變換2.3模糊邏輯和函數2.3.1模糊命題2.3.2模糊邏輯2.3.3模糊邏輯函數2.4模糊語言2.4.1 語言及語言的模糊性2.4.2 模糊語言2.4.3 語法規則和算子2.4.4 模糊條件語句2.5 模糊推理2.5.1 模糊推理的CRI法2.5.2 模糊推理的TVR法2.5.3 模糊推理的直接法2.5.4 模糊推理的精確值法2.5.5 模糊推理的強度轉移法第三章 模糊控制基礎 3.1 模糊控制的系統結構3.2 精確量的模糊化3.2.1 語言變量的分檔3.2.2 語言變量值的表示方法3.2.3 精確量轉換成模糊量3.3 模糊量的精確化3.3.1 最大隸屬度法3.3.2 中位數法3.3.3 重心法3.4 模糊控制規則及控制算法3.4.1 模糊控制規則的格式3.4.2 模糊控制規則的生成3.4.3 模糊控制規則的優化3.4.4 模糊控制算法3.5 模糊控制的神經網絡方法3.5.1 神經元和神經網絡3.5.2 神經網絡的分布存儲和容錯性3.5.3 神經網絡的學習算法3.5.4 神經網絡實現的模糊控制3.5.5 神經網絡構造隸屬函數3.5.6 神經網絡存儲控制規則3.5.7 神經網絡實現模糊化、反模糊化第四章 模糊控制器 4.1 模糊控制器結構4.2 模糊控制器設計4.2.1 常規模糊控制器設計4.2.2 變結構模糊控制器設計4.2.3 自組織模糊控制器設計4.2.4 自適應模糊控制器設計4.3 模糊控制器的數學模型4.3.1 常規模糊控制器的數學模型4.3.2 模糊控制器數學模型的建立第五章 模糊控制系統 5.1 模糊系統的辨識和建模5.1.1 模糊系統辨識的數學基礎5.1.2 基于模糊關系方程的模糊模型辨識5.1.3 基于語言控制規則的模糊模型辨識5.2 模糊控制系統的設計5.2.1 模糊控制系統的一般設計過程5.2.2 模糊控制系統的典型設計5.3 模糊控制系統的穩定性5.3.1 穩定性分析的Lyapunov直接法5.3.2 語言規則描述的模糊控制系統的穩定性5.3.3 關系方程描述的模糊控制系統的穩定性第六章 數字單片機與模糊控制6.1 數字單片機MC68HC705P96.1.1 MC68HC705P9單片機性能概論6.1.2 MC68HC705P9單片機基本結構6.1.3 MC68HC705P9指令系統6.2 數字單片機模糊控制方式6.2.1 數字單片機與模糊控制關系6.2.2 數字單片機模糊控制方式第七章 模糊單片機與模糊控制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開發系統7.3 NLX230應用例子第八章 模糊控制的開發軟件8.1 模糊推理機原理8.2 模糊推理機的算法8.3 模糊推理機結構和清單8.4 模糊邏輯知識基發生器8.5 模糊推理開發環境8.5.1 FIDE的工作條件8.5.2 FIDE的結構8.5.3 FIDE的工作過程第九章 模糊控制在家用電器中的應用9.1 模糊控制的電冰箱9.1.1 電冰箱模糊控制系統結構9.1.2 模糊控制規則和模糊量9.1.3 控制系統的電路結構9.1.4 控制規則的自調整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 模糊洗衣機控制系統邏輯結構9.4.2 模糊洗衣機的模糊推理9.4.3 洗衣機物理量檢測方法9.4.4 布質和布量的模糊推理第十章 模糊控制在工程上的應用10.1 模糊參數自適應PID控制器10.1.1 自校正PID控制器10.1.2 模糊參數自適應PID控制系統結構10.1.3 模糊控制規則的產生10.1.4 模糊推理機理及運行結果10.2 恒溫爐模糊控制10.2.1 恒溫爐模糊控制的系統結構10.2.2 模糊控制器及控制規則的形成10.2.3 模糊控制器的校正10.3 感應電機模糊矢量控制10.3.1 模糊矢量控制系統結構10.3.2 矢量控制的基本原理10.3.3 模糊電阻觀測器10.3.4 模糊控制器及運行
上傳時間: 2014-12-28
上傳用戶:semi1981
計算機部件要具有通用性,適應不同系統與不同用戶的需求,設計必須模塊化。計算機部件產品(模塊)供應出現多元化。模塊之間的聯接關系要標準化,使模塊具有通用性。模塊設計必須基于一種大多數廠商認可的模塊聯接關系,即一種總線標準。總線的標準總線是一類信號線的集合是模塊間傳輸信息的公共通道,通過它,計算機各部件間可進行各種數據和命令的傳送。為使不同供應商的產品間能夠互換,給用戶更多的選擇,總線的技術規范要標準化。總線的標準制定要經周密考慮,要有嚴格的規定。總線標準(技術規范)包括以下幾部分:機械結構規范:模塊尺寸、總線插頭、總線接插件以及按裝尺寸均有統一規定。功能規范:總線每條信號線(引腳的名稱)、功能以及工作過程要有統一規定。電氣規范:總線每條信號線的有效電平、動態轉換時間、負載能力等。總線的發展情況S-100總線:產生于1975年,第一個標準化總線,為微計算機技術發展起到了推動作用。IBM-PC個人計算機采用總線結構(Industry Standard Architecture, ISA)并成為工業化的標準。先后出現8位ISA總線、16位ISA總線以及后來兼容廠商推出的EISA(Extended ISA)32位ISA總線。為了適應微處理器性能的提高及I/O模塊更高吞吐率的要求,出現了VL-Bus(VESA Local Bus)和PCI(Peripheral Component Interconnect,PCI)總線。適合小型化要求的PCMCIA(Personal Computer Memory Card International Association)總線,用于筆記本計算機的功能擴展。總線的指標計算機主機性能迅速提高,各功能模塊性能也要相應提高,這對總線性能提出更高的要求。總線主要技術指標有幾方面:總線寬度:一次操作可以傳輸的數據位數,如S100為8位,ISA為16位,EISA為32位,PCI-2可達64位。總線寬度不會超過微處理器外部數據總線的寬度。總數工作頻率:總線信號中有一個CLK時鐘,CLK越高每秒鐘傳輸的數據量越大。ISA、EISA為8MHz,PCI為33.3MHz, PCI-2可達達66.6MHz。單個數據傳輸周期:不同的傳輸方式,每個數據傳輸所用CLK周期數不同。ISA要2個,PCI用1個CLK周期。這決定總線最高數據傳輸率。5. 總線的分類與層次系統總線:是微處理器芯片對外引線信號的延伸或映射,是微處理器與片外存儲器及I/0接口傳輸信息的通路。系統總線信號按功能可分為三類:地址總線(Where):指出數據的來源與去向。地址總線的位數決定了存儲空間的大小。系統總線:數據總線(What)提供模塊間傳輸數據的路徑,數據總線的位數決定微處理器結構的復雜度及總體性能。控制總線(When):提供系統操作所必需的控制信號,對操作過程進行控制與定時。擴充總線:亦稱設備總線,用于系統I/O擴充。與系統總線工作頻率不同,經接口電路對系統總統信號緩沖、變換、隔離,進行不同層次的操作(ISA、EISA、MCA)局部總線:擴充總線不能滿足高性能設備(圖形、視頻、網絡)接口的要求,在系統總線與擴充總線之間插入一層總線。由于它經橋接器與系統總線直接相連,因此稱之為局部總線(PCI)。
上傳時間: 2013-11-09
上傳用戶:nshark
微機接口技術試題:《微機接口技術》模擬試題 一、 選擇題:(每空1分,共20分)1. CPU與外設之間交換數據常采用 、 、 和 四種方式,PC機鍵盤接口采用 傳送方式。 ⒉ 當進行DMA方式下的寫操作時,數據是從 傳送到 __中。 ⒊ PC總線、ISA總線和EISA總線的地址線分別為: 、 和 根。 ⒋ 8254定時/計數器內部有 個端口、共有 種工作方式。 ⒌8255的A1和A0引腳分別連接在地址總線的A1和A0,當命令端口的口地址為317H時,則A口、B口、C口的口地址分別為 、 、 。 ⒍ PC微機中最大的中斷號是 、最小的中斷號是 。 ⒎PC微機中鍵盤是從8255的 口得到按鍵數據。 ⒏ 串行通信中傳輸線上即傳輸_________,又傳輸_________。 二、選擇題:(每題2分,共10分)⒈ 設串行異步通信每幀數據格式有8個數據位、無校驗、一個停止位,若波特率為9600B/S,該方式每秒最多能傳送( )個字符。 ① 1200 ② 150 ③ 960 ④ 120 2.輸出指令在I/O接口總線上產生正確的命令順序是( )。① 先發地址碼,再發讀命令,最后讀數據。② 先發讀命令、再發地址碼,最后讀數據。③ 先送地址碼,再送數據,最后發寫命令。④ 先送地址碼,再發寫命令、最后送數據。3 使用8254設計定時器,當輸入頻率為1MHZ并輸出頻率為100HZ時,該定時器的計數初值為( )。 ① 100 ② 1000 ③ 10000 ④ 其它 4 在PC機中5號中斷,它的中斷向地址是( )。 ① 0000H:0005H ② 0000H:0010H ③ 0000H:0014H ④ 0000H:0020H 5. 四片8259級聯時可提供的中斷請求總數為( )。 ① 29個 ② 30個 ③ 31個 ④ 32個 6. 下述總線中,組內都是外設串行總線為( )組。① RS-485、IDE、ISA。② RS-485、IEEE1394、USB。③ RS-485、PCI、IEEE1394。④ USB、SCSI、RS-232。 7. DMA在( )接管總線的控制權。① 申請階段 ② 響應階段 ③ 數據傳送階段 ④ 結束階段 8. 中斷服務程序入口地址是( )。 ① 中斷向量表的指針 ② 中斷向量 ③ 中斷向量表 ④ 中斷號
上傳時間: 2013-11-16
上傳用戶:xiaoxiang
pic單片機實用教程(提高篇)以介紹PIC16F87X型號單片機為主,并適當兼顧PIC全系列,共分9章,內容包括:存儲器;I/O端口的復位功能;定時器/計數器TMR1;定時器TMR2;輸入捕捉/輸出比較/脈寬調制CCP;模/數轉換器ADC;通用同步/異步收發器USART;主控同步串行端口MSSP:SPI模式和I2C模式。突出特點:通俗易懂、可讀性強、系統全面、學練結合、學用并重、實例豐富、習題齊全。<br>本書作為Microchip公司大學計劃選擇用書,可廣泛適用于初步具備電子技術基礎和計算機知識基礎的學生、教師、單片機愛好者、電子制作愛好者、電器維修人員、電子產品開發設計者、工程技術人員閱讀。本教程全書共分2篇,即基礎篇和提高篇,分2冊出版,以適應不同課時和不同專業的需要,也為教師和讀者增加了一種可選方案。 第1章 EEPROM數據存儲器和FIASH程序存儲器1.1 背景知識1.1.1 通用型半導體存儲器的種類和特點1.1.2 PIC單片機內部的程序存儲器1.1.3 PIC單片機內部的EEPROM數據存儲器1.1.4 PIC16F87X內部EEPROM和FIASH操作方法1.2 與EEPROM相關的寄存器1.3 片內EEPROM數據存儲器結構和操作原理1.3.1 從EEPROM中讀取數據1.3.2 向EEPROM中燒寫數據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章 定時器/計數器TMR13.1 定時器/計數器TMR1模塊的特性3.2 定時器/計數器TMR1模塊相關的寄存器3.3 定時器/計數器TMR1模塊的電路結構3.4 定時器/計數器TMR1模塊的工作原理3.4.1 禁止TMR1工作3.4.2 定時器工作方式3.4.3 計數器工作方式3.4.4 TMR1寄存器的賦值與復位3.5 定時器/計數器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章 模/數轉換器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模塊的內部動作流程和傳遞函數6.2.7 ADC模塊的操作編程6.3 PIC16F87X片內ADC模塊的應用舉例思考題與練習題第7章 通用同步/異步收發器USART7.1 串行通信的基本概念7.1.1 串行通信的兩種基本方式7.1.2 串行通信中數據傳送方向7.1.3 串行通信中的控制方式7.1.4 串行通信中的碼型、編碼方式和幀結構7.1.5 串行通信中的檢錯和糾錯方式7.1.6 串行通信組網方式7.1.7 串行通信接口電路和參數7.1.8 串行通信的傳輸速率7.2 PIC16F87X片內通用同步/異步收發器USART模塊7.2.1 與USART模塊相關的寄存器7.2.2 USART波特率發生器BRG7.2.3 USART模塊的異步工作方式7.2.4 USART模塊的同步主控工作方式7.2.5 USART模塊的同步從動工作方式7.3 通用同步/異步收發器USART的應用舉例思考題與練習題第8章 主控同步串行端口MSSP——SPI模式8.1 SPI接口的背景知識8.1.1 SPI接口信號描述8.1.2 基于SPI的系統構成方式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 技術參數9.1.8 I(平方)C器件與I(平方)C總線的接線方式9.1.9 相兼容的SMBus總線9.2 與I(平方)C總線相關的寄存器9.3 典型信號時序的產生方法9.3.1 波特率發生器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 被控器發送——被控發送器9.4.5 廣播式尋址9.5 主控器通信方式9.5.1 硬件結構9.5.2 主控器發送——主控發送器9.5.3 主控器接收——主控接收器9.6 多主通信方式下的總線沖突和總線仲裁9.6.1 發送和應答過程中的總線沖突9.6.2 啟動過程中的總線沖突9.6.3 重啟動過程中的總線沖突9.6.4 停止過程中的總線沖突9.7 I(平方)C總線的應用舉例思考題與練習題附錄A 包含文件P16F877.INC附錄B 新版宏匯編器MPASM偽指令總表參考文獻
上傳時間: 2013-12-14
上傳用戶:xiaoyuer
AVR單片機應用設計:AVR單片機是美國ATMEL公司1997年推出的單片機系列。本書以其代表型號AT90S8535為主線,講述該系列單片機的內部結構、開發工具、指令系統、各種接口及其應用程序舉例和設計方法。學習了這種功能較全的單片機,對于AVR系列其他型號單片機的應用就可以舉一反三。 AVR單片機具有高速度、高保密性、低功耗的特點。AT90S8535內含可反復編程的Flash程序存儲器、SRAM和EEPROM兩種數據存儲器、定時器/計數器、方向可定義的I/O口、同步串行口、異步串行口、A/D轉換器及PWM等豐富的內部資源。一般的應用系統只需此一塊芯片即可實現智能化。
上傳時間: 2013-10-18
上傳用戶:forzalife
九.輸入/輸出保護為了支持多任務,80386不僅要有效地實現任務隔離,而且還要有效地控制各任務的輸入/輸出,避免輸入/輸出沖突。本文將介紹輸入輸出保護。 這里下載本文源代碼。 <一>輸入/輸出保護80386采用I/O特權級IPOL和I/O許可位圖的方法來控制輸入/輸出,實現輸入/輸出保護。 1.I/O敏感指令輸入輸出特權級(I/O Privilege Level)規定了可以執行所有與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許可位圖規定了I/O空間中的哪些地址可以由在任何特權級執行的程序所訪問。I/O許可位圖在任務狀態段TSS中。 I/O敏感指令 指令 功能 保護方式下的執行條件 CLI 清除EFLAGS中的IF位 CPL<=IOPL STI 設置EFLAGS中的IF位 CPL<=IOPL IN 從I/O地址讀出數據 CPL<=IOPL或I/O位圖許可 INS 從I/O地址讀出字符串 CPL<=IOPL或I/O位圖許可 OUT 向I/O地址寫數據 CPL<=IOPL或I/O位圖許可 OUTS 向I/O地址寫字符串 CPL<=IOPL或I/O位圖許可 上表所列指令稱為I/O敏感指令,由于這些指令與I/O有關,并且只有在滿足所列條件時才可以執行,所以把它們稱為I/O敏感指令。從表中可見,當前特權級不在I/O特權級外層時,可以正常執行所列的全部I/O敏感指令;當特權級在I/O特權級外層時,執行CLI和STI指令將引起通用保護異常,而其它四條指令是否能夠被執行要根據訪問的I/O地址及I/O許可位圖情況而定(在下面論述),如果條件不滿足而執行,那么將引起出錯碼為0的通用保護異常。 由于每個任務使用各自的EFLAGS值和擁有自己的TSS,所以每個任務可以有不同的IOPL,并且可以定義不同的I/O許可位圖。注意,這些I/O敏感指令在實模式下總是可執行的。 2.I/O許可位圖如果只用IOPL限制I/O指令的執行是很不方便的,不能滿足實際要求需要。因為這樣做會使得在特權級3執行的應用程序要么可訪問所有I/O地址,要么不可訪問所有I/O地址。實際需要與此剛好相反,只允許任務甲的應用程序訪問部分I/O地址,只允許任務乙的應用程序訪問另一部分I/O地址,以避免任務甲和任務乙在訪問I/O地址時發生沖突,從而避免任務甲和任務乙使用使用獨享設備時發生沖突。 因此,在IOPL的基礎上又采用了I/O許可位圖。I/O許可位圖由二進制位串組成。位串中的每一位依次對應一個I/O地址,位串的第0位對應I/O地址0,位串的第n位對應I/O地址n。如果位串中的第位為0,那么對應的I/O地址m可以由在任何特權級執行的程序訪問;否則對應的I/O地址m只能由在IOPL特權級或更內層特權級執行的程序訪問。如果在I/O外層特權級執行的程序訪問位串中位值為1的位所對應的I/O地址,那么將引起通用保護異常。 I/O地址空間按字節進行編址。一條I/O指令最多可涉及四個I/O地址。在需要根據I/O位圖決定是否可訪問I/O地址的情況下,當一條I/O指令涉及多個I/O地址時,只有這多個I/O地址所對應的I/O許可位圖中的位都為0時,該I/O指令才能被正常執行,如果對應位中任一位為1,就會引起通用保護異常。 80386支持的I/O地址空間大小是64K,所以構成I/O許可位圖的二進制位串最大長度是64K個位,即位圖的有效部分最大為8K字節。一個任務實際需要使用的I/O許可位圖大小通常要遠小于這個數目。 當前任務使用的I/O許可位圖存儲在當前任務TSS中低端的64K字節內。I/O許可位圖總以字節為單位存儲,所以位串所含的位數總被認為是8的倍數。從前文中所述的TSS格式可見,TSS內偏移66H的字確定I/O許可位圖的開始偏移。由于I/O許可位圖最長可達8K字節,所以開始偏移應小于56K,但必須大于等于104,因為TSS中前104字節為TSS的固定格式,用于保存任務的狀態。 1.I/O訪問許可檢查細節保護模式下處理器在執行I/O指令時進行許可檢查的細節如下所示。 (1)若CPL<=IOPL,則直接轉步驟(8);(2)取得I/O位圖開始偏移;(3)計算I/O地址對應位所在字節在I/O許可位圖內的偏移;(4)計算位偏移以形成屏蔽碼值,即計算I/O地址對應位在字節中的第幾位;(5)把字節偏移加上位圖開始偏移,再加1,所得值與TSS界限比較,若越界,則產生出錯碼為0的通用保護故障;(6)若不越界,則從位圖中讀對應字節及下一個字節;(7)把讀出的兩個字節與屏蔽碼進行與運算,若結果不為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 ;位圖結束字節TSSLen = $TSSSEG ENDS 再假設IOPL=1,CPL=3。那么如下I/O指令有些能正常執行,有些會引起通用保護異常: in al,21h ;(1)正常執行 in al,47h ;(2)引起異常 out 20h,al ;(3)正常實行 out 4eh,al ;(4)引起異常 in al,20h ;(5)正常執行 out 20h,eax ;(6)正常執行 out 4ch,ax ;(7)引起異常 in ax,46h ;(8)引起異常 in eax,42h ;(9)正常執行 由上述I/O許可檢查的細節可見,不論是否必要,當進行許可位檢查時,80386總是從I/O許可位圖中讀取兩個字節。目的是為了盡快地執行I/O許可檢查。一方面,常常要讀取I/O許可位圖的兩個字節。例如,上面的第(8)條指令要對I/O位圖中的兩個位進行檢查,其低位是某個字節的最高位,高位是下一個字節的最低位。可見即使只要檢查兩個位,也可能需要讀取兩個字節。另一方面,最多檢查四個連續的位,即最多也只需讀取兩個字節。所以每次要讀取兩個字節。這也是在判別是否越界時再加1的原因。為此,為了避免在讀取I/O許可位圖的最高字節時產生越界,必須在I/O許可位圖的最后填加一個全1的字節,即0FFH。此全1的字節應填加在最后一個位圖字節之后,TSS界限范圍之前,即讓填加的全1字節在TSS界限之內。 I/O許可位圖開始偏移加8K所得的值與TSS界限值二者中較小的值決定I/O許可位圖的末端。當TSS的界限大于I/O許可位圖開始偏移加8K時,I/O許可位圖的有效部分就有8K字節,I/O許可檢查全部根據全部根據該位圖進行。當TSS的界限不大于I/O許可位圖開始偏移加8K時,I/O許可位圖有效部分就不到8K字節,于是對較小I/O地址訪問的許可檢查根據位圖進行,而對較大I/O地址訪問的許可檢查總被認為不可訪問而引起通用保護故障。因為這時會發生字節越界而引起通用保護異常,所以在這種情況下,可認為不足的I/O許可位圖的高端部分全為1。利用這個特點,可大大節約TSS中I/O許可位圖占用的存儲單元,也就大大減小了TSS段的長度。 <二>重要標志保護輸入輸出的保護與存儲在標志寄存器EFLAGS中的IOPL密切相關,顯然不能允許隨便地改變IOPL,否則就不能有效地實現輸入輸出保護。類似地,對EFLAGS中的IF位也必須加以保護,否則CLI和STI作為敏感指令對待是無意義的。此外,EFLAGS中的VM位決定著處理器是否按虛擬8086方式工作。 80386對EFLAGS中的這三個字段的處理比較特殊,只有在較高特權級執行的程序才能執行IRET、POPF、CLI和STI等指令改變它們。下表列出了不同特權級下對這三個字段的處理情況。 不同特權級對標志寄存器特殊字段的處理 特權級 VM標志字段 IOPL標志字段 IF標志字段 CPL=0 可變(初POPF指令外) 可變 可變 0 不變 不變 可變 CPL>IOPL 不變 不變 不變 從表中可見,只有在特權級0執行的程序才可以修改IOPL位及VM位;只能由相對于IOPL同級或更內層特權級執行的程序才可以修改IF位。與CLI和STI指令不同,在特權級不滿足上述條件的情況下,當執行POPF指令和IRET指令時,如果試圖修改這些字段中的任何一個字段,并不引起異常,但試圖要修改的字段也未被修改,也不給出任何特別的信息。此外,指令POPF總不能改變VM位,而PUSHF指令所壓入的標志中的VM位總為0。 <三>演示輸入輸出保護的實例(實例九)下面給出一個用于演示輸入輸出保護的實例。演示內容包括:I/O許可位圖的作用、I/O敏感指令引起的異常和特權指令引起的異常;使用段間調用指令CALL通過任務門調用任務,實現任務嵌套。 1.演示步驟實例演示的內容比較豐富,具體演示步驟如下:(1)在實模式下做必要準備后,切換到保護模式;(2)進入保護模式的臨時代碼段后,把演示任務的TSS段描述符裝入TR,并設置演示任務的堆棧;(3)進入演示代碼段,演示代碼段的特權級是0;(4)通過任務門調用測試任務1。測試任務1能夠順利進行;(5)通過任務門調用測試任務2。測試任務2演示由于違反I/O許可位圖規定而導致通用保護異常;(6)通過任務門調用測試任務3。測試任務3演示I/O敏感指令如何引起通用保護異常;(7)通過任務門調用測試任務4。測試任務4演示特權指令如何引起通用保護異常;(8)從演示代碼轉臨時代碼,準備返回實模式;(9)返回實模式,并作結束處理。
上傳時間: 2013-12-11
上傳用戶:nunnzhy
基于多點網絡的水廠自動監控系統設計Design of MPI Based Automatic Monitoring and Control System in Water Works劉 美 俊(湖南工程學院,湘潭411101)摘要針對水廠工作水泵多、現場離控制站距離遠的特點,提出了一種基于MPI多點網絡的自動監控系統的設計方法,分析了系統的工作原理,介紹了系統中數據的采集與處理、主站與從站的通信原理以及系統軟件的設計。由于這種系統的主、從站PLC之間采用MPI網絡通信,具有運行可靠、性能價格比高的特點,所以適用于中小規模水廠的分布式監控場合。關鍵詞多點網絡主站從站監控系統Abstract Ina ccordancew ithth efe atuersof w aterw orks,i. e. ,manyp umpsin o perationa ndth ep umps, farfor mt hec ontrolst ation,th em ethodo fdesigninga na utomati(〕monitoringa ndc ontorlsy stemb asedo nM PIis p resented.Th eo perationalpr incipleo fth esy stemi san alyzed,th ed atac olection,data processing; communication between master station and slave station as wel as design and system software are discussed. Because MPI network communicationis used among master station, slave stations and PLC, the system is reliable and high cost-efective. It is, suitable for smal and mediumsized water works for distrbuted monitoring and control.Keywords MPI Masterst ation Slaves tation Monitoringa ndc ontorlsy stem 自來 水 廠 的自動控制系統一般分為兩大部分,一對組態硬件要求較高,投資較大。相對而言,MPI網是水源地深水泵的工作控制,一是水廠區變頻恒壓供絡速度可達187.5 M bps,通過一級中繼器傳輸距離可水控制,兩部分的實際距離通常都比較遠。某廠水源達Ikm 。根據水廠的具體情況,確定以MPI方式組地有3臺深井泵給水廠區的蓄水池供水。水廠區的成網絡,主站PLC為S7-300系列的CPU3121FM,從任務是對水池的水進行消毒處理后,通過加壓泵向管站為S7-200系列的CPU222。這樣既滿足了系統要路恒壓供水。選用Siemens公司的S7系列可編程控求,又相對于Profibus網絡節省了三分之一的成本,制器(PLC)和上位機組成實時數據采集和監控系統, 這種分布式監控系統具有較高的性能價格比。系統對深水泵進行遠程控制,對供水泵采用變頻器進行恒中PLC的物理層采用RS - 485接口,網絡延伸選用壓控制以保證整個水廠的電機設備安全、可靠地運帶防雷保護的中繼器,使系統的安全運行得到了保行。證。MPI網絡的拓撲結構如圖1所示。1 多點網絡(NWI)監控系統的組成Sie me ns 公司S7系列PLC通常有MP」多點網絡與Profibus現場總線網絡兩種組網方式。Profibus現場總線的應用目前較為普遍,通用性較好,它由Profibus一DP, Profibus一FMS, Profibus一PA組成。Profibus - DP型用于分散外設間的數據傳輸,傳輸速率為9.6kbps一12Mbps,主要用于現場控制器與分散1/0之間的通信,可滿足交直流調速系統快速響應的時間要求,特別適合于加工自動化領域的應用;Profibus - FMS主要解決車間級通信問題,完成中等傳輸速度的循環或非循環數據交換任務,適用于紡織、樓宇自動化、可編程控制器、低壓開關等;Profibus - PA型采用了OSI模型的物理層和數據鏈路層,適用于過程自動化的總線類型。
上傳時間: 2013-10-09
上傳用戶:fac1003
RS-232-C 是PC 機常用的串行接口,由于信號電平值較高,易損壞接口電路的芯片,與TTL電平不兼容故需使用電平轉換電路方能與TTL 電路連接。本產品(轉接器),可以實現任意電平下(0.8~15)的UART串行接口到RS-232-C/E接口的無源電平轉接, 使用非常方便可靠。 什么是RS-232-C 接口?采用RS-232-C 接口有何特點?傳輸電纜長度如何考慮?答: 計算機與計算機或計算機與終端之間的數據傳送可以采用串行通訊和并行通訊二種方式。由于串行通訊方式具有使用線路少、成本低,特別是在遠程傳輸時,避免了多條線路特性的不一致而被廣泛采用。 在串行通訊時,要求通訊雙方都采用一個標準接口,使不同 的設備可以方便地連接起來進行通訊。 RS-232-C接口(又稱 EIA RS-232-C)是目前最常用的一種串行通訊接口。它是在1970 年由美國電子工業協會(EIA)聯合貝爾系統、 調制解調器廠家及計算機終端生產廠家共同制定的用于串行通訊的標準。它的全名是“數據終端設備(DTE)和數據通訊設備(DCE)之間串行二進制數據交換接口技術標準”該標準規定采用一個25 個腳的 DB25 連接器,對連接器的每個引腳的信號內容加以規定,還對各種信號的電平加以規定。(1) 接口的信號內容實際上RS-232-C 的25 條引線中有許多是很少使用的,在計算機與終端通訊中一般只使用3-9 條引線。(2) 接口的電氣特性 在RS-232-C 中任何一條信號線的電壓均為負邏輯關系。即:邏輯“1”,-5— -15V;邏輯“0” +5— +15V 。噪聲容限為2V。即 要求接收器能識別低至+3V 的信號作為邏輯“0”,高到-3V的信號 作為邏輯“1”(3) 接口的物理結構 RS-232-C 接口連接器一般使用型號為DB-25 的25 芯插頭座,通常插頭在DCE 端,插座在DTE端. 一些設備與PC 機連接的RS-232-C 接口,因為不使用對方的傳送控制信號,只需三條接口線,即“發送數據”、“接收數據”和“信號地”。所以采用DB-9 的9 芯插頭座,傳輸線采用屏蔽雙絞線。(4) 傳輸電纜長度由RS-232C 標準規定在碼元畸變小于4%的情況下,傳輸電纜長度應為50 英尺,其實這個4%的碼元畸變是很保守的,在實際應用中,約有99%的用戶是按碼元畸變10-20%的范圍工作的,所以實際使用中最大距離會遠超過50 英尺,美國DEC 公司曾規定允許碼元畸變為10%而得出附表2 的實驗結果。其中1 號電纜為屏蔽電纜,型號為DECP.NO.9107723 內有三對雙絞線,每對由22# AWG 組成,其外覆以屏蔽網。2 號電纜為不帶屏蔽的電纜。 2. 什么是RS-485 接口?它比RS-232-C 接口相比有何特點?答: 由于RS-232-C 接口標準出現較早,難免有不足之處,主要有以下四點:(1) 接口的信號電平值較高,易損壞接口電路的芯片,又因為與TTL 電平不兼容故需使用電平轉換電路方能與TTL 電路連接。(2) 傳輸速率較低,在異步傳輸時,波特率為20Kbps。(3) 接口使用一根信號線和一根信號返回線而構成共地的傳輸形式, 這種共地傳輸容易產生共模干擾,所以抗噪聲干擾性弱。(4) 傳輸距離有限,最大傳輸距離標準值為50 英尺,實際上也只能 用在50 米左右。針對RS-232-C 的不足,于是就不斷出現了一些新的接口標準,RS-485 就是其中之一,它具有以下特點:1. RS-485 的電氣特性:邏輯“1”以兩線間的電壓差為+(2—6) V 表示;邏輯“0”以兩線間的電壓差為-(2—6)V 表示。接口信號電平比RS-232-C 降低了,就不易損壞接口電路的芯片, 且該電平與TTL 電平兼容,可方便與TTL 電路連接。2. RS-485 的數據最高傳輸速率為10Mbps3. RS-485 接口是采用平衡驅動器和差分接收器的組合,抗共模干能力增強,即抗噪聲干擾性好。4. RS-485 接口的最大傳輸距離標準值為4000 英尺,實際上可達 3000 米,另外RS-232-C接口在總線上只允許連接1 個收發器, 即單站能力。而RS-485 接口在總線上是允許連接多達128 個收發器。即具有多站能力,這樣用戶可以利用單一的RS-485 接口方便地建立起設備網絡。因RS-485 接口具有良好的抗噪聲干擾性,長的傳輸距離和多站能力等上述優點就使其成為首選的串行接口。 因為RS485 接口組成的半雙工網絡,一般只需二根連線,所以RS485接口均采用屏蔽雙絞線傳輸。 RS485 接口連接器采用DB-9 的9 芯插頭座,與智能終端RS485接口采用DB-9(孔),與鍵盤連接的鍵盤接口RS485 采用DB-9(針)。3. 采用RS485 接口時,傳輸電纜的長度如何考慮?答: 在使用RS485 接口時,對于特定的傳輸線經,從發生器到負載其數據信號傳輸所允許的最大電纜長度是數據信號速率的函數,這個 長度數據主要是受信號失真及噪聲等影響所限制。下圖所示的最大電纜長度與信號速率的關系曲線是使用24AWG 銅芯雙絞電話電纜(線 徑為0.51mm),線間旁路電容為52.5PF/M,終端負載電阻為100 歐 時所得出。(曲線引自GB11014-89 附錄A)。由圖中可知,當數據信 號速率降低到90Kbit/S 以下時,假定最大允許的信號損失為6dBV 時, 則電纜長度被限制在1200M。實際上,圖中的曲線是很保守的,在實 用時是完全可以取得比它大的電纜長度。 當使用不同線徑的電纜。則取得的最大電纜長度是不相同的。例 如:當數據信號速率為600Kbit/S 時,采用24AWG 電纜,由圖可知最 大電纜長度是200m,若采用19AWG 電纜(線徑為0。91mm)則電纜長 度將可以大于200m; 若采用28AWG 電纜(線徑為0。32mm)則電纜 長度只能小于200m。
上傳時間: 2013-10-11
上傳用戶:時代電子小智
如同今天的許多通用單片機(MCU)已經把USB、CAN和以太網作為標準外設集成在芯片內部一樣,越來越多的無線網絡芯片和無線網絡解決方案也在向集成SoC 方向發展,比如第一代產品,Nordic公司nRF905,Chipcon公司cc1010 他們集成了8051兼容的單片機.這些無線單片機適合一般的點對點和點對多點的私有網絡應用,如單一產品的遙控器和抄表裝置等。無線通訊技術給智能裝置的互連互通提供了便捷的途徑,工業無線網絡作為面向工業和家庭自動化的網絡技術也正在向著智能,標準和節能方向發展。 目前在工業控制和消費電子領域使用的無線網絡技術有ZigBee、無線局域網(Wi-Fi)、藍牙(Blutooth)、GPRS通用分組無線業務、 ISM、IrDA等, 未來還能有3G、超寬頻(UWB)、無線USB、Wimax等。 當然還有大量的私有和專用無線網絡在工業控制和消費電子裝置中使用,其中ZigBee、GPRS是在目前在國內工業控制中討論和使用比較多的兩種,藍牙和無線局域網是在消費電子產品如手機、耳機、打印機、照相機和家庭中小企業網絡中廣泛使用的無線協議(個別工業產品也有應用,如無線視頻監控和汽車音響系統),當然私有無線網絡技術和產品在工業也有很多的應用。 ZigBee是一個低功耗、短距離和低速的無線網絡技術,工作在2.4GHz國際免執照的頻率,在IEEE標準上它和無線局域網、藍牙同屬802家族中的無線個人區域網絡, ZigBee是有兩部分組成,物理和鏈路層符合IEEE802.15.4, 網絡和應用層符合ZigBee聯盟的規范。ZigBee聯盟是在2002年成立的非盈利組織,有包括TI、霍尼威爾、華為在內兩百多家成員, ZigBee聯盟致力推廣兼容802.15.4和ZigBee協議的平臺, 制定網絡層和應用架構的公共規范,希望在樓宇自動化、居家控制、家用電器、工業自動控制和電腦外設等多方面普及ZigBee標準。 GPRS是在現有的GSM 網絡發展出來的分組數據承載業務,它工作在標準的GSM頻率,由于是一個分組交換系統,它適合工業上的突發,少量的數據傳輸,還因為GSM網絡覆蓋廣泛,永遠在線的特點,GPRS特點適合工業控制中的遠程監控和測量系統。在工業控制應用中GPRS 芯片一般是以無線數傳模塊形式出現的,它通過RS232全雙工接口和單片機連接,軟件上這些模塊都內置了GPRS,PPP和TCP/IP協議,單片機側通過AT指令集向模塊發出測試,連接和數據收發指令,GPRS模塊通過中國移動cmnet進入互聯網和其他終端或者服務器通訊。目前市場常見的模塊有西門子G24TC45、TC35i,飛思卡爾G24,索愛GR47/48, 還有Wavecom 的集成了ARM9核的GPRS SoC模塊WMP50/100。GPRS模塊有區分自帶TCP/IP協議和不帶協議兩種,一般來講,如果是單片機側有嵌入式操作系統和TCP/IP協議支持的話或者應用的要求只是收發短信和語音功能的話,可以選擇不帶協議的模塊。 先進的SoC技術正在無線應用領域發揮重要的作用。德州儀器收購了Chipcon公司以后發布的CC2430 是市場上首款SoC的ZigBee單片機, 見圖1,它把協議棧z-stack集成在芯片內部的閃存里面, 具有穩定可靠的CC2420收發器,增強性的8051內核,8KRAM,外設有I/O 口,ADC,SPI,UART 和AES128 安全協處理器,三個版本分別是32/64/128K的閃存,以128K為例,扣除基本z-stack協議還有3/4的空間留給應用代碼,即使完整的ZigBee協議,還有近1/2的空間留給應用代碼,這樣的無線單片機除了處理通訊協議外,還可以完成一些監控和顯示任務。這樣無線單片機都支持通過SPI或者UART與通用單片機或者嵌入式CPU結合。 2008年4月發表CC2480新一代單片ZibBee認證處理器就展示出和TI MSP430 通用的低功耗單片機結合的例子。圖1 CC2430應用電路 工業控制領域的另一個芯片巨頭——飛思卡爾的單片ZigBee處理器MC1321X的方案也非常類似,集成了HC08單片機核心, 16/32/64K 閃存,外設有GPIO, I2C和ADC, 軟件是Beestack 協議,只是最多4K RAM 對于更多的任務顯得小了些。但是憑借32位單片機Coldfire和系統軟件方面經驗和優勢, 飛思卡爾在滿足用戶應用的彈性需求方面作的更有特色,它率先能夠提供從低-中-高各個層面的解決方案,見圖2。
上傳時間: 2013-11-02
上傳用戶:momofiona