高性能可編程DMA控制接口82C37A-54.1 概述對象實體:直接存儲器訪問(DMA)控制接口芯片82C37A-5芯片的特點:1、管腳引線與NMOS 8237A-5兼容。2、允許/禁止單獨DMA請求控制。3、頻率從0~5MHz區間全靜態設計。4、低電平操作。 5、4個各自獨立的DMA通道并獨立的進行初始化。6、存儲器到存儲器之間傳送。7、存儲器模塊初始化處理。8、地址的增量和減量。9、傳送速率可達1.6MB/s.10、可直接擴展成任意數量的通道。11 、終止傳送的過程即輸入結束。12、軟件請求。13、獨立信號DREQ和信號DACK的極性控制。4.2 82C37A-5的體系結構4.2.1 基本結構描述1. 82C37A-5內部配備了規模為344位的內部存儲器,它是以寄存器的形式出現的。2. 配有3個基本的控制模塊: (1)定時及控制模塊; (2)優先級編碼及循環優先級控制模塊;(3)命令控制模塊; 3. 12個不同類型的寄存器 。圖 4-1 82C37A-5結構圖EOP# A0~A3RESETCS#. IOW# DREQ0~DREQ3HLDAHRQ DB0~DB7DACK0~DACK3
上傳時間: 2013-10-21
上傳用戶:ming52900
2.1.1 I/O接口基本概念1.為什么要引入接口微機和I/O設備的信息類型和格式可能不一樣。微機和I/O設備信號傳輸處理的速度可能不匹配。不用接口, I/O直接接CPU,隨著外設增加,會大大降低CPU的效率。I/O直接接CPU,會使外設硬件結構過于依賴CPU,對外設本身發展不利。2.接口的概念 定義:接口是CPU與“外部世界”的連接電路,負責“中轉”各種信息。 分類:存儲器接口和I/O接口。 位置:介于系統總線與外部設備之間。3.I/O接口與I/O設備不同I/O設備對應I/O接口不同。I/O接口受CPU控制,I/O設備受I/O接口控制。為增加通用性,I/O接口電路一般均具有可編程功能。微機的應用離不開外部設備接口的設計、選用和連接。2.1.2、I/O接口功能 數據緩沖功能:通過寄存器或鎖存器實現。 存放數據的寄存器或鎖存器稱之為數據口。 接受和執行CPU命令功能: 存放CPU命令代碼的寄存器稱之為命令口, 存放執行狀態信息的寄存器稱之為狀態口。 設備選擇功能:CPU通過地址譯碼選擇不同外設。 即CPU通過地址譯碼選擇不同I/O接口和I/O接口中連接的不同的設備。 信號轉換功能:協調總線信號與I/O設備信號。 轉換包括信號的邏輯關系、時序配合和電平轉換。 可編程功能:增加接口的靈活性和智能性。
上傳時間: 2013-11-05
上傳用戶:jixingjie
微處理器及微型計算機的發展概況 第一代微處理器是以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
什么是JTAG 到底什么是JTAG呢? JTAG(Joint Test Action Group)聯合測試行動小組)是一種國際標準測試協議(IEEE 1149.1兼容),主要用于芯片內部測試。現在多數的高級器件都支持JTAG協議,如DSP、FPGA器件等。標準的JTAG接口是4線:TMS、 TCK、TDI、TDO,分別為模式選擇、時鐘、數據輸入和數據輸出線。 JTAG最初是用來對芯片進行測試的,基本原理是在器件內部定義一個TAP(Test Access Port�測試訪問口)通過專用的JTAG測試工具對進行內部節點進行測試。JTAG測試允許多個器件通過JTAG接口串聯在一起,形成一個JTAG鏈,能實現對各個器件分別測試。現在,JTAG接口還常用于實現ISP(In-System rogrammable�在線編程),對FLASH等器件進行編程。 JTAG編程方式是在線編程,傳統生產流程中先對芯片進行預編程現再裝到板上因此而改變,簡化的流程為先固定器件到電路板上,再用JTAG編程,從而大大加快工程進度。JTAG接口可對PSD芯片內部的所有部件進行編程 JTAG的一些說明 通常所說的JTAG大致分兩類,一類用于測試芯片的電氣特性,檢測芯片是否有問題;一類用于Debug;一般支持JTAG的CPU內都包含了這兩個模塊。 一個含有JTAG Debug接口模塊的CPU,只要時鐘正常,就可以通過JTAG接口訪問CPU的內部寄存器和掛在CPU總線上的設備,如FLASH,RAM,SOC(比如4510B,44Box,AT91M系列)內置模塊的寄存器,象UART,Timers,GPIO等等的寄存器。 上面說的只是JTAG接口所具備的能力,要使用這些功能,還需要軟件的配合,具體實現的功能則由具體的軟件決定。 例如下載程序到RAM功能。了解SOC的都知道,要使用外接的RAM,需要參照SOC DataSheet的寄存器說明,設置RAM的基地址,總線寬度,訪問速度等等。有的SOC則還需要Remap,才能正常工作。運行Firmware時,這些設置由Firmware的初始化程序完成。但如果使用JTAG接口,相關的寄存器可能還處在上電值,甚至時錯誤值,RAM不能正常工作,所以下載必然要失敗。要正常使用,先要想辦法設置RAM。在ADW中,可以在Console窗口通過Let 命令設置,在AXD中可以在Console窗口通過Set命令設置。
上傳時間: 2013-10-23
上傳用戶:aeiouetla
X9241概述X9241是XICOR公司生產的、把4個E2POT數字電位器集成在單片的CMOS集成電路上的一種數字電位器。它包含4個電阻陣列,每個陣列包含63個電阻單元,在每個單元之間和2個端點之間都有被滑動單元訪問的抽頭點。滑動單元在陣列中的位置由用戶通過2線串行總線接口控制。每個電阻陣列與1個滑動端計數寄存器(WCR)和4個8位數據寄存器聯系在一起。這4個數據寄存器可由用戶直接寫入和讀出。WCR的內容控制滑動端在電阻陣列中的位置,其功能框圖如圖1所示。X9241工作原理 X9241支持雙向總線的定向規約,是一個從屬器件。它的高4位地址為0101(器件類型辨識符),低4位地址由A3~A0輸入端狀態決定。在SDA線上的數據只有在SCL為低期間才能改變狀態。當SCL為高時,SDA狀態的改變用來表示開始和終止條件(開始條件:SCL為高時,SDA由高至低的跳變;終止條件:SCL為高時,SDA由低至高的跳變)。送給X9241的所有命令都由開始條件引導,在其后輸出X9241從器件的地址。X9241把串行數據流與該器件的地址比較,若地址比較成功,則作出一個應答響應。送到X9241的下一個字節包括指令及寄存器指針的信息,高4位為指令,低4位用來指出4個電位器中的1個及4個輔助寄存器中的1個。
上傳時間: 2014-01-18
上傳用戶:黃酒配奶茶
zywSERIAL.rar是16c554接口芯片驅動程序,對此芯片各寄存器的控制及中斷服務函數進行了描述
上傳時間: 2013-12-21
上傳用戶:zyt
利用Atmel ATMega8 的定時器功能和PWM功能,制作頻率發生器。 有LCD顯示,并可實時調節ATMega8的各個相關的寄存器內容。 支持紅外遙控器輸入。 ..\頻率發生器.prj ......主芯片項目文件 ..\頻率發生器.c ......主芯片主程序 ..\頻率發生器.asm ......主芯片匯編文件(自動生成) ..\頻率發生器.hex ......可供燒錄的文件 ..\頻率發生器_client.prj ......副芯片項目文件 ..\頻率發生器_client.c ......副芯片主程序 ..\頻率發生器_client.asm ......副芯片匯編文件 ..\頻率發生器_client.hex ......可供燒錄的文件 ..\Config.h ......硬件配置文件 ..\Input.c ......接受紅外遙控器輸入并在LCD中顯示 ..\LCD_Interface.c ......LCD 1602 接口文件 ..\Menu.c ......在LCD中顯示菜單和其它信息 ..\Menu.h ......菜單定義文件 ..\Readme.txt ......本說明文件
上傳時間: 2013-12-12
上傳用戶:源弋弋
介紹一種高分辨率的雙路A/D轉換器AD7711,能滿足雙路A/D采樣要求。內容包括AD7711的特點, 內部寄存器結構和外部接口,并詳細闡述了數據采集系統中AD7711與單片機AT89S8252的接口技術,包 括硬件接口電路和軟件程序設計及其注意事項。
上傳時間: 2013-12-24
上傳用戶:xinzhch
mm36sb020的spi的接口,已經調試過的 /* 定義命令 *//* #define ERSC 0x90f6 // 檫除整個芯片 // #define SRC 0xfffffffe // 軟件復位芯片 // #define RSE 0x94 // 讀狀態寄存器 // #define RBE 0x98 // 讀一個字節數據從緩沖區 // #define RME 0x9c // 讀一個字節數據從Flash存儲器 // #define RMEC 0xa0 // 連續讀一字節數據從Flash存儲器,先自動地址增加 // #define RMB 0xa4 // 讀一頁數據(128 byte),從Flash存儲器到緩沖區 // #define WEB 0xa8 // 寫一個字節數據到緩沖區 // #define WEBC 0xac // 連續寫一個字節數據到緩沖區,先自動地址增加 // #define WBMEP 0xb0 // 寫緩沖區數據到Flash存儲器,先自動頁檫除 // #define WBME 0xb4 // 寫緩沖區數據到Flash存儲器,沒有自動頁檫除
標簽: define 0xfffffffe 0x90f6 ERSC
上傳時間: 2013-12-01
上傳用戶:chenxichenyue
dsp的串行外設接口SPI SPI是一個高速同步串行輸入/輸出端口,傳送速率可編 程,應用:外部移位寄存器、D/A轉換器、A/D轉換器、 串行EEPROM、LED顯示驅動器等外部設備進行擴展。
上傳時間: 2014-11-24
上傳用戶:fandeshun