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

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

地址輸出

  • 單片機指令系統

    單片機指令系統 3.1 MCS-51指令簡介 3.2 指令系統 3.1  MCS-51指令簡介 二、MCS-51系列單片機指令系統分類 按尋址方式分為以下七種:按功能分為以下四種: 1、立即立即尋址         1、數據傳送指令位操 2、直接尋址             2、算術運算指令 3、寄存器尋址           3、邏輯運算指令 4、寄存器間接尋址指令   4、控制轉移類指令 5、相對尋址             5、位操作指令 6、變址尋址 7、位尋址 三、尋址方式 3、寄存器間接尋址    MOV A, @R1        操作數是通過寄存器間接得到的。 4、立即尋址               MOV  A, #40H        操作數在指令中直接給出。 5、基址寄存器加變址寄存器尋址        以DPTR或PC為基址寄存器,以A為變址寄存器,        以兩者相加形成的16位地址為操作數的地址。                   MOVC A, @A+DPTR                   MOVC A, @A+PC 四、指令中常用符號說明 Rn——當前寄存器區的8個工作寄存器R0~R7(n=0~7); Ri——當前寄存器區可作地址寄存器的2個工作寄存器R0和R1(i=0,1); direct——8位內部數據存儲器單元的地址及特殊功能寄存器的地址; #data——表示8位常數(立即數); #datal6——表示16位常數; add 16——表示16位地址; addrll——表示11位地址; rel——8位帶符號的地址偏移量; bit——表示位地址; @——間接尋址寄存器或基址寄存器的前綴; ( )——表示括號中單元的內容 (( ))——表示間接尋址的內容; 五、MCS-51指令簡介 1. 以累加器A為目的操作數的指令 2.  以Rn為目的操作數的指令 3.  以直接地址為目的操作數的指令 4.  以寄存器間接地址為目的操作數指令 應用舉例1 8段數碼管顯示 應用舉例2 3.2  指令系統 2、堆棧操作指令  3.  累加器A與外部數據傳輸指令 4.  查表指令    MOVC  A,   @A+PC  例子: 5.  字節交換指令 6.  半字節交換指令 二、算術操作類指令 PSW寄存器 2.  帶進位加法指令 3.  加1指令 4.  十進制調整指令 5.  帶借位減法指令(Subtraction) 6.  減1指令(Decrease) 7.   乘法指令(Multiplication) 8.  除法指令(Division)        三、邏輯運算指令 1.  簡單邏輯操作指令 2.  循環指令 帶進位左循環指令(Rotate  Accumulator Left   through  Carry  flag)      右循環指令(Rotate  Accumulator  Right) 帶進位右循環指令(Rotate  A  Right  with  C) 3.   邏輯與指令 4.  邏輯或指令 5.  邏輯異或指令 四、控制轉移類指令 1.  跳轉指令 相對轉移指令   SJMP   rel           PC←(PC)+2                                                                                                                            PC←(PC)+rel 程序中標號與地址之間的關系 2.  條件轉移指令 3.  比較不相等轉移指令 4.  減 1 不為 0 轉移指令 5.  調用子程序指令 7.  中斷返回指令 五、位操作指令 1.  數據位傳送指令 2.  位變量邏輯指令 3.  條件轉移類指令

    標簽: 單片機 指令系統

    上傳時間: 2013-10-27

    上傳用戶:xuanjie

  • 八段碼顯示程序設計與調試

    所學的指令LD、LDI、OUT AND、ANI OR、 ORI LDP、 LDF、ANDP、ANDF、  ORP、 ORF ORB、 ANB MPS、 MRD、 MPP MC、 MCRSET RSTNOP  END 自鎖電路觸點的動作發光二極管的工作原理。八段碼顯示是利用發光二極管的不同段碼組合來實現的,它可以實現0到F的顯示。搶答器的顯示就是利用八段碼顯示的特性,來完成幾個不同組別的顯示。用PLC實現八段碼顯示0~9組的3組以上搶答器的程序編寫,并完成以下要求:1)設計由PLC實現的八段碼顯示0~9組的3組以上搶答器的程序編寫,并完成以下要求: ①列出PLC的輸入輸出地址分配表 ②畫出PLC的輸入輸出接線圖(即I/O接線圖) ③設計PLC的梯形圖 ④根據梯形圖列寫指令表 2)按PLC控制I/O口(輸入/輸出)接線圖在模擬實驗設備上正確接線。

    標簽: 顯示程序 調試

    上傳時間: 2013-11-22

    上傳用戶:lmeeworm

  • 中斷技術.ppt

    5.1  中斷基本概念5.1.1 中斷基本概念定義:CPU暫停現行程序,轉而處理隨機到來的事件,待處理完后再回到被暫停的程序繼續執行,這個過程就是中斷。中斷過程:中斷處理的隱操作:程序狀態及程序斷點地址的進棧及出棧。  中斷系統其他功能:    支持多中斷源和多種中斷源。    支持中斷屏蔽處理。    支持中斷嵌套處理。    支持中斷優先級修改。    支持中斷結束方式選擇。5.1.2 中斷類型1.外部硬件(如鍵盤、鼠標,串口,并口打印機等)中斷屬性:硬件、可屏蔽、向量。 中斷請求:多個中斷請求的排隊和判優由中斷控制器完成,產生的有無中斷請求的信號送到CPU的INTR引腳。  中斷類型號:通過數據總線送到CPU中。EFLAGS寄存器的IF位影響CPU對中斷請求的響應。處理器在當前指令執行結束的時候啟動中斷識別INTA總線周期。

    標簽: 中斷技術

    上傳時間: 2013-11-09

    上傳用戶:黃婷婷思密達

  • DMA技術 -ppt

    數據傳送的控制 數據傳送涉及的3個問題1)數據的來源;2)數據的去處;3)數據本身以及如何控制數據的傳送。 DMA方式控制的數據傳送 DMA傳送方式通常用來高速傳送大批量的數據塊。如:  硬盤和軟盤I/O; 快速通信通道I/O; 多處理機和多程序數據塊傳送; 在圖像處理中,對CRT屏幕送數據; 快速數據采集; DRAM的刷新操作。 DMA傳送包括:(1)存儲單元傳送:存儲器→存儲器。(2)DMA讀傳送:存儲器→I/O設備。(3)DMA寫傳送:I/O設備→存儲器。4.1.2  DMA傳送的工作過程 1)I/O設備向DMAC發出DMA請求;2) DMAC向CPU發出總線請求;3)CPU在執行完當前指令的當前的總線周期后,向DMAC發出總線響應信號;4)CPU脫離對系統總線的控制,由DMAC接管對系統總線的控制; 為什么DMA傳送方式能實現高速傳送?DMA傳送的過程是什么樣的?畫出流程。DMA有哪些操作方式?各有什么特點。簡述DMA控制器的兩個工作狀態的特點。試設計一種在8088大模式下與8237連接的基本電路圖。并說明你的設計中8237各個端口的實際地址。DMA控制器的時序包括哪幾個狀態周期?試畫出正常讀傳輸的時序。DMAC的內部地址寄存器是16位的,如何擴展地址來訪問16MB的地址空間?

    標簽: DMA

    上傳時間: 2013-11-18

    上傳用戶:leixinzhuo

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

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

    標簽: 微型計算機 發聲程序 論文 微機

    上傳時間: 2013-10-17

    上傳用戶:sunjet

  • ICCAVR中文使用說明

    ICCAVR中文使用說明:ICCAVR 介紹1 ImageCraft 的ICCAVR 介紹ImageCraft 的ICCAVR 是一種使用符合ANSI 標準的C 語言來開發微控制器MCU程序的一個工具它有以下幾個主要特點ICCAVR 是一個綜合了編輯器和工程管理器的集成工作環境IDE 其可在WINDOWS9X/NT 下工作源文件全部被組織到工程之中文件的編輯和工程的構筑也在這個環境中完成編譯錯誤顯示在狀態窗口中并且當你用鼠標單擊編譯錯誤時光標會自動跳轉到編輯窗口中引起錯誤的那一行這個工程管理器還能直接產生您希望得到的可以直接使用的INTELHEX 格式文件INTEL HEX 格式文件可被大多數的編程器所支持用于下載程序到芯片中去ICCAVR 是一個32 位的程序支持長文件名出于篇幅考慮本說明書并不介紹通用的C 語言語法知識僅介紹使用ICC AVR 所必須具備的知識因此要求讀者在閱讀本說明書之前應對C 語言有了一定程度的理解2 ICCAVR 中的文件類型及其擴展名文件類型是由它們的擴展名決定的IDE 和編譯器可以使用以下幾種類型的文件輸入文件.c 擴展名----表示是C 語言源文件.s 擴展名----表示是匯編語言源文件.h 擴展名----表示是C 語言的頭文件.prj 擴展名----表示是工程文件這個文件保存由IDE 所創建和修改的一個工程的有關信息.a 擴展名----庫文件它可以由幾個庫封裝在一起libcavr.a 是一個包含了標準C 的庫和AVR 特殊程序調用的基本庫如果庫被引用鏈接器會將其鏈接到您的模塊或文件中您也可以創建或修改一個符合你需要的庫輸出文件.s 對應每個C 語言源文件由編譯器在編譯時產生的匯編輸出文件.o 由匯編文件匯編產生的目標文件多個目標文件可以鏈接成一個可執行文件.hex INTEL HEX 格式文件其中包含了程序的機器代碼.eep INTEL HEX 格式文件包含了EEPROM 的初始化數據.cof COFF 格式輸出文件用于在ATMEL 的AvrStudio 環境下進行程序調試.lst 列表文件在這個文件中列舉出了目標代碼對應的最終地址.mp 內存映象文件它包含了您程序中有關符號及其所占內存大小的信息.cmd NoICE 2.xx 調試命令文件.noi NoICE 3.xx 調試命令文件.dbg ImageCraft 調試命令文件

    標簽: ICCAVR 使用說明

    上傳時間: 2013-10-29

    上傳用戶:truth12

  • 單片機應用技術選編3

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

    標簽: 單片機 應用技術

    上傳時間: 2013-11-10

    上傳用戶:lijinchuan

  • 匯編+保護模式+教程

    九.輸入/輸出保護為了支持多任務,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

  • USB/EPP轉接系統的硬件設計與分析

    摘要:設計并實現了一個USB/EPP 轉接系統,給出其硬件設計方案并討論了相關技術細節, 使其實現USB 接口到EPP接口的相互數據轉發。使僅具有EPP 接口的傳統儀器設備借助于USB/EPP 轉接系統擁有USB 總線所提供的即插即用和設備插架特性, 方便其通過USB 接口靈活接入同時擁有多個外設的計算機主機系統。關鍵詞:USB;EPP;轉接系統中圖分類號:TP368.3 文獻標識碼:A文章編號:1008- 0570(2005)11- 2- 0166- 03 在傳統的I/O 模式中,計算機外設通常映射為CPU 中固定I/O 地址,要求由主機分配一個指定的IRQ 中斷請求。由于PC 機的端口和中斷資源有限,因而使外設的可擴展性受到局限;同時,隨著電腦應用的拓展,PC 機的外設接口越來越多,外設對系統資源的獨占性也容易導致系統資源沖突。由于各種外部設備不斷增加,容易導致各種I/O 沖突。由Intel、Compaq、Microsoft、IBM等廠商所提出的USB 總線標準,基于即插即用和設備插架技術,設備接入時不影響應用程序的運行,具有良好的可擴充性和擴展的方便性。目前USB 協議已經發展到了最新的2.0 版本,可支持峰值傳輸速率為480Mbps 的高速外設,可提供4~8 個USB 2.0 接口,同時通過USB 集線器(HUB)的擴展還可以支持多達127 個外設同時連接,基本上解決了各種外設同時存在同時使用的所有問題。基于USB 接口的上述優點,目前的計算機,特別是筆記本計算機基本上都只配備USB 接口,而取消了傳統的串口和并口,這對那些以前購置的需要與計算機進行通信而只有串口或并口的各種儀器的繼續使用造成了極大的障礙。 針對傳統的數字化儀器與計算機通信中存在的接口不足的問題,本文設計了一個USB/EPP 轉接系統,使其能夠從計算機的USB 接口接收數據,經過格式轉換,從USB/EPP 轉接系統的并行接口EPP 發送給傳統的儀器設備;同時也能夠從USB/EPP 轉接系統的并行接口EPP 接收數據,將其轉化為USB 幀格式,并發送到計算機的USB 接口。從而使僅具有EPP 接口的傳統儀器設備借助于USB/EPP 轉接系統,可以繼續正常使用。2 USB 總線2.1 USB 系統描述及總線協議USB 是一種電纜總線,支持在主機和各種即插即用外設之間進行數據傳輸。由主機預定的標準協議使各種設備分享USB 帶寬,當其它設備和主機在運行時,總線允許添加、設置、使用以及拆除外設,這為多個儀器設備共享同一個主計算機提供了可能。USB 協議采用了管道模型的軟硬件協議,摒棄了一般外設協議的端口映射方式,從而有效地避免了計算機應用系統I/O 端口地址沖突。根據功能劃分,一個USB 系統由三個部分組成:即USB 互連、USB 主機和USB 設備。圖1 給出了USB系統的通用拓撲結構。

    標簽: USB EPP 轉接

    上傳時間: 2013-10-09

    上傳用戶:半熟1994

  • 微機原理與接口課件

    微處理器及微型計算機的發展概況  第一代微處理器是以Intel公司1971年推出的4004,4040為代表的四位微處理機。      第二代微處理機(1973年~1977年),典型代表有:Intel 公司的8080、8085;Motorola公司的M6800以及Zlog公司的Z80。     第三代微處理機 第三代微機是以16位機為代表,基本上是在第二代微機的基礎上發展起來的。其中Intel公司的8088。8086是在8085的基礎發展起來的;M68000是Motorola公司在M6800 的基礎發展起來的;     第四代微處理機 以Intel公司1984年10月推出的80386CPU和1989年4月推出的80486CPU為代表,     第五代微處理機的發展更加迅猛,1993年3月被命名為PENTIUM的微處理機面世,98年PENTIUM 2又被推向市場。 INTEL CPU 發展歷史Intel第一塊CPU 4004,4位主理器,主頻108kHz,運算速度0.06MIPs(Million Instructions Per Second, 每秒百萬條指令),集成晶體管2,300個,10微米制造工藝,最大尋址內存640 bytes,生產曰期1971年11月. 8085,8位主理器,主頻5M,運算速度0.37MIPs,集成晶體管6,500個,3微米制造工藝,最大尋址內存64KB,生產曰期1976年 8086,16位主理器,主頻4.77/8/10MHZ,運算速度0.75MIPs,集成晶體管29,000個,3微米制造工藝,最大尋址內存1MB,生產曰期1978年6月. 80486DX,DX2,DX4,32位主理器,主頻25/33/50/66/75/100MHZ,總線頻率33/50/66MHZ,運算速度20~60MIPs,集成晶體管1.2M個,1微米制造工藝,168針PGA,最大尋址內存4GB,緩存8/16/32/64KB,生產曰期1989年4月 Celeron一代, 主頻266/300MHZ(266/300MHz w/o L2 cache, Covington芯心 (Klamath based),300A/333/366/400/433/466/500/533MHz w/128kB L2 cache, Mendocino核心 (Deschutes-based), 總線頻率66MHz,0.25微米制造工藝,生產曰期1998年4月) Pentium 4 (478針),至今分為三種核心:Willamette核心(主頻1.5G起,FSB400MHZ,0.18微米制造工藝),Northwood核心(主頻1.6G~3.0G,FSB533MHZ,0.13微米制造工藝, 二級緩存512K),Prescott核心(主頻2.8G起,FSB800MHZ,0.09微米制造工藝,1M二級緩存,13條全新指令集SSE3),生產曰期2001年7月. 更大的緩存、更高的頻率、 超級流水線、分支預測、亂序執行超線程技術 微型計算機組成結構單片機簡介單片機即單片機微型計算機,是將計算機主機(CPU、    內存和I/O接口)集成在一小塊硅片上的微型機。 三、計算機編程語言的發展概況 機器語言  機器語言就是0,1碼語言,是計算機唯一能理解并直接執行的語言。匯編語言  用一些助記符號代替用0,1碼描述的某種機器的指令系統,匯編語言就是在此基礎上完善起來的。高級語言  BASIC,PASCAL,C語言等等。用高級語言編寫的程序稱源程序,它們必須通過編譯或解釋,連接等步驟才能被計算機處理。 面向對象語言  C++,Java等編程語言是面向對象的語言。 1.3 微型計算機中信息的表示及運算基礎(一) 十進制ND有十個數碼:0~9,逢十進一。 例 1234.5=1×103 +2×102 +3×101 +4×100 +5×10-1加權展開式以10稱為基數,各位系數為0~9,10i為權。 一般表達式:ND= dn-1×10n-1+dn-2×10n-2 +…+d0×100 +d-1×10-1+… (二) 二進制NB兩個數碼:0、1, 逢二進一。 例 1101.101=1×23+1×22+0×21+1×20+1×2-1+1×2-3 加權展開式以2為基數,各位系數為0、1, 2i為權。 一般表達式:  NB = bn-1×2n-1 + bn-2×2n-2 +…+b0×20 +b-1×2-1+… (三)十六進制NH十六個數碼0~9、A~F,逢十六進一。 例:DFC.8=13×162 +15×161 +12×160 +8×16-1 展開式以十六為基數,各位系數為0~9,A~F,16i為權。 一般表達式: NH= hn-1×16n-1+ hn-2×16n-2+…+ h0×160+ h-1×16-1+… 二、不同進位計數制之間的轉換 (二)二進制與十六進制數之間的轉換  24=16 ,四位二進制數對應一位十六進制數。舉例:(三)十進制數轉換成二、十六進制數整數、小數分別轉換   1.整數轉換法“除基取余”:十進制整數不斷除以轉換進制基數,直至商為0。每除一次取一個余數,從低位排向高位。舉例: 2. 小數轉換法“乘基取整”:用轉換進制的基數乘以小數部分,直至小數為0或達到轉換精度要求的位數。每乘一次取一次整數,從最高位排到最低位。舉例:  三、帶符號數的表示方法 機器數:機器中數的表示形式。真值: 機器數所代表的實際數值。舉例:一個8位機器數與它的真值對應關系如下:  真值: X1=+84=+1010100B     X2=-84= -1010100B   機器數:[X1]機= 01010100    [X2]機= 11010100(二)原碼、反碼、補碼最高位為符號位,0表示 “+”,1表示“-”。 數值位與真值數值位相同。 例  8位原碼機器數:  真值:   x1  = +1010100B     x2    =- 1010100B      機器數: [x1]原  = 01010100  [x2]原 = 11010100原碼表示簡單直觀,但0的表示不唯一,加減運算復雜。 正數的反碼與原碼表示相同。       負數反碼符號位為 1,數值位為原碼數值各位取反。 例 8位反碼機器數:          x= +4: [x]原= 00000100 [x]反= 00000100     x= -4: [x]原= 10000100  [x]反= 111110113、補碼(Two’s Complement)正數的補碼表示與原碼相同。       負數補碼等于2n-abs(x)8位機器數表示的真值四、 二進制編碼例:求十進制數876的BCD碼 876= 1000 0111 0110 BCD  876= 36CH = 1101101100B 2、字符編碼    美國標準信息交換碼ASCII碼,用于計算      機與計算機、計算機與外設之間傳遞信息。 3、漢字編碼 “國家標準信息交換用漢字編碼”(GB2312-80標準),簡稱國標碼。 用兩個七位二進制數編碼表示一個漢字 例如“巧”字的代碼是39H、41H漢字內碼例如“巧”字的代碼是0B9H、0C1H1·4  運算基礎 一、二進制數的運算加法規則:“逢2進1”       減法規則:“借1當2”       乘法規則:“逢0出0,全1出1”二、二—十進制數的加、減運算        BCD數的運算規則 循十進制數的運算規則“逢10進1”。但計算機在進行這種運算時會出現潛在的錯誤。為了解決BCD數的運算問題,采取調整運算結果的措施:即“加六修正”和“減六修正”例:10001000(BCD)+01101001(BCD)        =000101010111(BCD)                1 0 0 0 1 0 0 0       +  0 1 1 0 1 0 0 1           1 1 1 1 0 0 0 1        +  0 1 1 0 0 1 1 0     ……調整          1 0 1 0 1 0 1 1 1                                        進位  例:  10001000(BCD)- 01101001(BCD)= 00011001(BCD)                   1 0 0 0 1 0 0 0            -   0 1 1 0 1 0 0 1             0 0 0 1 1 1 1 1         -                    0 1 1 0   ……調整             0 0 0 1 1 0 0 1  三、 帶符號二進制數的運算 1.5 幾個重要的數字邏輯電路編碼器譯碼器計數器微機自動工作的條件程序指令順序存放自動跟蹤指令執行1.6 微機基本結構微機結構各部分組成連接方式1、以CPU為中心的雙總線結構;2、以內存為中心的雙總線結構;3、單總線結構CPU結構管腳特點  1、多功能;2、分時復用內部結構  1、控制; 2、運算; 3、寄存器; 4、地址程序計數器堆棧定義 1、定義;2、管理;3、堆棧形式

    標簽: 微機原理 接口

    上傳時間: 2013-10-17

    上傳用戶:erkuizhang

主站蜘蛛池模板: 秦皇岛市| 芜湖市| 望城县| 上虞市| 齐河县| 迭部县| 崇阳县| 乐山市| 依兰县| 靖江市| 稻城县| 平武县| 白山市| 龙口市| 柞水县| 庆城县| 晋宁县| 遂平县| 定日县| 静乐县| 苏尼特左旗| 巴塘县| 乐至县| 东源县| 新余市| 光泽县| 栾川县| 抚州市| 临湘市| 东莞市| 南溪县| 碌曲县| 高安市| 格尔木市| 武乡县| 客服| 个旧市| 林芝县| 昌图县| 汝南县| 抚宁县|