<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于ATmega162的智能儀器設計

電子工程師 ? 來源:網絡整理 ? 作者:佚名 ? 2018-02-15 22:33 ? 次閱讀

ATmega 162是ATMEL公司推出的一款基于AVRRISC的低功耗CMOS的8位單片機。ATmega 162通過在一個時鐘周期內執行一條指令,可以達到接近1 MIPS/MHz的性能,從而使得設汁人員可以在功耗和執行速度之間取得平衡。AVR核將32個通用工作寄存器和豐富的指令集連接在一起。所有的工作寄存器都與ALU算術邏輯單元直接相連,允許在一個時鐘周期內執行的單條指令,同時訪問兩個獨立的寄存器。這種結構提高了代碼效率,使AVR得到了比普通CISC單片機高將近10倍的性能。本文采用ATmega 162開發了鍵盤一液晶顯示器、無位置傳感器兩相直流無刷電機和異步串行通訊口實現數據的采集和發送3個系統。實驗證明,采用ATmega 162開發的這些系統性能可靠、成本較低、軟件設計靈活、硬件接口功能豐富,為今后系統升級創造了良好條件。

2 ATmega162的結構及特點

ATmega162具有35個可編程的I/O口線,有40腳PDIP,44腳TQFP及44腳MLF等多種封裝。4個8位雙向I/O口A,B,C,D,一個帶內部上拉電阻的3位雙向I/O口。每個端口都有對應的3個I/O端口寄存器,分別是數據寄存器PORTx、方向寄存器器DDRx和輸入引腳寄存器PINx.當DDxn寫入0時,對應的Pxn配置為輸入引腳,置PORTxn為1時,配置該引腳的內部上拉電阻有效。當DDxn為1時,對應的Pxn配置為輸出引腳,PORTxn中的數據為外部引腳的輸出電平,即為1,端口引腳被強制驅動為高,輸出高電平(輸出電流);清零PORTxn,端口引腳被強制拉低,輸出低電平(吸入電流)。在復位過程中,即使是在系統時鐘還未啟振的情況下,端口為三態口。還可以作為地址/數據復用口,提供ATmega162的許多特殊接口功能。C口提供JTAG接口的功能。在允許JTAG接口狀態下,引腳PC7(TDD,PC5(TMS)和PC4(TCK)的內部上拉電阻總是處于有效方式(包括復位時)。

ATmega162具有以下特點:16 kB的同時具有讀寫能力的在線編程FLASH;512 B E2PROM;1 kB SRAM存儲器;35個通用I/O口;1個外部存儲器接口;32個通用工作寄存器;1個具有邊界掃描功能的JTAG接口;支持在線編譯、編程以及仿真調試;支持對FLASH,E2PROM、芯片熔絲位和保密鎖定位的編程;4個具有比較模式的靈活的定時器/計數器,2個具有比較模式的帶預分頻器的8位定時器/計數器,2個帶預分頻器,具有比較和捕獲模式的16位定時器/計數器,具有獨立振蕩器的實時計數器;6個PWM通道;內外中斷源;上電復位和可編程的電壓檢測電路;內部可校準的RC振蕩器;2個可編程的UART接口;具有內部時鐘的可編程的看門狗定時器;SPI串行接口;BOOT區具有獨立的加密位,可通過片內的引導程序實現在系統編程,寫操作時真正可讀;全靜態操作;片內帶有執行時間為2個時鐘周期的硬件乘法器;以及5種可通過軟件選擇的節電模式。

ATmega 162采用了ATMEL的高密度非易失性內存技術生產,片內FLASH可以通過SPI接口+通編程器,或通過JTAG接口,或使用自引導BOOT程序進行編程和自編程。利用自引導BOOT程序,可以使芯片在工作過程中通過任一硬件串行通訊接口下載應用程序,并寫入到FLASH的應用程序區中(IAP)。在更新FLASH的應用程序區代碼時,處在FLASH的BOOT區中的自引導程序將繼續執行,實現了同時讀寫的功能。由于將增強的RISC8位CPU與在系統編程和在應用編程的FLASH存儲器集成在一個芯片內,ATmega 162成為功能強大的單片機,為多嵌入式控制應用提供了靈活而低成本的解決方案。

2.1 ATmega162與其他同類器件的比較

在控制領域使用最平凡的CPU無非就3種:51系列、AVR系列、PIC系列。而ATMEL公司新推出的90系列單片機內含高速閃存FLASH,是基于增強精簡指令RISC(Reduced Instruction Set CPU)結構的單片機,簡稱AVR單片機,該系列單片機在吸收PIC及8051單片機的優點的基礎上,做出了重大的改進。

由于本設計中的主CPU需要對溫度數據進行運算及轉換,因此一般的51系列CPU是很難勝任的,而且在圖形顯示中加入了星星閃動的動畫和LOADING的讀取數據的動畫,所以更是要求主CPU有極快的運算速度和程序的可復制性的優點。故經過多種方案的比較后,最后決定選用AVR系列中的ATmega162作為主CPU,同時ATmega162擁有2個串行通信口,完全可以滿足與計算機的通信。

2.2溫度檢測器件的比較

做溫度的檢測可以有很多種方法,比較常用的就是用一個A/D轉換器再接一個溫度傳感器,而我們慣用的A/D傳感器是0809(8路A/D轉換器),傳感器就可以根據自己的實際情況來選擇了,一般選擇的原則是要滿足測量溫度的范圍,精度和靈敏度。就本設計來說,需要測量的溫度范圍是室溫(0~100℃),精度可以是1℃,靈敏度1 s左右就可以了。所以并沒選用0809來做,而是在市面上選擇了一個常用來做環境溫度檢測用的集成芯片——DS18B20,封裝是TOP92的,使用單總線來傳輸數據。從成本的角度來看18B20一片是15元左右,比AD0809的價格便宜近一半,而且還可以省去購買傳感器的錢,當然是在可以滿足測量要求的前提下。

3 ATmega162的設計應用

根據設計任務要求,本設計使用AVR單片機中的ATmega162作為主控制CPU,使用89C2051作為輔助CPU來采集數字溫度傳感器DS18B20傳送出來的溫度值,并通過8位端口的連接,傳送溫度值給ATmega162,從而實現多路溫度值的采集。再通過ATmega162運算處理,實現多路溫度的數字顯示,同時還可以顯示其相應的溫度柱狀圖。

ATmega162可以在線仿真和在線固化,當需要在線仿真時應把仿真器的TCK,TDO,TMS,TDI腳分別上拉4.7 kΩ的電阻后和ATmega162對應的引腳連接起來。再把仿真器的NSRST與ATmega162的RST連接,仿真器的VTRES和ATmega162的VCC連接,并把仿真器和ATmega162共地。當程序在線仿真時,其程序已經自動固化到CPU中了,這樣就避免了像89C51那樣出現固化失敗的問題,系統框圖如圖1所示。


圖1 系統框圖


3.1 ATmega162與鍵盤及液晶顯示器的設計

本設計中ATmega162采用的是3.686 4 MHz外接晶振。復位方式選用的是上電復位,AVR有3種復位方式(上電復位、外部復位、看門狗復位),因為考慮到工作電壓不穩定的因素,采用上電復位其復位電路可以確保只有當VCC達到一個安全電平時,器件才能開始工作。

鍵盤是各種CPU不可缺少的輸入工具,通過他可以輸入程序和數據,從而實現人機對話。鍵盤的按鍵排成3×4的矩陣形式,I/O口線PC1~PC3為輸入(設置為0),作為鍵盤的列掃描線;PC4~PC7為輸出(設置為1),作為鍵盤的行掃描線,并上拉電阻。當判別有鍵按下時,延時去除鍵的機械抖動,再次判別閉合鍵的位置,若確實有鍵按下,計算鍵值并返回。

ATmega162的PA口的8位和液晶屏的數據端相連,把ATmega162的DDRA設置為0xFF,這樣PA口只能為輸出。而PB口是對液晶屏的控制,其PB0與RS相連,PB1與RW相連,PB2與復位端RST相連,PB3與使能端E相連作使能控制,PB4,PB5分別與液晶屏幕的片選CSB,CSA相連。PD口與89C2051的P1口相連,作為溫度數據的輸入口,其DDRD也為0x00,同時PD1和PD2作為串行通信口分別與MAX232的TIN1和TIN2相連接。PE0和PE1口作為控制溫度傳感器檢測信號的輸出,PE2作為溫度檢測完成信號的檢測,因此DDRE為0x07.

本設計中ATmega 162的PA口作為數據端與液晶屏的DB0到DB7相連,PB0與RS相連作為寫狀態,PB1與RW相連控制讀狀態,PB2與RST相連作為液晶屏復位控制,PB3與E相連是用來控制液晶屏的使能端,當數據及指令都正確寫入液晶屏,ATmega 162置PB3為高電平時液晶屏開始執行寫入的程序并調用新寫入的數據,PB4、PB5和PB6分別與液晶屏的CSA、CSB和CSC相連,他們分別作為中間、左邊和右邊顯示屏的片選,都是低電平有效。當需要在中間屏幕寫,如顯示數據時,ATmega 162先把PB4置為低電平,再置RS為高電平,接著是拉低RW的電壓,然后把數據放在PA口上好讓液晶屏能接收到,最后打開使能端E,這樣一次數據傳輸就完成了。進行32次循環輸入,就可以把一個16×16漢字輸入到液晶屏里了。

值得注意的是,在使用仿真器時必須先把接AT-mega162的電路板加電后才能給仿真器上電,然后才使用AVR Studio進行在線仿真,否則是無法正確連接的。

在選擇系統時鐘源時,要正確配置熔絲位,熔絲位決定著系統采用時鐘源的方式,不能通過普通的編程在MCU運行時更改,在調試之前應根據所選時鐘源形式和喚醒方式,在仿真系統中正確配置熔絲位,使時鐘源與熔絲位匹配。

3.2 DS18B20溫度傳感器設計

DS18B20作溫度檢測時使用的是單總線方式來傳送指令和數據,這就要求傳送時要有絕對精確的頻率,對于18B20來說指令的精確度要達到微秒級,而如果AT-mega 162使用C語言來編寫,程序是達不到這么精確的,因此本設計加入了89C2051,使用匯編語言來專門編寫18B20的控制程序。兩個CPU的通信是直接連接的,因為AT-mega 162可以設置端口的工作方向(由DDR值決定)。

89C2051的P1口和ATmega162的PD口連接,用作數據交換,89C2051的P3.0和P3.4與ATmega162的PE0和PE1分別相連作為ATmega162對89C2051進行溫度采集的控制。89C2051的P3.7與ATmega162的PE2連接作為89C2051對ATmega162發出讀數據指令端。在本設計中,可以接多個溫度傳感器,現只連接了兩個,其數據端口分別連接到89C2051的P3.1和P3.5.

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 智能儀器
    +關注

    關注

    1

    文章

    53

    瀏覽量

    14973
收藏 人收藏

    評論

    相關推薦

    ATMEL AVR單片機ATMEGA8L-8AU/ATMEGA8L-8PU/ATMEGA16L-8PU

    88V-10AUATMEGA128-16AUATMEGA128L-8AUATMEGA128A-AU ATMEGA162V-8AIATMEGA162V-8AUATMEGA162-16AUATMEGA169PV-8AUATMEGA169V-8AUATMEGA324PV-10AU AT
    發表于 02-23 12:11

    ATmega系列單片機最新報價

    16MHZ 64QFN 否 下 載 詢價 ATMEGA162V-8MUR MCU AVR 16KB FLASH 8MHZ 44QFN 否 下 載 詢價 ATMEGA162-16MUR MCU AVR
    發表于 03-19 17:19

    基于MODBUS的多路電能采集器電路

    求一個基于MODBUS的多路電能采集器電路。芯片是ATmega162,電能表用PC機模擬,需要JTAG接口。跪求各位大神賜教??!
    發表于 04-14 11:33

    atmega162的4位數碼管的顯示

    使用74hc595來做的4位共陰數碼管
    發表于 07-02 13:41

    求助:ATMEGA162熔絲擴展位寫不進去

    第一次使用ATmega162,熔絲擴展位默認為FF,但是一旦燒寫程序或者寫入了其他熔絲位,熔絲擴展位全變成0,而且無法改變,寫入1顯示寫入成功,但是讀出還是0,但是熔絲位高低字節都可以正常寫入,試了五六片全都是一樣的情況求高手解答如果寫入atmega162的熔絲擴展位
    發表于 11-16 08:13

    ATMEGA162兩串口通信亂碼

    因為需要兩串口,初次接觸162,才發現不是想象的那樣順。讓串口接收的數據立即讓另一個發出去,protues仿真結果只有80和00,想請高手指點迷津,下面是程序:#include"
    發表于 08-23 23:15

    請教jtag接頭與MAX232的連接方法

    我畫了一個基于atmega162單片機測量溫濕度的電路圖,但是其中10pin的jtag接頭與MAX232的連接上出現了問題,請教大佬,是不是應該用10pin的jtag接頭的第一二管腳分別去連接
    發表于 02-09 15:04

    如何設計一款基于ATmega162智能儀器?

    本文通過基于ATmega162介紹了他的特點和在溫度檢測中的應用實例,ATmega162具有其他AVR系列大部分產品的功能,又具有獨特技術,配置全、功能強、可靠性高、速度高、抗干擾性好、低功耗
    發表于 02-23 07:40

    atmega162.pdf

    The ATmega162 is a low-power CMOS 8-bit microcontroller based on the AVRenhanced RISC architecture.
    發表于 04-07 15:16 ?172次下載

    基于ATmega162的自重構機器人控制模式

    本文通過對自重構機器人的特點和總體結構進行分析,提出一種基于ATmega162 的部分主從分布式控制模式,該模式利用ATmega162 的外擴存儲器功能實現擴展總線,從而對自重構機器人上
    發表于 06-18 10:49 ?39次下載

    AVR芯片替換與移植手冊

    128 AVR082  Replacing ATmega161 By ATmega162 AVR083  Replacing ATmega16 3By ATm
    發表于 01-16 10:12 ?70次下載

    自已動手制作AVR單片機仿真器

    JtagICE 是一款經典的仿真器。它支持的芯片清單為:ATmega128, ATmega128L,ATmega16, ATmega162, ATm
    的頭像 發表于 02-16 11:16 ?5964次閱讀

    ATmega162ATmega162V 8位微控制器的數據手冊免費下載

    ATMega162是一款基于AVR增強型RISC架構的低功耗CMOS 8位微控制器。通過在一個時鐘周期內執行強大的指令,ATMega162的吞吐量接近每兆赫1英里/秒,使系統設計者能夠優化功耗與處理速度的關系。
    發表于 10-23 08:00 ?5次下載
    <b class='flag-5'>ATmega162</b>和<b class='flag-5'>ATmega162</b>V 8位微控制器的數據手冊免費下載

    ATMEGA162的PCB原理圖免費下載

    本文檔的主要內容詳細介紹的是ATMEGA162的PCB原理圖免費下載。
    發表于 09-25 17:50 ?0次下載
    <b class='flag-5'>ATMEGA162</b>的PCB原理圖免費下載

    DS10287_STM32L162QC,STM32L162VC-A,STM32L162ZC,和STM32L162RC-A單片機數據手冊

    DS10287_STM32L162QC,STM32L162VC-A,STM32L162ZC,和STM32L162RC-A單片機數據手冊
    發表于 11-23 08:40 ?0次下載
    DS10287_STM32L<b class='flag-5'>162</b>QC,STM32L<b class='flag-5'>162</b>VC-A,STM32L<b class='flag-5'>162</b>ZC,和STM32L<b class='flag-5'>162</b>RC-A單片機數據手冊
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>