本文對模糊溫度控制器進行了研究,介紹了模糊溫度控制器的硬件和軟件設計。此控制器主控部分以Microchip公司的8位單片機PIC18F252為控制核心,采集測溫電路輸出電壓,實現模糊控制算法等。此單片機內部集成了AD轉換模塊,可以直接對信號進行采集。測溫電路以Pt100鉑電阻傳感器為基礎,并對其進行了線性補償。鍵盤、LED顯示部分以美國ATMEL公司生產的低價格,高性能的CMOS 8位單片機AT89C52為控制核心。兩個單片機使用串行通訊接口(USART)進行數據通訊。在軟件方面,以模糊控制為核心控制算法,實現恒溫控制功能,用C語言完成整個控制系統的軟件編程。
上傳時間: 2013-07-29
上傳用戶:璇珠官人
stm32 串口的中斷收發 內有詳細介紹-stm32 USART riq! riq! riq! riq! riq!
上傳時間: 2013-07-17
上傳用戶:embedtu
本書全面、系統地介紹了MCS-51系列單片機應用系統的各種實用接口技術及其配置。 內容包括:MCS-51系列單片機組成原理:應用系統擴展、開發與調試;鍵盤輸入接口的設計及調試;打印機和顯示器接口及設計實例;模擬輸入通道接口技術;A/D、D/A、接口技術及在控制系統中的應用設計;V/F轉換器接口技術、串行通訊接口技術以及其它與應用系統設計有關的實用技術等。 本書是為滿足廣大科技工作者從事單片機應用系統軟件、硬件設計的需要而編寫的,具有內容新穎、實用、全面的特色。所有的接口設計都包括詳細的設計步驟、硬件線路圖及故障分析,并附有測試程序清單。書中大部分接口軟、硬件設計實例都是作者多年來從事單片機應用和開發工作的經驗總結,實用性和工程性較強,尤其是對應用系統中必備的鍵盤、顯示器、打印機、A/D、D/A通訊接口設計、模擬信號處理及開發系統應用舉例甚多,目的是讓將要開始和正在從事單片機應用開發的科研人員根據自己的實際需要來選擇應用,一書在手即可基本完成單片機應用系統的開發工作。 本書主要面向從事單片機應用開發工作的廣大工程技術人員,也可作為大專院校有關專業的教材或教學參考書。 第一章MCS-51系列單片機組成原理 1.1概述 1.1.1單片機主流產品系列 1.1.2單片機芯片技術的發展概況 1.1.3單片機的應用領域 1.2MCS-51單片機硬件結構 1.2.1MCS-51單片機硬件結構的特點 1.2.2MCS-51單片機的引腳描述及片外總線結構 1.2.3MCS-51片內總體結構 1.2.4MCS-51單片機中央處理器及其振蕩器、時鐘電路和CPU時序 1.2.5MCS-51單片機的復位狀態及幾種復位電路設計 1.2.6存儲器、特殊功能寄存器及位地址空間 1.2.7輸入/輸出(I/O)口 1.3MCS-51單片機指令系統分析 1.3.1指令系統的尋址方式 1.3.2指令系統的使用要點 1.3.3指令系統分類總結 1.4串行接口與定時/計數器 1.4.1串行接口簡介 1.4.2定時器/計數器的結構 1.4.3定時器/計數器的四種工作模式 1.4.4定時器/計數器對輸入信號的要求 1.4.5定時器/計數器的編程和應用 1.5中斷系統 1.5.1中斷請求源 1.5.2中斷控制 1.5.3中斷的響應過程 1.5.4外部中斷的響應時間 1.5.5外部中斷方式的選擇 第二章MCS-51單片機系統擴展 2.1概述 2.2程序存貯器的擴展 2.2.1外部程序存貯器的擴展原理及時序 2.2.2地址鎖存器 2.2.3EPROM擴展電路 2.2.4EEPROM擴展電路 2.3外部數據存貯器的擴展 2.3.1外部數據存貯器的擴展方法及時序 2.3.2靜態RAM擴展 2.3.3動態RAM擴展 2.4外部I/O口的擴展 2.4.1I/O口擴展概述 2.4.2I/O口地址譯碼技術 2.4.38255A可編程并行I/O擴展接口 2.4.48155/8156可編程并行I/O擴展接口 2.4.58243并行I/O擴展接口 2.4.6用TTL芯片擴展I/O接口 2.4.7用串行口擴展I/O接口 2.4.8中斷系統擴展 第三章MCS-51單片機應用系統的開發 3.1單片機應用系統的設計 3.1.1設計前的準備工作 3.1.2應用系統的硬件設計 3.1.3應用系統的軟件設計 3.1.4應用系統的抗干擾設計 3.2單片機應用系統的開發 3.2.1仿真系統的功能 3.2.2開發手段的選擇 3.2.3應用系統的開發過程 3.3SICE—IV型單片機仿真器 3.3.1SICE-IV仿真器系統結構 3.3.2SICE-IV的仿真特性和軟件功能 3.3.3SICE-IV與主機和終端的連接使用方法 3.4KHK-ICE-51單片機仿真開發系統 3.4.1KHK—ICE-51仿真器系統結構 3.4.2仿真器系統功能特點 3.4.3KHK-ICE-51仿真系統的安裝及其使用 3.5單片機應用系統的調試 3.5.1應用系統聯機前的靜態調試 3.5.2外部數據存儲器RAM的測試 3.5.3程序存儲器的調試 3.5.4輸出功能模塊調試 3.5.5可編程I/O接口芯片的調試 3.5.6外部中斷和定時器中斷的調試 3.6用戶程序的編輯、匯編、調試、固化及運行 3.6.1源程序的編輯 3.6.2源程序的匯編 3.6.3用戶程序的調試 3.6.4用戶程序的固化 3.6.5用戶程序的運行 第四章鍵盤及其接口技術 4.1鍵盤輸入應解決的問題 4.1.1鍵盤輸入的特點 4.1.2按鍵的確認 4.1.3消除按鍵抖動的措施 4.2獨立式按鍵接口設計 4.3矩陣式鍵盤接口設計 4.3.1矩陣鍵盤工作原理 4.3.2按鍵的識別方法 4.3.3鍵盤的編碼 4.3.4鍵盤工作方式 4.3.5矩陣鍵盤接口實例及編程要點 4.3.6雙功能及多功能鍵設計 4.3.7鍵盤處理中的特殊問題一重鍵和連擊 4.48279鍵盤、顯示器接口芯片及應用 4.4.18279的組成和基本工作原理 4.4.28279管腳、引線及功能說明 4.4.38279編程 4.4.48279鍵盤接口實例 4.5功能開關及撥碼盤接口設計 第五章顯示器接口設計 5.1LED顯示器 5.1.1LED段顯示器結構與原理 5.1.2LED顯示器及顯示方式 5.1.3LED顯示器接口實例 5.1.4LED顯示器驅動技術 5.2單片機應用系統中典型鍵盤、顯示接口技術 5.2.1用8255和串行口擴展的鍵盤、顯示器電路 5.2.2由鎖存器組成的鍵盤、顯示器接口電路 5.2.3由8155構成的鍵盤、顯示器接口電路 5.2.4用8279組成的顯示器實例 5.3液晶顯示LCD 5.3.1LCD的基本結構及工作原理 5.3.2LCD的驅動方式 5.3.34位LCD靜態驅動芯片ICM7211系列簡介 5.3.4點陣式液晶顯示控制器HD61830介紹 5.3.5點陣式液晶顯示模塊介紹 5.4熒光管顯示 5.5LED大屏幕顯示器 第六章打印機接口設計 6.1打印機簡介 6.1.1打印機的基本知識 6.1.2打印機的電路構成 6.1.3打印機的接口信號 6.1.4打印機的打印命令 6.2TPμP-40A微打與單片機接口設計 6.2.1TPμP系列微型打印機簡介 6.2.2TPμP-40A打印功能及接口信號 6.2.3TPμP-40A工作方式及打印命令 6.2.48031與TPμP-40A的接口 6.2.5打印編程實例 6.3XLF微型打印機與單片機接口設計 6.3.1XLF微打簡介 6.3.2XLF微打接口信號及與8031接口設計 6.3.3XLF微打控制命令 6.3.4打印機編程 6.4標準寬行打印機與8031接口設計 6.4.1TH3070接口引腳信號及時序 6.4.2與8031的簡單接口 6.4.3通過打印機適配器完成8031與打印機的接口 6.4.4對打印機的編程 第七章模擬輸入通道接口技術 7.1傳感器 7.1.1傳感器的分類 7.1.2溫度傳感器 7.1.3光電傳感器 7.1.4濕度傳感器 7.1.5其他傳感器 7.2模擬信號放大技術 7.2.1基本放大器電路 7.2.2集成運算放大器 7.2.3常用運算放大器及應用舉例 7.2.4測量放大器 7.2.5程控增益放大器 7.2.6隔離放大器 7.3多通道模擬信號輸入技術 7.3.1多路開關 7.3.2常用多路開關 7.3.3模擬多路開關 7.3.4常用模擬多路開關 7.3.5多路模擬開關應用舉例 7.3.6多路開關的選用 7.4采樣/保持電路設計 7.4.1采樣/保持原理 7.4.2集成采樣/保持器 7.4.3常用集成采樣/保持器 7.4.4采樣保持器的應用舉例 7.5有源濾波器的設計 7.5.1濾波器分類 7.5.2有源濾波器的設計 7.5.3常用有源濾波器設計舉例 7.5.4集成有源濾波器 第八章D/A轉換器與MCS-51單片機的接口設計與實踐 8.1D/A轉換器的基本原理及主要技術指標 8.1.1D/A轉換器的基本原理與分類 8.1.2D/A轉換器的主要技術指標 8.2D/A轉換器件選擇指南 8.2.1集成D/A轉換芯片介紹 8.2.2D/A轉換器的選擇要點及選擇指南表 8.2.3D/A轉換器接口設計的幾點實用技術 8.38位D/A轉換器DAC080/0831/0832與MCS-51單片機的接口設計 8.3.1DAC0830/0831/0832的應用特性與引腳功能 8.3.2DAC0830/0831/0832與8031單片機的接口設計 8.3.3DAC0830/0831/0832的調試說明 8.3.4DAC0830/0831/0832應用舉例 8.48位D/A轉換器AD558與MCS-51單片機的接口設計 8.4.1AD558的應用特性與引腳功能 8.4.2AD558與8031單片機的接口及調試說明 8.4.38位D/A轉換器DAC0800系列與8031單片機的接口 8.510位D/A轉換器AD7522與MCS-51的硬件接口設計 8.5.1AD7522的應用特性及引腳功能 8.5.2AD7522與8031單片機的接口設計 8.610位D/A轉換器AD7520/7530/7533與MCS一51單片機的接口設計 8.6.1AD7520/7530/7533的應用特性與引腳功能 8.6.2AD7520系列與8031單片機的接口 8.6.3DAC1020/DAC1220/AD7521系列D/A轉換器接口設計 8.712位D/A轉換器DAC1208/1209/1210與MCS-51單片機的接口設計 8.7.1DAC1208/1209/1210的內部結構與引腳功能 8.7.2DAC1208/1209/1210與8031單片機的接口設計 8.7.312位D/A轉換器DAC1230/1231/1232的應用設計說明 8.7.412位D/A轉換器AD7542與8031單片機的接口設計 8.812位串行DAC-AD7543與MCS-51單片機的接口設計 8.8.1AD7543的應用特性與引腳功能 8.8.2AD7543與8031單片機的接口設計 8.914位D/A轉換器AD75335與MCS-51單片機的接口設計 8.9.1AD8635的內部結構與引腳功能 8.9.2AD7535與8031單片機的接口設計 8.1016位D/A轉換器AD1147/1148與MCS-51單片機的接口設計 8.10.1AD1147/AD1148的內部結構及引腳功能 8.10.2AD1147/AD1148與8031單片機的接口設計 8.10.3AD1147/AD1148接口電路的應用調試說明 8.10.416位D/A轉換器AD1145與8031單片機的接口設計 第九章A/D轉換器與MCS-51單片機的接口設計與實踐 9.1A/D轉換器的基本原理及主要技術指標 9.1.1A/D轉換器的基本原理與分類 9.1.2A/D轉換器的主要技術指標 9.2面對課題如何選擇A/D轉換器件 9.2.1常用A/D轉換器簡介 9.2.2A/D轉換器的選擇要點及應用設計的幾點實用技術 9.38位D/A轉換器ADC0801/0802/0803/0804/0805與MCS-51單片機的接口設計 9.3.1ADC0801~ADC0805芯片的引腳功能及應用特性 9.3.2ADC0801~ADC0805與8031單片機的接口設計 9.48路8位A/D轉換器ADC0808/0809與MCS一51單片機的接口設計 9.4.1ADC0808/0809的內部結構及引腳功能 9.4.2ADC0808/0809與8031單片機的接口設計 9.4.3接口電路設計中的幾點注意事項 9.4.416路8位A/D轉換器ADC0816/0817與MCS-51單片機的接口設計 9.510位A/D轉換器AD571與MCS-51單片機的接口設計 9.5.1AD571芯片的引腳功能及應用特性 9.5.2AD571與8031單片機的接口 9.5.38位A/D轉換器AD570與8031單片機的硬件接口 9.612位A/D轉換器ADC1210/1211與MCS-51單片機的接口設計 9.6.1ADC1210/1211的引腳功能與應用特性 9.6.2ADC1210/1211與8031單片機的硬件接口 9.6.3硬件接口電路的設計要點及幾點說明 9.712位A/D轉換器AD574A/1374/1674A與MCS-51單片機的接口設計 9.7.1AD574A的內部結構與引腳功能 9.7.2AD574A的應用特性及校準 9.7.3AD574A與8031單片機的硬件接口設計 9.7.4AD574A的應用調試說明 9.7.5AD674A/AD1674與8031單片機的接口設計 9.8高速12位A/D轉換器AD578/AD678/AD1678與MCS—51單片機的接口設計 9.8.1AD578的應用特性與引腳功能 9.8.2AD578高速A/D轉換器與8031單片機的接口設計 9.8.3AD578高速A/D轉換器的應用調試說明 9.8.4AD678/AD1678采樣A/D轉換器與8031單片機的接口設計 9.914位A/D轉換器AD679/1679與MCS-51單片機的接口設計 9.9.1AD679/AD1679的應用特性及引腳功能 9.9.2AD679/1679與8031單片機的接口設計 9.9.3AD679/1679的調試說明 9.1016位ADC-ADC1143與MCS-51單片機的接口設計 9.10.1ADC1143的應用特性及引腳功能 9.10.2ADC1143與8031單片機的接口設計 9.113位半積分A/D轉換器5G14433與MCS-51單片機的接口設計 9.11.15G14433的內部結構及引腳功能 9.11.25G14433的外部電路連接與元件參數選擇 9.11.35G14433與8031單片機的接口設計 9.11.45G14433的應用舉例 9.124位半積分A/D轉換器ICL7135與MCS—51單片機的接口設計 9.12.1ICL7135的內部結構及芯片引腳功能 9.12.2ICL7135的外部電路連接與元件參數選擇 9.12.3ICL7135與8031單片機的硬件接口設計 9.124ICL7135的應用舉例 9.1312位雙積分A/D轉換器ICL7109與MCS—51單片機的接口設計 9.13.1ICL7109的內部結構與芯片引腳功能 9.13.2ICL7109的外部電路連接與元件參數選擇 9.13.3ICL7109與8031單片機的硬件接口設計 9.1416位積分型ADC一ICL7104與MCS-51單片機的接口設計 9.14.1ICL7104的主要應用特性及引腳功能 9.14.2ICL7104與8031單片機的接口設計 9.14.3其它積分型A/D轉換器簡介 第十章V/F轉換器接口技術 10.1V/F轉換的特點及應用環境 10.2V/F轉換原理及用V/F轉換器實現A/D轉換的方法 10.2.1V/F轉換原理 10.2.2用V/F轉換器實現A/D轉換的方法 10.3常用V/F轉換器簡介 10.3.1VFC32 10.3.2LMX31系列V/F轉換器 10.3.3AD650 10.3.4AD651 10.4V/F轉換應用系統中的通道結構 10.5LM331應用實例 10.5.1線路原理 10.5.2軟件設計 10.6AD650應用實例 10.6.1AD650外圍電路設計 10.6.2定時/計數器(8253—5簡介) 10.6.3線路原理 10.6.4軟件設計 第十一章串行通訊接口技術 11.1串行通訊基礎 11.1.1異步通訊和同步通訊 11.1.2波特率和接收/發送時鐘 11.1.3單工、半雙工、全雙工通訊方式 11.14信號的調制與解調 11.1.5通訊數據的差錯檢測和校正 11.1.6串行通訊接口電路UART、USRT和USART 11.2串行通訊總線標準及其接口 11.2.1串行通訊接口 11.2.2RS-232C接口 11.2.3RS-449、RS-422、RS-423及RS485 11.2.420mA電流環路串行接口 11.3MCS-51單片機串行接口 11.3.1串行口的結構 11.3.2串行接口的工作方式 11.3.3串行通訊中波特率設置 11.4MCS-51單片機串行接口通訊技術 11.4.1單片機雙機通訊技術 11.4.2單片機多機通訊技術 11.5IBMPC系列機與單片機的通訊技術 11.5.1異步通訊適配器 11.5.2IBM-PC機與8031雙機通訊技術 11.5.3IBM—PC機與8031多機通訊技術 11.6MCS-51單片機串行接口的擴展 11.6.1Intel8251A可編程通訊接口 11.6.2擴展多路串行口的硬件設計 11.6.3通訊軟件設計 第十二章應用系統設計中的實用技術 12.1MCS-51單片機低功耗系統設計 12.1.1CHMOS型單片機80C31/80C51/87C51的組成與使用要點 12.1.2CHMOS型單片機的空閑、掉電工作方式 12.1.3CHMOS型單片機的I/O接口及應用系統實例 12.1.4HMOS型單片機的節電運行方式 12.2邏輯電平接口技術 12.2.1集電極開路門輸出接口 12.2.2TTL、HTL、ECL、CMOS電平轉換接口 12.3電壓/電流轉換 12.3.1電壓/0~10mA轉換 12.3.2電壓1~5V/4~20mA轉換 12.3.30~10mA/0~5V轉換 12.344~20mA/0~5V轉換 12.3.5集成V/I轉換電路 12.4開關量輸出接口技術 12.4.1輸出接口隔離技術 12.4.2低壓開關量信號輸出技術 12.4.3繼電器輸出接口技術 12.4.4可控硅(晶閘管)輸出接口技術 12.4.5固態繼電器輸出接口 12.4.6集成功率電子開關輸出接口 12.5集成穩壓電路 12.5.1電源隔離技術 12.5.2三端集成穩壓器 12.5.3高精度電壓基準 12.6量程自動轉換技術 12.6.1自動轉換量程的硬件電路 12.6.2自動轉換量程的軟件設計 附錄AMCS-51單片機指令速查表 附錄B常用EPROM固化電壓參考表 參考文獻
上傳時間: 2013-10-15
上傳用戶:himbly
學習交流
上傳時間: 2014-12-25
上傳用戶:stvnash
常用PIC系列產品特性一覽表 器件 存儲器 類型 字數 EEPROM 數據 存儲器 RAM I/O 引腳數 ADC (-Bit) 比較 器 運 放 定時器/WDT 串行接口 最高 速度 MHz 封裝 PDIP /SOIC ICSP CCP / ECCP 輸出電流 (per I/O) 振蕩器 頻率 (MHz) 參考 電壓 VREF LCD PWM 堆棧 深度 High Voltage Wakeup On Change PIC16C432 OTP 2048x14 128 12 2 1-8bit/1-WDT 20 20 √ 25 mA 4 0 0 PIC16C433 OTP 2048x14 128 6 4/8 1-8bit/1-WDT 10 18 √ 25 mA 0 0 PIC16C505 OTP 1024x12 72 12 1-8bit/1-WDT 20 14 √ 25 mA 4 0 0 PIC16C54 OTP 512x12 25 12 1-8bit/1-WDT 20 18/20 20 mA 0 0 PIC16C54A OTP 512x12 25 12 1-8bit/1-WDT 20 18/20 20 mA 0 0 PIC16C54C OTP 512x12 25 12 1-8bit/1-WDT 40 18/20 20 mA 0 0 PIC16C55 OTP 512x12 24 20 1-8bit/1-WDT 20 28 20 mA 0 0 PIC16C554 OTP 512x14 80 13 1-8bit/1-WDT 20 18/20 √ 25 mA 0 0 PIC16C558 OTP 2048x14 128 13 1-8bit/1-WDT 20 18/20 √ 25 mA 0 0 PIC16C55A OTP 512x12 24 20 1-8bit/1-WDT 40 28 20 mA 0 0 PIC16C56 OTP 1024x12 25 12 1-8bit/1-WDT 20 18/20 20 mA 0 0 PIC16C56A OTP 1024x12 25 12 1-8bit/1-WDT 40 18/20 20 mA 0 0 PIC16C57 OTP 2048x12 72 20 1-8bit/1-WDT 20 28 20 mA 0 0 PIC16C57C OTP 2048x12 72 20 1-8bit/1-WDT 40 28 20 mA 0 0 PIC16C58B OTP 2048x12 73 12 1-8bit/1-WDT 40 18/20 20 mA 0 0 PIC16C620 OTP 512x14 80 13 2 1-8bit/1-WDT 20 18/20 √ 25 mA √ 0 0 PIC16C620A OTP 512x14 96 13 2 1-8bit/1-WDT 40 18/20 √ 25 mA √ 0 0 PIC16C621 OTP 1024x14 80 13 2 1-8bit/1-WDT 20 18/20 √ 25 mA √ 0 0 PIC16C621A OTP 1024x14 96 13 2 1-8bit/1-WDT 40 18/20 √ 25 mA √ 0 0 PIC16C622 OTP 2048x14 128 13 2 1-8bit/1-WDT 20 18/20 √ 25 mA √ 0 0 PIC16C622A OTP 2048x14 128 13 2 1-8bit/1-WDT 40 18/20/40 √ 25 mA √ 0 0 PIC16C62A OTP 2048x14 128 22 2-8bit/1-16bit/1-WDT I²C/ SPI 20 28/ √ 1 25 mA 1 0 0 PIC16C62B OTP 2048x14 128 22 2-8bit/1-16bit/1-WDT I²C /SPI 20 28 √ 1 25 mA 1 0 0 PIC16C63 OTP 4096x14 192 22 2-8bit/1-16bit/1-WDT USART/I²C /SPI 20 28 √ 2 25 mA 2 0 0 PIC16C63A OTP 4096x14 192 22 2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 28 √ 2 25 mA 2 0 0 PIC16C642 OTP 4096x14 176 22 2 1-8bit/1-WDT 20 28 √ 25 mA √ 0 0 PIC16C64A OTP 2048x14 128 33 2-8bit/1-16bit/1-WDT I²C /SPI 20 40/44 √ 1 25 mA 1 0 0 PIC16C65A OTP 4096x14 192 33 2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 40/44 √ 2 25 mA 2 0 0 PIC16C65B OTP 4096x14 192 33 2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 40/44 √ 2 25 mA 2 0 0 PIC16C66 OTP 8192x14 368 22 2-8bit/1-16bit/1-WDT USART/I²C/SPI 20 28 √ 2 25 mA 2 0 0 PIC16C662 OTP 4096x14 176 33 2 1-8bit/1-WDT 20 40/44 √ 25 mA √ 0 0 PIC16C67 OTP 8192x14 368 33 2-8bit/1-16bit/1-WDT USART/I²C /SPI 20 40/44 √ 2 25 mA 2 0 0 PIC16C71 OTP 1024x14 36 13 4/8 1-8bit/1-WDT 20 18 √ 25 mA 0 0 PIC16C710 OTP 512x14 36 13 4/8 1-8bit/1-WDT 20 18/20 √ 25 mA 0 0 PIC16C711 OTP 1024x14 68 13 4/8 1-8bit/1-WDT 20 18/20 √ 25 mA
上傳時間: 2013-10-12
上傳用戶:xjy441694216
在16MHZ頻率下速度為16MIPS的8位RISC結構單片機,內含硬件乘法器。 支持JTAG端口仿真和編程,仿真效果比傳統仿真同更真實有效。 8通道10位AD轉換器,支持單端和雙端差分信號輸入,內帶增益可編程運算放大器。 16K字節的FLASH存貯器,支持ISP、IAP編程,使系統開發、生產、維護更容易。 多達1K字節的SRAM,32個通用寄存器,三個數據指針,使用C語言編程更容易。 512字節的EEPROM存貯器,可以在系統掉電時保存您的重要數據。 多達20個中斷源,每個中斷有獨立的中斷向量入口地址。 2個8位定時/計數器,1個16位定時/計數器,帶捕捉、比較功能,有四個通道的PWM。 硬件USART、SPI和基于字節處理的I2C接口。 杰出的電氣性能,超強的抗干擾能力。每個IO口可負載40mA的電流,總電流不超過200mA。 可選片內/片外RC振蕩、石英/陶瓷晶振、外部時鐘,更具備實時時鐘(RTC)功能;片內RC振蕩可達8MHZ,頻率可校調到1%精度;片外晶振振蕩幅度可調,以改善EMI性能。 內置模擬量比較器。 可以用熔絲開啟、帶獨立振蕩器的看門狗,看門狗溢出時間分8級可調。 內置上電復位電路和可編程低電壓檢測(BOD)復位電路。 六種睡眠模式,給你更低的功耗和更靈活的選擇。 ATMEGA16L工作電壓2.7V-5.5V,工作頻率0-8MHZ;ATMEGA16工作電壓4.5-5.5V,工作頻率0-16MHZ。 32個IO口,DIP40、TQFP44封裝。 與其它8位單片機相比,有更高的程序安全性,保護您的知識產權。
上傳時間: 2013-11-22
上傳用戶:wcl168881111111
STM32全系列處理器具有腳對腳、外設及軟件的高度兼容性。這給應用帶來很好的靈活性,易于將應用升級到不同存儲空間或不同封裝的平臺。STM32處理器的產品全系列兼容,使得項目之間的代碼重用和移植很方便。
上傳時間: 2013-11-05
上傳用戶:s藍莓汁
The bootloader is stored in the internal boot ROM memory (system memory) of STM32devices. It is programmed by ST during production. Its main task is to download theapplication program to the internal Flash memory through one of the available serialperipherals (USART, CAN, USB, etc.). A communication protocol is defined for each serialinterface, with a compatible command set and sequences
上傳時間: 2014-09-06
上傳用戶:417313137
MSP430是德州公司新開發的一類具有16位總線的帶FLASH的單片機,由于其性價比和集成度高,受到廣大技術開發人員的青睞.它采用16位的總線,外設和內存統一編址,尋址范圍可達64K,還可以外擴展存儲器.具有統一的中斷管理,具有豐富的片上外圍模塊,片內有精密硬件乘法器、兩個16位定時器、一個14路的12位的模數轉換器、一個看門狗、6路P口、兩路USART通信端口、一個比較器、一個DCO內部振蕩器和兩個外部時鐘,支持8M的時鐘.由于為FLASH型,則可以在線對單片機進行調試和下載,且JTAG口直接和FET(FLASHEMULATION TOOL)的相連,不須另外的仿真工具,方便實用,而且,可以在超低功耗模式下工作,對環境和人體的輻射小,測量結果為100mw左右的功耗(電流為14mA左右),可靠性能好,加強電干擾運行不受影響,適應工業級的運行環境,適合與做手柄之類的自動控制的設備.我們相信MSP430單片機將會在工程技術應用中得以廣泛應用,而且,它是通向DSP系列的橋梁,隨著自動控制的高速化和低功耗化,MSP430系列將會得到越來越多人的喜愛.通過兩過多月的畢業設計,我對MSP430有了初步了解,對內部的硬件資源和自身的匯編語法進行了實驗,并開發了一個應用板,并進行了調試.鑒于時間和能力有限,沒能對所有的應用一一實驗.
上傳時間: 2013-11-21
上傳用戶:asdkin
at91rm9200啟動過程教程 系統上電,檢測BMS,選擇系統的啟動方式,如果BMS為高電平,則系統從片內ROM啟動。AT91RM9200的ROM上電后被映射到了0x0和0x100000處,在這兩個地址處都可以訪問到ROM。由于9200的ROM中固化了一個BOOTLOAER程序。所以PC從0X0處開始執行這個BOOTLOAER(準確的說應該是一級BOOTLOADER)。這個BOOTLOER依次完成以下步驟: 1、PLL SETUP,設置PLLB產生48M時鐘頻率提供給USB DEVICE。同時DEBUG USART也被初始化為48M的時鐘頻率; 2、相應模式下的堆棧設置; 3、檢測主時鐘源(Main oscillator); 4、中斷控制器(AIC)的設置; 5、C 變量的初始化; 6、跳到主函數。 完成以上步驟后,我們可以認為BOOT過程結束,接下來的就是LOADER的過程,或者也可以認為是裝載二級BOOTLOER。AT91RM9200按照DATAFLASH、EEPROM、連接在外部總線上的8位并行FLASH的順序依次來找合法的BOOT程序。所謂合法的指的是在這些存儲設備的開始地址處連續的存放的32個字節,也就是8條指令必須是跳轉指令或者裝載PC的指令,其實這樣規定就是把這8條指令當作是異常向量表來處理。必須注意的是第6條指令要包含將要裝載的映像的大小。關于如何計算和寫這條指令可以參考用戶手冊。一旦合法的映像找到之后,則BOOT程序會把找到的映像搬到SRAM中去,所以映像的大小是非常有限的,不能超過16K-3K的大小。當BOOT程序完成了把合法的映像搬到SRAM的任務以后,接下來就進行存儲器的REMAP,經過REMAP之后,SRAM從映設前的0X200000地址處被映設到了0X0地址并且程序從0X0處開始執行。而ROM這時只能在0X100000這個地址處看到了。至此9200就算完成了一種形式的啟動過程。如果BOOT程序在以上所列的幾種存儲設備中找到合法的映像,則自動初始化DEBUG USART口和USB DEVICE口以準備從外部載入映像。對DEBUG口的初始化包括設置參數115200 8 N 1以及運行XMODEM協議。對USB DEVICE進行初始化以及運行DFU協議。現在用戶可以從外部(假定為PC平臺)載入你的映像了。在PC平臺下,以WIN2000為例,你可以用超級終端來完成這個功能,但是還是要注意你的映像的大小不能超過13K。一旦正確從外部裝載了映像,接下來的過程就是和前面一樣重映設然后執行映像了。我們上面講了BMS為高電平,AT91RM9200選擇從片內的ROM啟動的一個過程。如果BMS為低電平,則AT91RM9200會從片外的FLASH啟動,這時片外的FLASH的起始地址就是0X0了,接下來的過程和片內啟動的過程是一樣的,只不過這時就需要自己寫啟動代碼了,至于怎么寫,大致的內容和ROM的BOOT差不多,不同的硬件設計可能有不一樣的地方,但基本的都是一樣的。由于片外FLASH可以設計的大,所以這里編寫的BOOTLOADER可以一步到位,也就是說不用像片內啟動可能需要BOOT好幾級了,目前AT91RM9200上使用較多的bootloer是u-boot,這是一個開放源代碼的軟件,用戶可以自由下載并根據自己的應用配置。總的說來,筆者以為AT91RM9200的啟動過程比較簡單,ATMEL的服務也不錯,不但提供了片內啟動的功能,還提供了UBOOT可供下載。筆者寫了一個BOOTLODER從片外的FLASHA啟動,效果還可以。 uboot結構與使用uboot是一個龐大的公開源碼的軟件。他支持一些系列的arm體系,包含常見的外設的驅動,是一個功能強大的板極支持包。其代碼可以 http://sourceforge.net/projects/u-boot下載 在9200上,為了啟動uboot,還有兩個boot軟件包,分別是loader和boot。分別完成從sram和flash中的一級boot。其源碼可以從atmel的官方網站下載。 我們知道,當9200系統上電后,如果bms為高電平,則系統從片內rom啟動,這時rom中固化的boot程序初始化了debug口并向其發送'c',這時我們打開超級終端會看到ccccc...。這說明系統已經啟動,同時xmodem協議已經啟動,用戶可以通過超級終端下載用戶的bootloader。作為第一步,我們下載loader.bin.loader.bin將被下載到片內的sram中。這個loder完成的功能主要是初始化時鐘,sdram和xmodem協議,為下載和啟動uboot做準備。當下載了loader.bin后,超級終端會繼續打印:ccccc....。這時我們就可以下在uboot了。uboot將被下載到sdram中的一個地址后并把pc指針調到此處開始執行uboot。接著我們就可以在終端上看到uboot的shell啟動了,提示符uboot>,用戶可以uboot>help 看到命令列表和大概的功能。uboot的命令包含了對內存、flash、網絡、系統啟動等一些命令。 如果系統上電時bms為低電平,則系統從片外的flash啟動。為了從片外的flash啟動uboot,我們必須把boot.bin放到0x0地址出,使得從flash啟動后首先執行boot.bin,而要少些boot.bin,就要先完成上面我們講的那些步驟,首先開始從片內rom啟動uboot。然后再利用uboot的功能完成把boot.bin和uboot.gz燒寫到flash中的目的,假如我們已經啟動了uboot,可以這樣操作: uboot>protect off all uboot>erase all uboot>loadb 20000000 uboot>cp.b 20000000 10000000 5fff uboot>loadb 21000000 uboot>cp.b 210000000 10010000 ffff 然后系統復位,就可以看到系統先啟動boot,然后解壓縮uboot.gz,然后啟動uboot。注意,這里uboot必須壓縮成.gz文件,否則會出錯。 怎么編譯這三個源碼包呢,首先要建立一個arm的交叉編譯環境,關于如何建立,此處不予說明。建立好了以后,分別解壓源碼包,然后修改Makefile中的編譯器項目,正確填寫你的編譯器的所在路徑。 對loader和boot,直接make。對uboot,第一步:make_at91rm9200dk,第二步:make。這樣就會在當前目錄下分別生成*.bin文件,對于uboot.bin,我們還要壓縮成.gz文件。 也許有的人對loader和boot搞不清楚為什么要兩個,有什么區別嗎?首先有區別,boot主要完成從flash中啟動uboot的功能,他要對uboot的壓縮文件進行解壓,除此之外,他和loader并無大的區別,你可以把boot理解為在loader的基礎上加入了解壓縮.gz的功能而已。所以這兩個并無多大的本質不同,只是他們的使命不同而已。 特別說名的是這三個軟件包都是開放源碼的,所以用戶可以根據自己的系統的情況修改和配置以及裁減,打造屬于自己系統的bootloder。
上傳時間: 2013-10-27
上傳用戶:wsf950131