新穎實用的單片機雙積分A/D轉換電路和軟件:摘 要: 通過對雙積分A/ D 轉換過程及其原理的分析,結合8031 單片機定時計數器的特點,設計出一種新的A/ D 轉換電路. 詳細介紹了這種轉換電路的硬件原理及工作過程,給出了實用的硬件電路與軟件設計框圖. 通過比較分析,可以看出這種A/ D 轉換電路性能價格比較高,軟件編程簡單,并且轉換速度和精度優于一般的A/ D 轉換電路. 這種設計思路為數模轉換器(A/ D) 的升級提高指出一個明確的方向.關鍵詞:單片機; 定時/ 計數器; A/ D 轉換; 雙積分 雙積分A/ D 及定時計數器原理:我們先分析雙積分A/ D 轉換的工作原理. 如圖1 所示,積分器先以固定時間T 對待測的輸入模擬電壓Vi 進行正向積分,積分電容C 積累的電荷為
上傳時間: 2014-01-18
上傳用戶:hewenzhi
單片機系統常用軟件抗干擾措施:可靠性設計是一項系統工程,單片機系統的可靠性必須從軟件、硬件以及結構設計等方面全面考慮。硬件系統的可靠性設計是單片機系統可靠性的根本,而軟件系統的可靠性設計起到抑制外來干擾的作用。軟件系統的可靠性設計的主要方法有:開機自檢、軟件陷阱(進行程序“跑飛”檢測)、設置程序運行狀態標記、輸出端口刷新、輸入多次采樣、軟件“看門狗”等。通過軟件系統的可靠性設計,達到最大限度地降低干擾對系統工作的影響,確保單片機及時發現因干擾導致程序出現的錯誤,并使系統恢復到正常工作狀態或及時報警的目的。一、開機自檢開機后首先對單片機系統的硬件及軟件狀態進行檢測,一旦發現不正常,就進行相應的處理。開機自檢程序通常包括對RAM、ROM、I/O口狀態等的檢測。1 檢測RAM檢查RAM讀寫是否正常,實際操作是向RAM單元寫“00H”,讀出也應為“00H”,再向其寫“FFH”,讀出也應為“FFH”。如果RAM單元讀寫出錯,應給出RAM出錯提示(聲光或其它形式),等待處理。2 檢查ROM單元的內容對ROM單元的檢測主要是檢查ROM單元的內容的校驗和。所謂ROM的校驗和是將ROM的內容逐一相加后得到一個數值,該值便稱校驗和。ROM單元存儲的是程序、常數和表格。一旦程序編寫完成,ROM中的內容就確定了,其校驗和也就是唯一的。若ROM校驗和出錯,應給出ROM出錯提示(聲光或其它形式),等待處理。3 檢查I/O口狀態首先確定系統的I/O口在待機狀態應處的狀態,然后檢測單片機的I/O口在待機狀態下的狀態是否正常(如是否有短路或開路現象等)。若不正常,應給出出錯提示(聲光或其它形式),等待處理。4 其它接口電路檢測除了對上述單片機內部資源進行檢測外,對系統中的其它接口電路,比如擴展的E2PROM、A/D轉換電路等,又如數字測溫儀中的555單穩測溫電路,均應通過軟件進行檢測,確定是否有故障。只有各項檢查均正常,程序方能繼續執行,否則應提示出錯。
上傳時間: 2013-11-02
上傳用戶:名爵少年
P C B 可測性設計布線規則之建議― ― 從源頭改善可測率PCB 設計除需考慮功能性與安全性等要求外,亦需考慮可生產與可測試。這里提供可測性設計建議供設計布線工程師參考。1. 每一個銅箔電路支點,至少需要一個可測試點。如無對應的測試點,將可導致與之相關的開短路不可檢出,并且與之相連的零件會因無測試點而不可測。2. 雙面治具會增加制作成本,且上針板的測試針定位準確度差。所以Layout 時應通過Via Hole 盡可能將測試點放置于同一面。這樣就只要做單面治具即可。3. 測試選點優先級:A.測墊(Test Pad) B.通孔(Through Hole) C.零件腳(Component Lead) D.貫穿孔(Via Hole)(未Mask)。而對于零件腳,應以AI 零件腳及其它較細較短腳為優先,較粗或較長的引腳接觸性誤判多。4. PCB 厚度至少要62mil(1.35mm),厚度少于此值之PCB 容易板彎變形,影響測點精準度,制作治具需特殊處理。5. 避免將測點置于SMT 之PAD 上,因SMT 零件會偏移,故不可靠,且易傷及零件。6. 避免使用過長零件腳(>170mil(4.3mm))或過大的孔(直徑>1.5mm)為測點。7. 對于電池(Battery)最好預留Jumper,在ICT 測試時能有效隔離電池的影響。8. 定位孔要求:(a) 定位孔(Tooling Hole)直徑最好為125mil(3.175mm)及其以上。(b) 每一片PCB 須有2 個定位孔和一個防呆孔(也可說成定位孔,用以預防將PCB反放而導致機器壓破板),且孔內不能沾錫。(c) 選擇以對角線,距離最遠之2 孔為定位孔。(d) 各定位孔(含防呆孔)不應設計成中心對稱,即PCB 旋轉180 度角后仍能放入PCB,這樣,作業員易于反放而致機器壓破板)9. 測試點要求:(e) 兩測點或測點與預鉆孔之中心距不得小于50mil(1.27mm),否則有一測點無法植針。以大于100mil(2.54mm)為佳,其次是75mil(1.905mm)。(f) 測點應離其附近零件(位于同一面者)至少100mil,如為高于3mm 零件,則應至少間距120mil,方便治具制作。(g) 測點應平均分布于PCB 表面,避免局部密度過高,影響治具測試時測試針壓力平衡。(h) 測點直徑最好能不小于35mil(0.9mm),如在上針板,則最好不小于40mil(1.00mm),圓形、正方形均可。小于0.030”(30mil)之測點需額外加工,以導正目標。(i) 測點的Pad 及Via 不應有防焊漆(Solder Mask)。(j) 測點應離板邊或折邊至少100mil。(k) 錫點被實踐證實是最好的測試探針接觸點。因為錫的氧化物較輕且容易刺穿。以錫點作測試點,因接觸不良導致誤判的機會極少且可延長探針使用壽命。錫點尤其以PCB 光板制作時的噴錫點最佳。PCB 裸銅測點,高溫后已氧化,且其硬度高,所以探針接觸電阻變化而致測試誤判率很高。如果裸銅測點在SMT 時加上錫膏再經回流焊固化為錫點,雖可大幅改善,但因助焊劑或吃錫不完全的緣故,仍會出現較多的接觸誤判。
上傳時間: 2014-01-14
上傳用戶:cylnpy
18-2. D/A轉換器基本知識18-3. 光導智能小車硬件實現18-4. ADC0832基本應用方法18-5. 光導智能小車軟件實現A/D轉換器的主要技術指標分辨率 使輸出數字量變化一個相鄰數碼所需輸入模擬電壓的變化量。常 用二進制的位數表示。 例如:12位ADC的分辨率就是12位,一個10V滿刻度的12位ADC能分辨 輸入電壓變化最小是: 10V×1/212=2.4mV量化誤差 ADC把模擬量變為數字量,用數字量近似表示模擬量,這個過程稱為量化。量化誤差是ADC的有限位數對模擬量進行量化而引起的誤差。A/D轉換器的主要技術指標偏移誤差 指輸入信號為零時,輸出信號不為零的值,所以有時又稱為零值誤差。滿刻度誤差 滿刻度誤差又稱為增益誤差。指滿刻度輸出數碼所對應的實際輸入電壓與理想輸入電壓之差。線性度 線性度有時又稱為非線性度,指轉換器實際的轉換特性與理想直線的最大偏差。A/D轉換器的主要技術指標絕對精度 在一個轉換器中,任何數碼所對應的實際模擬量輸入與理論模擬輸入之差的最大值,稱為絕對精度。對于ADC而言,可以在每一個階梯的水平中點進行測量,它包括了所有的誤差。轉換速率 指ADC能夠重復進行數據轉換的速度,即每秒轉換的次數。而完成一次A/D轉換所需的時間(包括穩定時間),則是轉換速率的倒數。
上傳時間: 2013-11-25
上傳用戶:banlangen
《現代微機原理與接口技術》實驗指導書 TPC-H實驗臺C語言版 1.實驗臺結構1)I / O 地址譯碼電路如上圖1所示地址空間280H~2BFH共分8條譯碼輸出線:Y0~Y7 其地址分別是280H~287H、288H~28FH、290H~297H、298H~29FH、2A0H~2A7H、2A8H~2AFH、2B0H~2B7H、2B8H~2BFH,8根譯碼輸出線在實驗臺I/O地址處分別由自鎖緊插孔引出供實驗選用(見圖2)。 2) 總線插孔采用“自鎖緊”插座在標有“總線”區引出數據總線D7~D0;地址總線A9~A0,讀、寫信號IOR、IOW;中斷請求信號IRQ ;DMA請求信號DRQ1;DMA響應信號DACK1 及AEN信號,供學生搭試各種接口實驗電路使用。3) 時鐘電路如圖-3所示可以輸出1MHZ 2MHZ兩種信號供A/D轉換器定時器/計數器串行接口實驗使用。圖34) 邏輯電平開關電路如圖-4所示實驗臺右下方設有8個開關K7~K0,開關撥到“1”位置時開關斷開,輸出高電平。向下打到“0”位置時開關接通,輸出低電平。電路中串接了保護電阻使接口電路不直接同+5V 、GND相連,可有效地防止因誤操作誤編程損壞集成電路現象。圖 4 圖 55) L E D 顯示電路如圖-5所示實驗臺上設有8個發光二極管及相關驅動電路(輸入端L7~L0),當輸入信號為“1” 時發光,為“0”時滅6) 七段數碼管顯示電路如圖-6所示實驗臺上設有兩個共陰極七段數碼管及驅動電路,段碼為同相驅動器,位碼為反相驅動器。從段碼與位碼的驅動器輸入端(段碼輸入端a、b、c、d、e、f、g、dp,位碼輸入端s1、 s2)輸入不同的代碼即可顯示不同數字或符號。
上傳時間: 2013-11-22
上傳用戶:sssnaxie
一個完整的微機系統是由硬件和軟件共同構成的。微機系統的硬件有CPU、存儲器和I/O口,外設組成。CPU與存儲器之間的信息交換比較簡單,而CPU與外設之間進行信息交換之前必須確定外設是否準備好,即選擇I/O傳送方式。I/O傳送方式有4種:無條件、查詢、中斷和DMA。本章學習中斷傳送方式的有關內容。 4.1 中斷概述 4.2 MCS-51中斷系統 1、中斷的定義: 中斷是指如下過程:CPU與外設同時工作,CPU執行主程序,外設做準備工作,當外設準備好時向CPU發中斷請求信號,若條件滿足,則CPU終止主程序的執行,轉去執行中斷服務程序,在中斷服務程序中CPU與外設交換信息,待中斷服務程序執行完后,CPU再返回剛才終止的主程序繼續執行。 2、中斷系統的定義:中斷系統是指為了實現中斷傳送過程在CPU內外設置的硬件和有關中斷的指令。3、中斷源:⑴中斷源的定義:中斷源是指引起中斷請求的來源。⑵中斷源的分類: ①軟中斷和 ②硬中斷4、中斷處理的全過程 中斷處理的全過程分成3個階段:中斷請求、中斷響應和中斷服務。5、多重中斷與中斷優先級 ⑴ 當系統中有多個設備提出中斷請求時,多個外設的中請信號要通過門電路送到CPU的中請輸入端,使CPU能收到多個外設提出的中請。 ⑵ CPU在收到多個外設的請求后,按中斷處理原則處理中斷。 ⑶ 確定優先級的方法解決優先級的問題一般可有三種方法:軟件查詢法、簡單硬件方法及專用硬件方法(采用可編程的中斷控制器芯片,如Intel8259A)。
標簽: 中斷技術
上傳時間: 2013-10-12
上傳用戶:ysjing
本文介紹使用AT89C2051 制作的一種發音電路, 各種聲音通過編程實現, 靈活方便。原理圖如圖1 所示。圖1 發音電路原理該電路利用方波諧波成份豐富的特點,編程采用計時器延遲法發音, 即每個音的半周期計時中斷一次, 而使輸出P110 (或其他IöO 口) 反相, 重復執行產生某種頻率的信號。例如: 中音DO 的頻率為523Hz, 其周期為1912Ls, 半周期為956Ls, 若初始P110= 1, 經956Ls 后應使P110= 0, 再經956Ls 恢復P110= 1, 這樣就可發出中音DO。
上傳時間: 2013-10-11
上傳用戶:Altman
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
C51單片機是我們生活中最常用的系列,MCS-51系列單片機有4個并行口(P0,P1,P2,P3口),但對一個稍微復雜的應用系統來說,真正可供用戶使用的并行口,只有P1口可用,況且常常因擴展I2C和SPI的器件需占用某些P1口,迫使用戶不得不擴展并行口以滿足實際的需要。習慣上,常用的并行口接口芯片有8255、8155,這兩種芯片功能比較齊全,可以使用在相對比較復雜的系統中,但如是對一般的系統而言,這些功能往往閑置不用。那么就可以選用一些本來閑置不用的口線作為選通信號來進行并行口的擴展,這樣就能充分利用單片機有限的I/O資源,在本設計中是將P1口擴展成一個或幾個8位并行口,在每一個八位口上接入8個發光二極管做為輸出,二極管是做開關量來使用的,在這里設計了跑馬燈和流水燈程序,做到對開關量的開斷控制;配合開關量的控制筆者設計了一個共陽LED數碼管,用來顯示當前發光二極管發亮的序號,做到更加直觀的雙重控制效果,然后再將P0口通過D/A轉換器和一放大器輸出一個模擬信號,其結果可以通過示波器看出。這樣整個系統即有了數字信號輸出和模擬信號輸出,也有數碼管顯示功能,實用性能大提高了。2、 基于89C51的系統硬件設計2.1 并行口的擴展的電路設計 眾所周知,C51系列的單片機都有四個I/O口(P0、P1、P2、P3),那么AT89C51也不例外,但我們通常僅僅使用P1口作為并行口,而令其余口(P2、P3)處于閑置狀態,所以這次設計,我們就是使用閑置不用的P3口做為選能信號線來將P1口進行并行口擴展。 (1) 種方式的并行口擴展優點 連線簡單; 不占用存儲器空間; (2) 編程也方便靈活。但也有很大的缺點 并行口擴展能力有限,(如使用74LS573(74LS373)且不進行驅動處理,則最多可擴展4個同樣類型的并行輸出端口,當然還需要與之對應的四個選通信號。) 如擴展較多,選通信號占用并行口位數太多,例如欲擴展8個并行輸出端口,則需要8個選能信號,此時,僅選能信號就占用了一個8位并行口,這對在I/O端口線有限的單片機系統中,如此浪費資源的現象是不能容忍的。在本次的設計中,采用芯片74HC573(帶三態輸出的八進制透明D型鎖存器)對P1口進行了一個8位并行口的擴展,選通信號選用P3口的P3.3引腳。原理圖如圖1所示:
上傳時間: 2013-11-18
上傳用戶:dbs012280