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

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

應(yīng)(yīng)變測試

  • SONIX 8BIT單片機26系列I/O型原理及基礎(chǔ)課件

    主要內(nèi)容: 1、Sonix 26xx單片機簡介;2、Sonix 26xx單片機特點;3、Sonix 26xx單片機內(nèi)部結(jié)構(gòu);4、Sonix 26xx單片機資源;5、Sonix 26xx單片機ROM、RAM的映射;6、Sonix 26xx寄存器(ACC、PFLAG、PC、Y、Z、R);

    標(biāo)簽: SONIX 8BIT 單片機

    上傳時間: 2013-10-29

    上傳用戶:遠遠ssad

  • 混合信號微型控制器C8051F330D中文數(shù)據(jù)手冊

    1 . 系統(tǒng)概述C8051F330/1器件是完全集成的混合信號片上系統(tǒng)型MCU。下面列出了一些主要特性,有關(guān)某一產(chǎn)品的具體特性參見表1.1。􀁹 高速、流水線結(jié)構(gòu)的8051兼容的CIP-51內(nèi)核(可達25MIPS)􀁹 全速、非侵入式的在系統(tǒng)調(diào)試接口(片內(nèi))􀁹 真正10位200 ksps的16通道單端/差分ADC,帶模擬多路器􀁹 10位電流輸出DAC􀁹 高精度可編程的25MHz內(nèi)部振蕩器􀁹 8KB可在系統(tǒng)編程的FLASH存儲器􀁹 768字節(jié)片內(nèi)RAM􀁹 硬件實現(xiàn)的SMBus/ I2C、增強型UART和增強型SPI串行接口􀁹 4個通用的16位定時器􀁹 具有3個捕捉/比較模塊和看門狗定時器功能的可編程計數(shù)器/定時器陣列(PCA)􀁹 片內(nèi)上電復(fù)位、VDD監(jiān)視器和溫度傳感器􀁹 片內(nèi)電壓比較器􀁹 17個端口I/O(容許5V輸入)

    標(biāo)簽: C8051F330D 混合信號 控制器 數(shù)據(jù)手冊

    上傳時間: 2013-10-18

    上傳用戶:haohao

  • C51原理及相關(guān)基礎(chǔ)入門知識

    C51原理及相關(guān)基礎(chǔ)入門知識 第一章:C51 流程控制語句一、分類條件語句、循環(huán)語句和開關(guān)語句。下面將對這些語句作詳細介紹。(1) 條件語句條件語句的一般形式為:if(表達式)語句 1;else語句 2;上述結(jié)構(gòu)表示: 如果表達式的值為非0(TURE)即真, 則執(zhí)行語句1, 執(zhí)行完語句1 從語句2 后開始繼續(xù)向下執(zhí)行; 如果表達式的值為 0(FALSE)即假, 則跳過語句1 而執(zhí)行語句2。所謂表達式是指關(guān)系表達式和邏輯表達式的結(jié)合式。注意:1. 條件執(zhí)行語句中"else 語句2;"部分是選擇項, 可以缺省, 此時條件語句變成:if(表達式) 語句1;表示若表達式的值為非 0 則執(zhí)行語句1 , 否則跳過語句1 繼續(xù)執(zhí)行。2. 如果語句1 或語句2 有多于一條語句要執(zhí)行時, 必須使用"{"和"}" 把這些語句包括在其中, 此時條件語句形式為:if(表達式){語句體 1;}else{語句體 2;}3. 條件語句可以嵌套, 這種情況經(jīng)常碰到, 但條件嵌套語句容易出錯, 其原因主要是不知道哪個if 對應(yīng)哪個else。例如:if(x>20||x<-10)if(y<=100&&y>x)printf("Good");elseprintf("Bad");對于上述情況,規(guī)定: else 語句與最近的一個if 語句匹配, 上例中的 else 與 if(y<=100&&y>x) 相匹配。為了使 else 與if(x>20||x<-10) 相匹配, 必須用花括號。如下所示:if(x>20||x<-10){if(y<=100&&y>x)printf("Good");}

    標(biāo)簽: C51 入門知識

    上傳時間: 2013-10-24

    上傳用戶:Sophie

  • linux 中斷和設(shè)備驅(qū)動

    linux 中斷和設(shè)備驅(qū)動 本章介紹L i n u x內(nèi)核是如何維護它支持的文件系統(tǒng)中的文件的,我們先介紹 V F S ( Vi r t u a lFile System,虛擬文件系統(tǒng)),再解釋一下L i n u x內(nèi)核的真實文件系統(tǒng)是如何得到支持的。L i n u x的一個最重要特點就是它支持許多不同的文件系統(tǒng)。這使 L i n u x非常靈活,能夠與許多其他的操作系統(tǒng)共存。在寫這本書的時候, L i n u x共支持1 5種文件系統(tǒng): e x t、 e x t 2、x i a、 m i n i x、 u m s d o s、 msdos 、v f a t、 p r o c、 s m b、 n c p、 i s o 9 6 6 0、 s y s v、 h p f s、 a ffs 和u f s。無疑隨著時間的推移,L i n u x支持的文件系統(tǒng)數(shù)還會增加。

    標(biāo)簽: linux 中斷 設(shè)備驅(qū)動

    上傳時間: 2013-11-13

    上傳用戶:zxh122

  • PC機之間串口通信的實現(xiàn)

    PC機之間串口通信的實現(xiàn)一、實驗?zāi)康?nbsp;1.熟悉微機接口實驗裝置的結(jié)構(gòu)和使用方法。 2.掌握通信接口芯片8251和8250的功能和使用方法。 3.學(xué)會串行通信程序的編制方法。 二、實驗內(nèi)容與要求 1.基本要求主機接收開關(guān)量輸入的數(shù)據(jù)(二進制或十六進制),從鍵盤上按“傳輸”鍵(可自行定義),就將該數(shù)據(jù)通過8251A傳輸出去。終端接收后在顯示器上顯示數(shù)據(jù)。具體操作說明如下:(1)出現(xiàn)提示信息“start with R in the board!”,通過調(diào)整乒乓開關(guān)的狀態(tài),設(shè)置8位數(shù)據(jù);(2)在小鍵盤上按“R”鍵,系統(tǒng)將此時乒乓開關(guān)的狀態(tài)讀入計算機I中,并顯示出來,同時顯示經(jīng)串行通訊后,計算機II接收到的數(shù)據(jù);(3)完成后,系統(tǒng)提示“do you want to send another data? Y/N”,根據(jù)用戶需要,在鍵盤按下“Y”鍵,則重復(fù)步驟(1),進行另一數(shù)據(jù)的通訊;在鍵盤按除“Y”鍵外的任意鍵,將退出本程序。2.提高要求 能夠進行出錯處理,例如采用奇偶校驗,出錯重傳或者采用接收方回傳和發(fā)送方確認來保證發(fā)送和接收正確。 三、設(shè)計報告要求 1.設(shè)計目的和內(nèi)容 2.總體設(shè)計 3.硬件設(shè)計:原理圖(接線圖)及簡要說明 4.軟件設(shè)計框圖及程序清單5.設(shè)計結(jié)果和體會(包括遇到的問題及解決的方法) 四、8251A通用串行輸入/輸出接口芯片由于CPU與接口之間按并行方式傳輸,接口與外設(shè)之間按串行方式傳輸,因此,在串行接口中,必須要有“接收移位寄存器”(串→并)和“發(fā)送移位寄存器”(并→串)。能夠完成上述“串←→并”轉(zhuǎn)換功能的電路,通常稱為“通用異步收發(fā)器”(UART:Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251。8251A異步工作方式:如果8251A編程為異步方式,在需要發(fā)送字符時,必須首先設(shè)置TXEN和CTS#為有效狀態(tài),TXEN(Transmitter Enable)是允許發(fā)送信號,是命令寄存器中的一位;CTS#(Clear To Send)是由外設(shè)發(fā)來的對CPU請求發(fā)送信號的響應(yīng)信號。然后就開始發(fā)送過程。在發(fā)送時,每當(dāng)CPU送往發(fā)送緩沖器一個字符,發(fā)送器自動為這個字符加上1個起始位,并且按照編程要求加上奇/偶校驗位以及1個、1.5個或者2個停止位。串行數(shù)據(jù)以起始位開始,接著是最低有效數(shù)據(jù)位,最高有效位的后面是奇/偶校驗位,然后是停止位。按位發(fā)送的數(shù)據(jù)是以發(fā)送時鐘TXC的下降沿同步的,也就是說這些數(shù)據(jù)總是在發(fā)送時鐘TXC的下降沿從8251A發(fā)出。數(shù)據(jù)傳輸?shù)牟ㄌ芈嗜Q于編程時指定的波特率因子,為發(fā)送器時鐘頻率的1、1/16或1/64。當(dāng)波特率指定為16時,數(shù)據(jù)傳輸?shù)牟ㄌ芈示褪前l(fā)送器時鐘頻率的1/16。CPU通過數(shù)據(jù)總線將數(shù)據(jù)送到8251A的數(shù)據(jù)輸出緩沖寄存器以后,再傳輸?shù)桨l(fā)送緩沖器,經(jīng)移位寄存器移位,將并行數(shù)據(jù)變?yōu)榇袛?shù)據(jù),從TxD端送往外部設(shè)備。在8251A接收字符時,命令寄存器的接收允許位RxE(Receiver Enable)必須為1。8251A通過檢測RxD引腳上的低電平來準(zhǔn)備接收字符,在沒有字符傳送時RxD端為高電平。8251A不斷地檢測RxD引腳,從RxD端上檢測到低電平以后,便認為是串行數(shù)據(jù)的起始位,并且啟動接收控制電路中的一個計數(shù)器來進行計數(shù),計數(shù)器的頻率等于接收器時鐘頻率。計數(shù)器是作為接收器采樣定時,當(dāng)計數(shù)到相當(dāng)于半個數(shù)位的傳輸時間時再次對RxD端進行采樣,如果仍為低電平,則確認該數(shù)位是一個有效的起始位。若傳輸一個字符需要16個時鐘,那么就是要在計數(shù)8個時鐘后采樣到低電平。之后,8251A每隔一個數(shù)位的傳輸時間對RxD端采樣一次,依次確定串行數(shù)據(jù)位的值。串行數(shù)據(jù)位順序進入接收移位寄存器,通過校驗并除去停止位,變成并行數(shù)據(jù)以后通過內(nèi)部數(shù)據(jù)總線送入接收緩沖器,此時發(fā)出有效狀態(tài)的RxRDY信號通知CPU,通知CPU8251A已經(jīng)收到一個有效的數(shù)據(jù)。一個字符對應(yīng)的數(shù)據(jù)可以是5~8位。如果一個字符對應(yīng)的數(shù)據(jù)不到8位,8251A會在移位轉(zhuǎn)換成并行數(shù)據(jù)的時候,自動把他們的高位補成0。 五、系統(tǒng)總體設(shè)計方案根據(jù)系統(tǒng)設(shè)計的要求,對系統(tǒng)設(shè)計的總體方案進行論證分析如下:1.獲取8位開關(guān)量可使用實驗臺上的8255A可編程并行接口芯片,因為只要獲取8位數(shù)據(jù)量,只需使用基本輸入和8位數(shù)據(jù)線,所以將8255A工作在方式0,PA0-PA7接實驗臺上的8位開關(guān)量。2.當(dāng)使用串口進行數(shù)據(jù)傳送時,雖然同步通信速度遠遠高于異步通信,可達500kbit/s,但由于其需要有一個時鐘來實現(xiàn)發(fā)送端和接收端之間的同步,硬件電路復(fù)雜,通常計算機之間的通信只采用異步通信。3.由于8251A本身沒有時鐘,需要外部提供,所以本設(shè)計中使用實驗臺上的8253芯片的計數(shù)器2來實現(xiàn)。4:顯示和鍵盤輸入均使用DOS功能調(diào)用來實現(xiàn)。設(shè)計思路框圖,如下圖所示: 六、硬件設(shè)計硬件電路主要分為8位開關(guān)量數(shù)據(jù)獲取電路,串行通信數(shù)據(jù)發(fā)送電路,串行通信數(shù)據(jù)接收電路三個部分。1.8位開關(guān)量數(shù)據(jù)獲取電路該電路主要是利用8255并行接口讀取8位乒乓開關(guān)的數(shù)據(jù)。此次設(shè)計在獲取8位開關(guān)數(shù)據(jù)量時采用8255令其工作在方式0,A口輸入8位數(shù)據(jù),CS#接實驗臺上CS1口,對應(yīng)端口為280H-283H,PA0-PA7接8個開關(guān)。2.串行通信電路串行通信電路本設(shè)計中8253主要為8251充當(dāng)頻率發(fā)生器,接線如下圖所示。

    標(biāo)簽: PC機 串口通信

    上傳時間: 2013-12-19

    上傳用戶:小火車?yán)怖怖?/p>

  • AVR高速嵌入式單片機原理與應(yīng)用(修訂版)

    AVR高速嵌入式單片機原理與應(yīng)用(修訂版)詳細介紹ATMEL公司開發(fā)的AVR高速嵌入式單片機的結(jié)構(gòu);講述AVR單片機的開發(fā)工具和集成開發(fā)環(huán)境(IDE),包括Studio調(diào)試工具、AVR單片機匯編器和單片機串行下載編程;學(xué)習(xí)指令系統(tǒng)時,每條指令均有實例,邊學(xué)習(xí)邊調(diào)試,使學(xué)習(xí)者看得見指令流向及操作結(jié)果,真正理解每條指令的功能及使用注意事項;介紹AVR系列多種單片機功能特點、實用程序設(shè)計及應(yīng)用實例;作為提高篇,講述簡單易學(xué)、適用AVR單片機的高級語言BASCOMAVR及ICC AVR C編譯器。 AVR高速嵌入式單片機原理與應(yīng)用(修訂版) 目錄 第一章ATMEL單片機簡介1.1ATMEL公司產(chǎn)品的特點11.2AT90系列單片機簡介21.3AT91M系列單片機簡介2第二章AVR單片機系統(tǒng)結(jié)構(gòu)2.1AVR單片機總體結(jié)構(gòu)42.2AVR單片機中央處理器CPU62.2.1結(jié)構(gòu)概述72.2.2通用寄存器堆92.2.3X、Y、Z寄存器92.2.4ALU運算邏輯單元92.3AVR單片機存儲器組織102.3.1可下載的Flash程序存儲器102.3.2內(nèi)部和外部的SRAM數(shù)據(jù)存儲器102.3.3EEPROM數(shù)據(jù)存儲器112.3.4存儲器訪問和指令執(zhí)行時序112.3.5I/O存儲器132.4AVR單片機系統(tǒng)復(fù)位162.4.1復(fù)位源172.4.2加電復(fù)位182.4.3外部復(fù)位192.4.4看門狗復(fù)位192.5AVR單片機中斷系統(tǒng)202.5.1中斷處理202.5.2外部中斷232.5.3中斷應(yīng)答時間232.5.4MCU控制寄存器 MCUCR232.6AVR單片機的省電方式242.6.1休眠狀態(tài)242.6.2空閑模式242.6.3掉電模式252.7AVR單片機定時器/計數(shù)器252.7.1定時器/計數(shù)器預(yù)定比例器252.7.28位定時器/計數(shù)器0252.7.316位定時器/計數(shù)器1272.7.4看門狗定時器332.8AVR單片機EEPROM讀/寫訪問342.9AVR單片機串行接口352.9.1同步串行接口 SPI352.9.2通用串行接口 UART402.10AVR單片機模擬比較器452.10.1模擬比較器452.10.2模擬比較器控制和狀態(tài)寄存器ACSR462.11AVR單片機I/O端口472.11.1端口A472.11.2端口 B482.11.3端口 C542.11.4端口 D552.12AVR單片機存儲器編程612.12.1編程存儲器鎖定位612.12.2熔斷位612.12.3芯片代碼612.12.4編程 Flash和 EEPROM612.12.5并行編程622.12.6串行下載662.12.7可編程特性67第三章AVR單片機開發(fā)工具3.1AVR實時在線仿真器ICE200693.2JTAG ICE仿真器693.3AVR嵌入式單片機開發(fā)下載實驗器SL?AVR703.4AVR集成開發(fā)環(huán)境(IDE)753.4.1AVR Assembler編譯器753.4.2AVR Studio773.4.3AVR Prog783.5SL?AVR系列組態(tài)開發(fā)實驗系統(tǒng)793.6SL?AVR*.ASM源文件說明81第四章AVR單片機指令系統(tǒng)4.1指令格式844.1.1匯編指令844.1.2匯編器偽指令844.1.3表達式874.2尋址方式894.3數(shù)據(jù)操作和指令類型924.3.1數(shù)據(jù)操作924.3.2指令類型924.3.3指令集名詞924.4算術(shù)和邏輯指令934.4.1加法指令934.4.2減法指令974.4.3乘法指令1014.4.4取反碼指令1014.4.5取補指令1024.4.6比較指令1034.4.7邏輯與指令1054.4.8邏輯或指令1074.4.9邏輯異或指令1104.5轉(zhuǎn)移指令1114.5.1無條件轉(zhuǎn)移指令1114.5.2條件轉(zhuǎn)移指令1144.6數(shù)據(jù)傳送指令1354.6.1直接數(shù)據(jù)傳送指令1354.6.2間接數(shù)據(jù)傳送指令1374.6.3從程序存儲器直接取數(shù)據(jù)指令1444.6.4I/O口數(shù)據(jù)傳送指令1454.6.5堆棧操作指令1464.7位指令和位測試指令1474.7.1帶進位邏輯操作指令1474.7.2位變量傳送指令1514.7.3位變量修改指令1524.7.4其它指令1614.8新增指令(新器件)1624.8.1EICALL-- 延長間接調(diào)用子程序1624.8.2EIJMP--擴展間接跳轉(zhuǎn)1634.8.3ELPM--擴展裝載程序存儲器1644.8.4ESPM--擴展存儲程序存儲器1644.8.5FMUL--小數(shù)乘法1664.8.6FMULS--有符號數(shù)乘法1664.8.7FMULSU--有符號小數(shù)和無符號小數(shù)乘法1674.8.8MOVW--拷貝寄存器字1684.8.9MULS--有符號數(shù)乘法1694.8.10MULSU--有符號數(shù)與無符號數(shù)乘法1694.8.11SPM--存儲程序存儲器170 第五章AVR單片機AT90系列5.1AT90S12001725.1.1特點1725.1.2描述1735.1.3引腳配置1745.1.4結(jié)構(gòu)縱覽1755.2AT90S23131835.2.1特點1835.2.2描述1845.2.3引腳配置1855.3ATmega8/8L1855.3.1特點1865.3.2描述1875.3.3引腳配置1895.3.4開發(fā)實驗工具1905.4AT90S2333/44331915.4.1特點1915.4.2描述1925.4.3引腳配置1945.5AT90S4414/85151955.5.1特點1955.5.2AT90S4414和AT90S8515的比較1965.5.3引腳配置1965.6AT90S4434/85351975.6.1特點1975.6.2描述1985.6.3AT90S4434和AT90S8535的比較1985.6.4引腳配置2005.6.5AVR RISC結(jié)構(gòu)2015.6.6定時器/計數(shù)器2125.6.7看門狗定時器 2175.6.8EEPROM讀/寫2175.6.9串行外設(shè)接口SPI2175.6.10通用串行接口UART2175.6.11模擬比較器 2175.6.12模數(shù)轉(zhuǎn)換器2185.6.13I/O端口2235.7ATmega83/1632285.7.1特點2285.7.2描述2295.7.3ATmega83與ATmega163的比較2315.7.4引腳配置2315.8ATtiny10/11/122325.8.1特點2325.8.2描述2335.8.3引腳配置2355.9ATtiny15/L2375.9.1特點2375.9.2描述2375.9.3引腳配置2395 .10ATmega128/128L2395.10.1特點2405.10.2描述2415.10.3引腳配置2435.10.4開發(fā)實驗工具2455.11ATmega1612465.11.1特點2465.11.2描述2475.11.3引腳配置2475.12AVR單片機替代MCS51單片機249第六章實用程序設(shè)計6.1程序設(shè)計方法2506.1.1程序設(shè)計步驟2506.1.2程序設(shè)計技術(shù)2506.2應(yīng)用程序舉例2516.2.1內(nèi)部寄存器和位定義文件2516.2.2訪問內(nèi)部 EEPROM2546.2.3數(shù)據(jù)塊傳送2546.2.4乘法和除法運算應(yīng)用一2556.2.5乘法和除法運算應(yīng)用二2556.2.616位運算2556.2.7BCD運算2556.2.8冒泡分類算法2556.2.9設(shè)置和使用模擬比較器2556.2.10半雙工中斷方式UART應(yīng)用一2556.2.11半雙工中斷方式UART應(yīng)用二2566.2.128位精度A/D轉(zhuǎn)換器2566.2.13裝載程序存儲器2566.2.14安裝和使用相同模擬比較器2566.2.15CRC程序存儲的檢查2566.2.164×4鍵區(qū)休眠觸發(fā)方式2576.2.17多工法驅(qū)動LED和4×4鍵區(qū)掃描2576.2.18I2C總線2576.2.19I2C工作2586.2.20SPI軟件2586.2.21驗證SLAVR實驗器及AT90S1200的口功能12596.2.22驗證SLAVR實驗器及AT90S1200的口功能22596.2.23驗證SLAVR實驗器及具有DIP40封裝的口功能第七章AVR單片機的應(yīng)用7.1通用延時子程序2607.2簡單I/O口輸出實驗2667.2.1SLAVR721.ASM 2667.2.2SLAVR722.ASM2677.2.3SLAVR723.ASM2687.2.4SLAVR724.ASM2707.2.5SLAVR725.ASM2717.2.6SLAVR726.ASM2727.2.7SLAVR727.ASM2737.3綜合程序2747.3.1LED/LCD/鍵盤掃描綜合程序2747.3.2LED鍵盤掃描綜合程序2757.3.3在LED上實現(xiàn)字符8的循環(huán)移位顯示程序2757.3.4電腦放音機2777.3.5鍵盤掃描程序2857.3.6十進制計數(shù)顯示2867.3.7廉價的A/D轉(zhuǎn)換器2897.3.8高精度廉價的A/D轉(zhuǎn)換器2947.3.9星星燈2977.3.10按鈕猜數(shù)程序2987.3.11漢字的輸入3047.4復(fù)雜實用程序3067.4.110位A/D轉(zhuǎn)換3067.4.2步進電機控制程序3097.4.3測脈沖寬度3127.4.4LCD顯示8字循環(huán)3187.4.5LED電腦時鐘3247.4.6測頻率3307.4.7測轉(zhuǎn)速3327.4.8AT90S8535的A/D轉(zhuǎn)換334第八章BASCOMAVR的應(yīng)用8.1基于高級語言BASCOMAVR的單片機開發(fā)平臺3408.2BASCOMAVR軟件平臺的安裝與使用3418.3AVR I/O口的應(yīng)用3458.3.1LED發(fā)光二極管的控制3458.3.2簡易手控廣告燈3468.3.3簡易電腦音樂放音機3478.4LCD顯示器3498.4.1標(biāo)準(zhǔn)LCD顯示器的應(yīng)用3498.4.2簡單游戲機--按鈕猜數(shù)3518.5串口通信UART3528.5.1AVR系統(tǒng)與PC的簡易通信3538.5.2PC控制的簡易廣告燈3548.6單總線接口和溫度計3568.7I2C總線接口和簡易IC卡讀寫器359第九章ICC AVR C編譯器的使用9.1ICC AVR的概述3659.1.1介紹ImageCraft的ICC AVR3659.1.2ICC AVR中的文件類型及其擴展名3659.1.3附注和擴充3669.2ImageCraft的ICC AVR編譯器安裝3679.2.1安裝SETUP.EXE程序3679.2.2對安裝完成的軟件進行注冊3679.3ICC AVR導(dǎo)游3689.3.1起步3689.3.2C程序的剖析3699.4ICC AVR的IDE環(huán)境3709.4.1編譯一個單獨的文件3709.4.2創(chuàng)建一個新的工程3709.4.3工程管理3719.4.4編輯窗口3719.4.5應(yīng)用構(gòu)筑向?qū)?719.4.6狀態(tài)窗口3719.4.7終端仿真3719.5C庫函數(shù)與啟動文件3729.5.1啟動文件3729.5.2常用庫函數(shù)3729.5.3字符類型庫3739.5.4浮點運算庫3749.5.5標(biāo)準(zhǔn)輸入/輸出庫3759.5.6標(biāo)準(zhǔn)庫和內(nèi)存分配函數(shù)3769.5.7字符串函數(shù)3779.5.8變量參數(shù)函數(shù)3799.5.9堆棧檢查函數(shù)3799.6AVR硬件訪問的編程3809.6.1訪問AVR的底層硬件3809.6.2位操作3809.6.3程序存儲器和常量數(shù)據(jù)3819.6.4字符串3829.6.5堆棧3839.6.6在線匯編3839.6.7I/O寄存器3849.6.8絕對內(nèi)存地址3849.6.9C任務(wù)3859.6.10中斷操作3869.6.11訪問UART3879.6.12訪問EEPROM3879.6.13訪問SPI3889.6.14相對轉(zhuǎn)移/調(diào)用的地址范圍3889.6.15C的運行結(jié)構(gòu)3889.6.16匯編界面和調(diào)用規(guī)則3899.6.17函數(shù)返回非整型值3909.6.18程序和數(shù)據(jù)區(qū)的使用3909.6.19編程區(qū)域3919.6.20調(diào)試3919.7應(yīng)用舉例*3929.7.1讀/寫口3929.7.2延時函數(shù)3929.7.3讀/寫EEPROM3929.7.4AVR的PB口變速移位3939.7.5音符聲程序3939.7.68字循環(huán)移位顯示程序3949.7.7鋸齒波程序3959.7.8正三角波程序3969.7.9梯形波程序396附錄1AT89系列單片機簡介398附錄2AT94K系列現(xiàn)場可編程系統(tǒng)標(biāo)準(zhǔn)集成電路401附錄3指令集綜合404附錄4AVR單片機選型表408參 考 文 獻412

    標(biāo)簽: AVR 高速嵌入式 單片機原理

    上傳時間: 2013-11-08

    上傳用戶:xcy122677

  • 基于Proteus的單片機出租車計價器的設(shè)計

    隨著單片機性能不斷提高而價格卻不斷下降, 單片機控制在越來越多的領(lǐng)域得以應(yīng)用。按照傳統(tǒng)的模式, 在整個項目開發(fā)過程中, 先根據(jù)控制系統(tǒng)要求設(shè)計原理圖, PCB 電路圖繪制, 電路板制作, 元器件的焊接, 然后進行軟件編程, 通過仿真器對系統(tǒng)硬件和軟件調(diào)試, 最后將調(diào)試成功的程序固化到單片機中。這一過程中的主要問題是, 應(yīng)用程序需要在硬件完成的情況下才能進行調(diào)試。雖然有的軟件可以進行模擬調(diào)試, 但是對于一些復(fù)雜的程序如人機交互程序, 在沒有硬件的時候, 沒有界面的真實感, 給調(diào)試帶來困難。在軟硬件的配合中如需要修改硬件, 要重新制板, 在時間和投入上帶來很大的麻煩。縱觀整個過程, 無論是從硬件成本上, 還是從調(diào)試周期上, 傳統(tǒng)開發(fā)模式的效率有待提高。能否只使用一種開發(fā)工具兼顧仿真, 調(diào)試, 制板, 以及最大限度的軟件模擬來作為單片機的開發(fā)平臺, 用它取代編程器、仿真器、成品前的硬件測試等工作是廣大單片機開發(fā)者的夢想。 PROTEUS 軟件介紹為了更加直觀具體地說明Proteus 軟件的實用價值, 本文以一具體的TAXI 的計價器和計時器電路板的設(shè)計過程為例。其電路板要實現(xiàn)的功能是:㈠計時功能(相當(dāng)于時鐘);㈡里程計價功能:兩公里以內(nèi)價格為4 元, 以后每一公里加0.7 元, 不足一公里取整(如10.3 公里取11 公里);㈢通過鍵盤輸入里程, 模擬計算里程費, 實現(xiàn)Y= (X- 2)*0.7+4 的簡單計算。基于上述功能, 選用ATMEL 公司生產(chǎn)的通用芯片AT89C51 單片機構(gòu)成應(yīng)用系統(tǒng)。AT89C51 是內(nèi)含8 位4K 程序存儲器, 128B 數(shù)據(jù)存儲器, 2 個定時器/計數(shù)器的通用芯片。系統(tǒng)開發(fā)環(huán)境采用ProteusISIS 6。2.1 計價器模擬系統(tǒng)硬件構(gòu)成系統(tǒng)主要由一個AT89C51 單片機、74LS373、74LS240、矩陣鍵盤、4 位7 段數(shù)碼管等組成。通用AT89C51 單片機芯片作為整個電路的核心部分、74LS373 作為LED 段選控制、74LS240四路反相器則為4 位共陰極7 段數(shù)碼管提供位選通信號、矩陣鍵盤輸入控制信號。

    標(biāo)簽: Proteus 單片機 出租車計價器

    上傳時間: 2013-11-09

    上傳用戶:木子葉1

  • 提高PLC程序運行速度的幾種編程方法

    PLC 以 其 可靠性高、抗干擾能力強、配套齊全、功能完善、適應(yīng)性強等特點,廣泛應(yīng)用于各種控制領(lǐng)域。PLC作為通用工業(yè)控制計算機,是面向工礦企業(yè)的工控設(shè)備,使用梯形圖符號進行編程,與繼電器電路相當(dāng)接近,被廣大工程技術(shù)人員接受。但是在實際應(yīng)用中,如何編程能夠提高PLC程序運行速度是一個值得我們思考研究的問題。1 PLC工作原理PLC 與 計 算機的工作原理基本相同,即在系統(tǒng)程序的管理下,通過運行應(yīng)用程序完成用戶任務(wù)。但兩者的工作方式有所不同。計算機一般采用等待命令的工作方式,而PLC在確定了工作任務(wù)并裝人了專用程序后成為一種專用機,它采用循環(huán)掃描工作方式,系統(tǒng)工作任務(wù)管理及應(yīng)用程序執(zhí)行都是用循環(huán)掃描方式完成的。PLC 有 兩 種基本的工作狀態(tài),即運行(RUN)與停止(STOP)狀態(tài)。在這兩種狀態(tài)下,PLC的掃描過程及所要完成的任務(wù)是不盡相同的,如圖1所示。 PLC在RUN工作狀態(tài)時,執(zhí)行一次掃描操作所的時間稱為掃描周期,其典型值通常為1一100nis,不同PLC廠家的產(chǎn)品則略有不同。掃描周期由內(nèi)部處理時間、輸A/ 輸出處理執(zhí)行時間、指令執(zhí)行時間等三部分組成。通常在一個掃描過程中,執(zhí)行指令的時間占了絕大部分,而執(zhí)行指令的時間與用戶程序的長短有關(guān)。用戶 程 序 是根據(jù)控制要求由用戶編制,由許多條PLC指令所組成。不同的指令所對應(yīng)的程序步不同,以三菱FX2N系列的PLC為例,PLC對每一個程序步操作處理時間為:基本指令占0.741s/步,功能指令占幾百微米/步。完成一個控制任務(wù)可以有多種編制程序的方法,因此,選擇合理、巧妙的編程方法既可以大大提高程序運行速度,又可以保證可靠性。 提高PLC程序運行速度的幾種編程方法2.1 用數(shù)據(jù)傳送給位元件組合的方法來控制輸出在 PL C應(yīng) 用編程中,最后都會有一段輸出控制程序,一般都是用邏輯取及輸出指令來編寫,如圖2所示。在圖2所示的程序中,邏輯取的程序步為1,輸出的程序步為2,執(zhí)行上述程序共需3個程序步。通常情況下,PLC要控制的輸出都不會是少量的,比如,有8個輸出,在條件滿足時要同時輸出。此時,執(zhí)行圖2所示的程序共需17個程序步。若我們通過位元件的組合并采用數(shù)據(jù)傳送的方法來完成圖2所示的程序,就會大大減少程序步驟。在三 菱 PLC中,只處理ON/OFF狀態(tài)的元件(如X,Y,M和S),稱為位元件。但將位元件組合起來也可以處理數(shù)據(jù)。位元件組合由Kn加首元件號來表示。位元件每4bit為一組組合成單元。如KYO中的n是組數(shù),當(dāng)n=1時,K,Yo 對應(yīng)的是Y3一Yo。當(dāng)n二2時,KZYo對應(yīng)的是Y7一Yo。通過位元件組合,就可以用處理數(shù)據(jù)的方式來處理位元件,圖2程序所示的功能可用圖3所示的傳送數(shù)據(jù)的方式來完成。

    標(biāo)簽: PLC 程序 運行速度 編程方法

    上傳時間: 2013-11-11

    上傳用戶:幾何公差

  • 4x4鍵盤的設(shè)計與制作

    三種方法讀取鍵值􀂄 使用者設(shè)計行列鍵盤介面,一般常採用三種方法讀取鍵值。􀂉 中斷式􀂄 在鍵盤按下時產(chǎn)生一個外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態(tài)判斷哪個按鍵被按下。􀂄 本實驗採用中斷式實現(xiàn)使用者鍵盤介面。􀂉 掃描法􀂄 對鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對應(yīng)列的鍵被按下。否則掃描下一行。􀂉 反轉(zhuǎn)法􀂄 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。􀂄 根據(jù)讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結(jié)構(gòu)。按鍵按下將會使行列連成通路,這也是見的使用者鍵盤設(shè)計電路。 //-----------4X4鍵盤程序--------------// uchar keboard(void) { uchar xxa,yyb,i,key; if((PINC&0x0f)!=0x0f) //是否有按鍵按下 {delayms(1); //延時去抖動 if((PINC&0x0f)!=0x0f) //有按下則判斷 { xxa=~(PINC|0xf0); //0000xxxx DDRC=0x0f; PORTC=0xf0; delay_1ms(); yyb=~(PINC|0x0f); //xxxx0000 DDRC=0xf0; //復(fù)位 PORTC=0x0f; while((PINC&0x0f)!=0x0f) //按鍵是否放開 { display(data); } i=4; //計算返回碼 while(xxa!=0) { xxa=xxa>>1; i--; } if(yyb==0x80) key=i; else if(yyb==0x40) key=4+i; else if(yyb==0x20) key=8+i; else if(yyb==0x10) key=12+i; return key; //返回按下的鍵盤碼 } } else return 17; //沒有按鍵按下 }

    標(biāo)簽: 4x4 鍵盤

    上傳時間: 2013-11-12

    上傳用戶:a673761058

  • c8051f040/c8051f041/c8051f042/

    C8051F040/1/2/3/4/5/6/7混合信號ISP FLASH 微控制器數(shù) 據(jù) 手 冊 C8051F04x 系列器件是完全集成的混合信號片上系統(tǒng)型MCU,具有64 個數(shù)字I/O 引腳(C8051F040/2/4/6)或32 個數(shù)字I/O 引腳(C8051F041/3/5/7),片內(nèi)集成了一個CAN2.0B 控制器。下面列出了一些主要特性;有關(guān)某一產(chǎn)品的具體特性參見表1.1。􀁹 高速、流水線結(jié)構(gòu)的8051 兼容的CIP-51 內(nèi)核(可達25MIPS)􀁹 控制器局域網(wǎng)(CAN2.0B)控制器,具有32 個消息對象,每個消息對象有其自己的標(biāo)識􀁹 全速、非侵入式的在系統(tǒng)調(diào)試接口(片內(nèi))􀁹 真正12 位(C8051F040/1)或10 位(C8051F042/3/4/5/6/7)、100 ksps 的ADC,帶PGA 和8 通道模擬多路開關(guān)􀁹 允許高電壓差分放大器輸入到12/10 位ADC(60V 峰-峰值),增益可編程􀁹 真正8 位500 ksps 的ADC,帶PGA 和8 通道模擬多路開關(guān)(C8051F040/1/2/3)􀁹 兩個12 位DAC,具有可編程數(shù)據(jù)更新方式(C8051F040/1/2/3)􀁹 64KB(C8051F040/1/2/3/4/5)或32KB(C8051F046/7)可在系統(tǒng)編程的FLASH 存儲器􀁹 4352(4K+256)字節(jié)的片內(nèi)RAM􀁹 可尋址64KB 地址空間的外部數(shù)據(jù)存儲器接口􀁹 硬件實現(xiàn)的SPI、SMBus/ I2C 和兩個UART 串行接口􀁹 5 個通用的16 位定時器􀁹 具有6 個捕捉/比較模塊的可編程計數(shù)器/定時器陣列􀁹 片內(nèi)看門狗定時器、VDD 監(jiān)視器和溫度傳感器具有片內(nèi)VDD 監(jiān)視器、看門狗定時器和時鐘振蕩器的C8051F04x 系列器件是真正能獨立工作的片上系統(tǒng)。所有模擬和數(shù)字外設(shè)均可由用戶固件使能/禁止和配置。FLASH 存儲器還具有在系統(tǒng)重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許現(xiàn)場更新8051 固件。片內(nèi)JTAG 調(diào)試電路允許使用安裝在最終應(yīng)用系統(tǒng)上的產(chǎn)品MCU 進行非侵入式(不占用片內(nèi)資源)、全速、在系統(tǒng)調(diào)試。該調(diào)試系統(tǒng)支持觀察和修改存儲器和寄存器,支持?jǐn)帱c、觀察點、單步及運行和停機命令。在使用JTAG 調(diào)試時,所有的模擬和數(shù)字外設(shè)都可全功能運行。每個MCU 都可在工業(yè)溫度范圍(-45℃到+85℃)工作,工作電壓為2.7 ~ 3.6V。端口I/O、/RST和JTAG 引腳都容許5V 的輸入信號電壓。C8051F040/2/4/6 為100 腳TQFP 封裝(見圖1.1 和圖1.3的框圖)。C8051F041/3/5/7 為64 腳TQFP 封裝(見圖1.2 和圖1.4 的框圖)。

    標(biāo)簽: 8051 040 041 042

    上傳時間: 2013-10-24

    上傳用戶:hwl453472107

主站蜘蛛池模板: 尚义县| 宁阳县| 抚顺市| 临潭县| 崇州市| 太康县| 同江市| 彭水| 三门县| 元氏县| 云龙县| 凌云县| 杭锦旗| 贵定县| 屏山县| 德江县| 沧源| 绍兴县| 布尔津县| 石楼县| 宾川县| 集贤县| 贵阳市| 沛县| 湖州市| 云和县| 南靖县| 岢岚县| 五华县| 南平市| 筠连县| 新化县| 蕉岭县| 慈利县| 扬州市| 确山县| 玉溪市| 中山市| 历史| 海阳市| 东明县|