新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于mega16微控制器的溫度采集系統

        基于mega16微控制器的溫度采集系統

        作者: 時間:2016-10-15 來源:網絡 收藏

        溫度是表征物體冷熱程度的物理量,是工業生產中常見和最基本的參數之一,DS18B20是美國Dalls公司推出的單總線,接口簡單,集成度高,精度高,且不用AD轉換可以直接將溫度轉化成串行數字信號供微處理器接收處理。與傳統的溫度傳感器相比具有無可比擬的優點。利用DS18B20溫度傳感器構成的系統電路非常簡單,易于實現。

        本文引用地址:http://www.104case.com/article/201610/307408.htm

        1 溫度測量系統的硬件設計方案

        1.1 系統的硬件結構

        系統的硬件結構如圖1所示,單片機mega16作為整個系統的控制核心,由溫度傳感器DS18B20、鍵盤和LCD顯示器、電源電路及時鐘電路組成。

        基于mega16微控制器的溫度采集系統

        1.2 ATmga16功能簡介

        是1997年由ATMEL公司研發出的增強型內置Flash的RISC精簡指令集高速8位單片機。AVR的單片機可以廣泛應用于計算機外部設備、工業實時控制、儀器儀表、通訊設備、家用電器等各個領域。與51單片機、PIC單片機等其他類型相比具有一系列的優點:采用RISC精簡指令集,一個時鐘周期執行一條指令,在相同的系統時鐘下AVR運行速度最快;芯片內部的Flash、EEP-ROM、SRAM容量較大;所有型號的Flash、EEPROM都可以反復燒寫、全部支持在線編程燒寫(ISP);多種頻率的內部RC振蕩器、上電自動復位、看門狗、啟動延時等功能,零外圍電路也可以工作;每個IO口都是用推挽驅動的方式輸出高、低電平,驅動能力強;內部資源豐富,一般都集成ADC;PWM;SPI、USART、TW I、I2C通信口;豐富的中斷源等。目前支持編譯器的語言主要有匯編語言、C語言、BASIC語言等。其中C編譯器主要有CodeVisionAVR、AVRGCC、IAR、ICCAVR等,C語言編譯器由于它具有功能強大、運用靈活、代碼小、運行速度快等先天性的優點,使得它在專業程序設計上具有不可代替的地位。

        ATmega16是基于增強的AVR RISC結構的低功耗8位CMOS微控制器。由于其先進的指令集以及單時鐘周期指令執行時間,ATmega16的數據吞吐率高達1 MIPS/MHz,從而可以減緩系統在功耗和處理速度之間的矛盾。ATmega16有如下特點:

        高性能、低功耗的8位AVR微處理器

        ·先進的RlISC結構

        -131條指令

        -大多數指令執行時間為單個時鐘周期

        -32個8位通用工作寄存器

        -工作于16 MHz時性能高達16 MIPS

        -只需兩個時鐘周期的硬件乘法器

        ·非易失性程序和數據存儲器

        -16 k字節的系統內可編程Flash,擦寫壽命:10,000次-具有獨立鎖定位的可選Boot代碼區,通過片上Boot程序實現系統內編程,真正的同時讀寫操作

        -512字節的EEPROM,擦寫壽命:100,000次

        -1 k字節的片內SRAM-可以對鎖定位進行編程以實現用戶程序的加密

        -JTAG接口(與IEEE 1149.1標準兼容)

        -符合JTAG標準的邊界掃描功能

        -支持擴展的片內調試功能

        -通過JTAG接口實現對Flash、EEPROM、熔絲位和鎖定位的編程

        ·外設特點

        兩個具有獨立預分頻器和比較器功能的8位定時器/計數器,一個具有預分頻器、比較功能和捕捉功能的16位定時器/計數器;具有獨立振蕩器的實時計數器RTC;四通道PWM-8路10位ADC,8個單端通道,TQFP封裝的7個差分通道,2個具有可編程增益(1x,10x,或200x)的差分通道;面向字節的兩線接口;一個可編程的串行USART;可工作于主機/從機模式的SPI串行接口;具有獨立片內振蕩器的可編程看門狗定時器;片內模擬比較器。

        1.3 電源電路

        電源電路中采用三端穩壓器7805為核心控制器,交流電通過變壓器調壓、橋式整流、濾波后接入三端穩壓集成器7805,可以直接得到直流電源5 V,作為mega116的供電電源。

        基于mega16微控制器的溫度采集系統

        1.4 溫度數據采集模塊

        溫度數據采集硬件電路設計如圖3所示,由mega116微控制器及其外圍電路模塊:時鐘電路、復位電路、JPAG下載模式電路等構成了單片機最小開發系統。

        基于mega16微控制器的溫度采集系統

        時鐘電路采用16M晶振產生時鐘脈沖信號,溫度傳感器采用美國Dalls公司推出的單總線DS18B20,DS18B20的工作特點是:采用3.0~5.5 V單電源供電;測溫范圍為-55~+125℃,溫度分辨率可達0.5℃;DS18B20內部由64位閃速ROM、觸發器TH和TL、高速暫存存儲器、配置寄存器和8位CRC發生器組成。DS18B20與系統之間的操作存在一個通訊協議,必須按照初始化DS18B20(發復位脈沖→發ROM功能命令→發存儲器操作命令→處理數據)進行。

        1. 5 JTAG下載模式電路

        JTAG下載模式電路共有4個引腳,分別為:下載控制信號(TMS)引腳、時鐘同步信號引腳(TCK)、數據輸入引腳(TDI)、數據輸出引腳(TDO)。其中JTAG下載模式下載速度相對較快,可以進行在線調試,但是JTAG下載模式不具備存儲器,當掉電后下載數據將會丟失。

        1.6 按鍵控制與顯示電路

        如要使用CVAVR內部提供的LCD函數,硬件連接必須按以下要求實現。1)與LCD的連接必須使用AVR的同一個8位的I/O端口,如PC(或者PA、PB、PD);2)LCD采用4位并行傳輸方式(即僅用DB4-DB7,4位數據總線);3)具體連接定義為(以PC口為例):4根數據線PC4-DB4,PC5-DB5,PC6-DB6,PC7-DB7,3根控制線PC0-RS,PC1-R/W,PC2-E。

        LCD的硬件接口電路連接圖如圖4所示。

        基于mega16微控制器的溫度采集系統

        2 系統軟件設計

        本次設計采用的CodeVision AVR C語言編程工具,是Atmel AVR系列微控制器而設計的一款C編譯工具,可以在WIN2000、XP、Vista操作系統下運行。DS18B20與系統之間按照初始化DS18B20(發復位脈沖→發ROM功能命令→發存儲器操作命令→處理數據)的通信協議進行。系統的程序流程圖如圖5所示。

        基于mega16微控制器的溫度采集系統

        3 部分功能模塊源程序

        基于mega16微控制器的溫度采集系統
        基于mega16微控制器的溫度采集系統
        基于mega16微控制器的溫度采集系統

        該簡單的LCD顯示的演示程序全部調用的是CVAVR中的LCD函數,程序運行后,在LCD的第一行固定顯示字符-It’s lcd.c ‖,在第二行滾動顯示-Hello World! This is a

        LCD display demo.‖



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 万安县| 寿宁县| 鸡泽县| 习水县| 开远市| 洪湖市| 盱眙县| 富顺县| 隆尧县| 淮阳县| 达州市| 磴口县| 水城县| 墨玉县| 凤阳县| 唐河县| 南澳县| 甘孜县| 崇阳县| 云安县| 江永县| 灌南县| 锡林郭勒盟| 东乡族自治县| 巴彦县| 金昌市| 大邑县| 潜江市| 锡林郭勒盟| 高清| 彭州市| 晋城| 巫溪县| 右玉县| 花垣县| 留坝县| 遵化市| 鹤壁市| 罗定市| 蕉岭县| 南川市|