RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

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

3天內(nèi)不再提示

使用MAXQ2010評估板讀取溫度

星星科技指導(dǎo)員 ? 來源:ADI ? 作者:ADI ? 2023-02-20 10:19 ? 次閱讀

本應(yīng)用筆記演示了MAXQ微控制器應(yīng)用開發(fā)的簡便性,并提供了IAR嵌入式工作臺?集成開發(fā)環(huán)境和MAXQ?評估(EV)板。演示簡單開發(fā)過程的最簡單方法是使用示例應(yīng)用程序。本應(yīng)用使用MAXQ2010 RISC微控制器上的UART、定時器ADC來監(jiān)視和報告溫度。

應(yīng)用概述

本文描述的示例應(yīng)用使用MAXQ2010處理器和MAXQ2010評估(EV)板。本例展示了微控制器的UART、集成ADC控制器和器件定時器的用途。定時器用于每 500ms 生成一次中斷。MAXQ2010端口與ADC接口,用于數(shù)據(jù)采集。然后通過將熱敏電阻連接到MAXQ2010的ADC來獲取溫度讀數(shù)。當發(fā)生中斷時,MAXQ2010獲取溫度讀數(shù),并將結(jié)果輸出到其串行端口之一。

讀取 ADC 數(shù)據(jù)

在示例應(yīng)用中,ADC控制器讀取隨溫度變化的模擬輸入。在讀取任何輸入之前,應(yīng)用必須設(shè)置ADC的時鐘、轉(zhuǎn)換模式(單路或連續(xù))、基準電壓源(內(nèi)部、外部或AVDD),以及感興趣源的輸入通道。需要初始化幾個寄存器才能實現(xiàn)ADC轉(zhuǎn)換。

void initADC ( )
{
  ADCN = 0x00; // Single conversion, external AVDD reference, divide-by-1 clock frequency.
  ADST = 0x10; //Select configuration register - read/write access on ADDATA.
  ADDATA = 0x00; //Channel 0 for AN0.
  ADDATA = 0x01; //Channel 0 for AN1.
  ADDATA = 0x02; //Channel 0 for AN2.
  ADDATA = 0x03; //Channel 0 for AN3.
  ADDATA = 0x04; //Channel 0 for AN4.
  ADDATA = 0x05; //Channel 0 for AN5.
  ADDATA = 0x06; //Channel 0 for AN6.
  ADDATA = 0x07; //Channel 0 for AN7, thermistor is attached on this channel.
  ADADDR = 0x07; //Selecting 0x07 as the last conversion configuration register.
}

初始化后,設(shè)置ADST寄存器的ADCONV位將啟動轉(zhuǎn)換。硬件通過清除相同的位來指示轉(zhuǎn)換完成。要讀取結(jié)果,請將ADST寄存器的ADIDX[3:0]位設(shè)置為目標輸入通道。然后,ADDATA寄存器將保存相應(yīng)通道的數(shù)字數(shù)據(jù)。在本示例應(yīng)用中,AN7 被分配給 ADC 數(shù)據(jù)緩沖器 7。因此,要讀取熱敏電阻數(shù)據(jù),請設(shè)置 ADST = 0x07 并讀取 ADDATA。 對讀取的數(shù)字值執(zhí)行以下步驟以達到溫度:

unsigned int getADCReading()
{
  unsigned short data = 0;

  ADST_bit.ADCONV = 1; //Enable conversion.
  while( ADST_bit.ADCONV == 0x01 ); //ADST.ADCONV bit indicates conversion in progress.
  ADST = 0x07; //We are interested in reading only the AN7 input, that is thermistor data.
  data = ADDATA; //Read AN7 data.
  return data;
}

計算 AN7 處的模擬輸入,以伏特為單位,對應(yīng)于讀取的數(shù)字值。

計算與AN7處模擬輸入相對應(yīng)的熱敏電阻電阻。

以攝氏度為單位計算溫度。

寫入串行端口

在示例應(yīng)用中,MAXQ2010的一個串行端口用于輸出當前溫度讀數(shù)。在將任何數(shù)據(jù)寫入端口之前,應(yīng)用程序必須設(shè)置波特率和串行端口模式。只需初始化幾個寄存器即可啟用串行端口通信。

void initSerial()
{
  SCON0_bit.SM1 = 1; // Set to Mode 1.
  SCON0_bit.REN = 1; // Enable receives.
  SMD0_bit.SMOD = 1; // Set baud rate to 16 times the baud clock.
  PR0 = 0x75F7; // Set phase for 115200 with an 8MHz crystal.
  SCON0_bit.TI = 0; // Clear the transmit flag.
  SBUF0 = 0x0D; // Send carriage return to start communication.
}

在UART中,單個寄存器發(fā)送和接收串行數(shù)據(jù)。寫入 SBUF0 寄存器將啟動傳輸。當串行端口上的數(shù)據(jù)可用時,讀取 SBUF0 寄存器將檢索輸入。 示例程序使用以下函數(shù)將數(shù)據(jù)輸出到串行端口。

int putchar(int ch)
{
  while(SCON0_bit.TI == 0); // Wait until we can send.
  SCON0_bit.TI = 0; // Clear the sent flag.
  SBUF0 = ch; // Send the char.
  return ch;
}

使用計時器生成周期性中斷

此示例應(yīng)用程序中使用的最后一個組件是 16 位計時器之一。定時器生成中斷,每秒觸發(fā)兩次溫度讀數(shù)。要為此示例配置計時器,程序員必須設(shè)置重新加載值,指定時鐘源,然后啟動計時器。以下代碼顯示了初始化計時器 B 所需的步驟。

TB0V = 0x00000; // Set current timer value.
TB0R = 0x0F42; // Set reload value.
TB0CN = 0x0506; // Set Timer Clock = SysClk/1024, Reload Timer Mode, Interrupt Enabled.

使用此計時器作為此示例的中斷源還需要執(zhí)行幾個步驟。MAXQ架構(gòu)的中斷必須在三個級別上啟用:全局、每個模塊和本地。使用 IAR? 編譯器,通過調(diào)用函數(shù)啟用全局中斷。此功能可有效設(shè)置中斷和控制 (IC) 寄存器的中斷全局使能 (IGE) 位。由于定時器B0位于模塊4中,因此設(shè)置中斷掩碼寄存器(IMR)的位4以啟用模塊的中斷。通過在定時器B控制寄存器(TB0CN)中設(shè)置啟用定時器B中斷(ETB)位來啟用本地中斷。這些步驟如下所示。 最后,使用中斷需要初始化中斷向量。IAR 的編譯器允許為每個模塊使用不同的中斷處理函數(shù)。為特定模塊設(shè)置中斷處理程序需要使用 #pragma 向量指令。中斷處理函數(shù)聲明前面還應(yīng)帶有 __interrupt 關(guān)鍵字。示例應(yīng)用程序通過以下方式聲明模塊 4 的中斷處理程序。

__enable_interrupt()
TB0CN = 0x506; // Enable interrupts along with setting Timer Clock and run Timer.
IMR |= 0x10; // Enable the interrupts for module 4.
#pragma vector = 4
__interrupt void timerInterrupt()
{
// Add interrupt handler here.
}

MAXQ2010評估板和IAR IDE設(shè)置

運行示例應(yīng)用程序需要以下設(shè)置。

MAXQ2010評估板應(yīng)具有:

a. JU14 和 JU22 短路以啟用通道 AN7 上的熱敏電阻讀數(shù)。

b. JU9 引腳 2 和 3 短路以啟用 UART0。

c. JU8開路,讓8MHz晶振源控制器。

IAR IDE 項目選項應(yīng)具有:

a. lnkmaxq2010.xcl 作為鏈接器命令文件(從“項目”菜單中選擇“選項”,然后從“類別”列表中選擇“鏈接器”,然后選擇“配置”選項卡)。

b. maxq2010.ddf 作為設(shè)備描述文件(從“項目”菜單中選擇“選項”,然后從“類別”列表中選擇“調(diào)試器”,然后選擇“設(shè)置”選項卡)。

c. JTAG作為驅(qū)動程序(從“項目”菜單中選擇“選項”,然后從“類別”列表中選擇“調(diào)試器”,然后選擇“設(shè)置”選項卡)。

d. COMx端口設(shè)置以與JTAG通信(從“項目”菜單中選擇“選項”,然后從“類別”列表中選擇JTAG)。

電腦超級終端設(shè)置應(yīng)具有:

a. PC COMx端口,MAXQ0的UART2010連接到該端口。

二。配置屬性為 115200 波特率、8 個數(shù)據(jù)位、1 停止位以及無奇偶校驗和流量控制。

該樣應(yīng)用使用MAXQ IAR嵌入式工作臺V2.12A進行了測試。

圖 1

顯示了預(yù)期的輸出。

pYYBAGPy2KiAJMi_AAB7JbnIPb8308.gif

圖1.示例應(yīng)用程序輸出。

結(jié)論

如這些代碼示例所示,通過學(xué)習幾個外設(shè)寄存器的細節(jié),程序員能夠輕松開發(fā)MAXQ2010微控制器和MAXQ系列處理器的應(yīng)用。IAR 嵌入式工作臺的添加允許使用符合 ANSI 標準的 C 代碼編寫代碼,從而加快了開發(fā)過程。在此處下載此示例應(yīng)用程序的完整源代碼。閱讀代碼開頭的說明和注釋,了解有關(guān)所需設(shè)置和 IAR 編譯器版本的詳細信息。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7542

    瀏覽量

    151316
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19259

    瀏覽量

    229650
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5336

    瀏覽量

    120230
收藏 人收藏

    評論

    相關(guān)推薦

    MAXQ1850評估套件(EV kit)和面向MAXQ30的CrossWorks編譯器的設(shè)計方案

    (例如,溫度、電壓)MAXQ1850評估套件是安全應(yīng)用原型開發(fā)的理想平臺。套件提供一個RS-232串口,兩個智能卡插槽(一個全尺寸,一個SIM卡),一個USB連接器,一個LCD屏,一個16按鍵鍵盤以及
    發(fā)表于 12-24 09:23

    MAXQ2010 pdf datasheet (16-Bit

    The MAXQ2010 microcontroller is a low-power, 16-bit device that incorporates a high-performance
    發(fā)表于 10-01 11:59 ?11次下載

    使用MAXQ2000評估的應(yīng)用實例

    摘要:本文介紹了利用MAXQ系列微控制器開發(fā)一個產(chǎn)品的具體技術(shù)。MAXQ2000評估被用來開發(fā)一個特殊處理器外設(shè),給出了LCD控制、SPI通信、通過串口傳輸數(shù)據(jù)、定時器使用和響應(yīng)中
    發(fā)表于 04-23 17:33 ?34次下載

    MAXQ2010中文資料,pdf (16位混合信號微控制器 提供LCD接口)

    MAXQ2010微控制器是一款低功耗、16位器件,包含高性能12位多路ADC和液晶顯示器(LCD)接口。配合高性能、低功耗混合信號集成電路,MAXQ2010可理想用于各種系統(tǒng)。 MAXQ2010
    發(fā)表于 05-29 11:26 ?67次下載

    MAXQ2010評估套件

    MAXQ2010評估套件 MAXQ2010評估套件是經(jīng)過驗證的平臺,可方便地用來評估MAX2010
    發(fā)表于 04-09 15:37 ?25次下載

    MAXQ2010提供LCD驅(qū)動器的16位混合信號微控制器

    MAXQ2010提供LCD驅(qū)動器的16位混合信號微控制器 The MAXQ2010 microcontroller is a low-power, 16-bit device
    發(fā)表于 10-01 12:02 ?563次閱讀

    采用MAXQ2000 USB “拇指”評估套件進行設(shè)計

    摘要:本應(yīng)用筆記介紹使用USB “拇指”評估(EV)套件快速開發(fā)MAXQ2000 RISC微控制器所需要的步驟。文檔解釋了怎樣安裝和配置評估套件的硬件和軟件,怎樣開發(fā)并裝入
    發(fā)表于 04-23 15:54 ?725次閱讀
    采用<b class='flag-5'>MAXQ</b>2000 USB “拇指”<b class='flag-5'>評估</b>套件進行設(shè)計

    MAXQ7665評估快速入門

    摘要:本應(yīng)用筆記是快速入門。它解釋了怎樣安裝并配置IAR Embedded Workbench?。此外,它提供簡要的說明來編譯、鏈接、調(diào)試MAXQ7665微控制器評估套件中的幾個實例工程。問題排查部
    發(fā)表于 05-02 10:42 ?792次閱讀
    <b class='flag-5'>MAXQ</b>7665<b class='flag-5'>評估</b><b class='flag-5'>板</b>快速入門

    采用MAXQ2010的低功耗醫(yī)學(xué)數(shù)據(jù)記錄儀的設(shè)計

    采用MAXQ2010的低功耗醫(yī)學(xué)數(shù)據(jù)記錄儀的設(shè)計 許多醫(yī)學(xué)應(yīng)用都需要不用外接電源線和數(shù)據(jù)線的便攜式自供電設(shè)
    發(fā)表于 03-01 18:02 ?612次閱讀
    采用<b class='flag-5'>MAXQ2010</b>的低功耗醫(yī)學(xué)數(shù)據(jù)記錄儀的設(shè)計

    低功耗醫(yī)學(xué)數(shù)據(jù)記錄儀的設(shè)計

    像許多用來采集或存儲數(shù)據(jù)的電子設(shè)備一樣,基于MAXQ2010的數(shù)據(jù)記錄儀采用USB接口與主機(如個人電腦)通信。但是,由于MAXQ2010自己沒有USB接口,我們利用FTDI公司的芯片F(xiàn)T232R實現(xiàn)USB與UAR
    發(fā)表于 12-06 11:04 ?1167次閱讀
    低功耗醫(yī)學(xué)數(shù)據(jù)記錄儀的設(shè)計

    MAXQ2010的功能框圖

    MAXQ2010的功能框圖如下圖所示: 圖 MAXQ2010的功能框圖
    發(fā)表于 09-26 15:24 ?1009次閱讀
    <b class='flag-5'>MAXQ2010</b>的功能框圖

    MAXQ1850-KIT評估套件

    MAXQ1850-KIT評估套件
    發(fā)表于 05-16 18:19 ?6次下載
    <b class='flag-5'>MAXQ</b>1850-KIT<b class='flag-5'>評估</b>套件

    MAXQ610評估中文資料

    MAXQ610評估(EV kit)是經(jīng)過驗證的平臺,可方便地用來評估用于電池供電設(shè)備的低功耗、16位、RISC微控制器MAXQ610的功能
    發(fā)表于 08-23 16:24 ?22次下載
    <b class='flag-5'>MAXQ</b>610<b class='flag-5'>評估</b><b class='flag-5'>板</b>中文資料

    MAXQ2010-RFX+ MAXQ2010-RFX+ - (Maxim Integrated) - 嵌入式 - 微控制器

    電子發(fā)燒友網(wǎng)為你提供()MAXQ2010-RFX+相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有MAXQ2010-RFX+的引腳圖、接線圖、封裝手冊、中文資料、英文資料,MAXQ2010-RFX+真值表,MAX
    發(fā)表于 11-16 18:58
    <b class='flag-5'>MAXQ2010</b>-RFX+ <b class='flag-5'>MAXQ2010</b>-RFX+ - (Maxim Integrated) - 嵌入式 - 微控制器

    MAXQ2010-KIT# 評估 - 嵌入式 - MCU,DSP

    電子發(fā)燒友網(wǎng)為你提供Maxim(Maxim)MAXQ2010-KIT#相關(guān)產(chǎn)品參數(shù)、數(shù)據(jù)手冊,更有MAXQ2010-KIT#的引腳圖、接線圖、封裝手冊、中文資料、英文資料,MAXQ2010-KIT#真值表,
    發(fā)表于 02-06 19:23
    <b class='flag-5'>MAXQ2010</b>-KIT# <b class='flag-5'>評估</b><b class='flag-5'>板</b> - 嵌入式 - MCU,DSP
    RM新时代网站-首页