吴忠躺衫网络科技有限公司

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

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

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

從MAXQ8913微控制器上的RAM執(zhí)行應(yīng)用代碼

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

MAXQ8913和其他MAXQ微控制器使用的哈佛存儲(chǔ)器映射架構(gòu)為用戶提供了根據(jù)需要將不同的物理存儲(chǔ)器段(如數(shù)據(jù)SRAM)映射到程序或數(shù)據(jù)存儲(chǔ)器空間的靈活性。在某些情況下,從數(shù)據(jù)SRAM執(zhí)行部分應(yīng)用可以提高性能并降低功耗。這些好處是以增加應(yīng)用程序復(fù)雜性為代價(jià)的。

概述

與許多其他MAXQ微控制器一樣,MAXQ8913包括一個(gè)基于SRAM的內(nèi)部數(shù)據(jù)存儲(chǔ)器區(qū)域,該存儲(chǔ)器可以映射到數(shù)據(jù)存儲(chǔ)器空間,也可以映射到程序存儲(chǔ)器空間。內(nèi)部SRAM通常用作數(shù)據(jù)存儲(chǔ)器,大部分代碼執(zhí)行發(fā)生在程序閃存或屏蔽ROM中。但是,在某些情況下,應(yīng)用程序從內(nèi)部SRAM執(zhí)行其代碼的有限部分可能很有用。

本應(yīng)用筆記解釋了如何配置和加載基于匯編的代碼,以便從內(nèi)部SRAM正確執(zhí)行。討論了這種執(zhí)行的優(yōu)缺點(diǎn)。本應(yīng)用筆記的演示代碼為MAXQ8913編寫,采用基于匯編的MAX-IDE環(huán)境。本應(yīng)用筆記中介紹的演示應(yīng)用的代碼和項(xiàng)目文件可供下載

本應(yīng)用筆記中討論的代碼專門針對(duì)MAXQ8913微控制器,但本文所示的原理和技術(shù)同樣適用于其它基于MAXQ的微控制器,其內(nèi)部SRAM可以映射到程序空間。其他能夠以這種方式執(zhí)行代碼的MAXQ微控制器包括MAXQ2000、MAXQ2010和MAXQ3210/MAXQ3212。

該代碼可在任何基于MAXQ8913的硬件上正常工作,該硬件為MAXQ232的串行端口8913提供串口接口RS-0或USB轉(zhuǎn)串口)。通過將終端仿真器連接到串行端口,可以查看演示代碼的輸出,波特率為9600波特,8個(gè)數(shù)據(jù)位,1個(gè)停止位,無奇偶校驗(yàn)。

MAX-IDE環(huán)境的最新安裝包和文檔可免費(fèi)下載。

最大集成開發(fā)臺(tái)安裝

MAXQ磁芯組裝指南

開發(fā)工具指南

從 RAM 執(zhí)行代碼的優(yōu)點(diǎn)

通常,MAXQ微控制器上的大多數(shù)應(yīng)用代碼都設(shè)置為從主程序空間執(zhí)行,這通常使用大型內(nèi)部閃存或(對(duì)于屏蔽ROM器件)客戶特定的應(yīng)用ROM來實(shí)現(xiàn)。主程序空間是非易失性的,因此在大多數(shù)情況下將應(yīng)用程序代碼存儲(chǔ)在那里是有意義的。內(nèi)部SRAM用于存儲(chǔ)變量、軟件堆棧和類似數(shù)據(jù),這些數(shù)據(jù)在器件斷電時(shí)不需要保存。

但是,對(duì)于某些應(yīng)用,從數(shù)據(jù)SRAM執(zhí)行某些代碼具有優(yōu)勢(shì)。

降低功耗

在大多數(shù)MAXQ微控制器中,從內(nèi)部SRAM(或?qū)嵱贸绦騌OM)執(zhí)行代碼時(shí),電源電流會(huì)降低,而不是程序閃存。之所以能節(jié)省功耗,是因?yàn)殚W存在未被訪問時(shí)可以動(dòng)態(tài)關(guān)閉電源。如果應(yīng)用通常花費(fèi)大部分活動(dòng)時(shí)間執(zhí)行非常少量的代碼,則從SRAM執(zhí)行該代碼可以顯著降低總體功耗。

直接內(nèi)存訪問主程序空間

通常,從主程序閃存執(zhí)行的代碼不能直接讀取也存儲(chǔ)在主程序閃存中的數(shù)據(jù)。這種類型的數(shù)據(jù)可以包括常量字符串和應(yīng)用程序數(shù)據(jù)中包含的數(shù)據(jù)表。要讀取此數(shù)據(jù),應(yīng)用程序必須在實(shí)用程序ROM中調(diào)用專用數(shù)據(jù)傳輸函數(shù)。 從RAM執(zhí)行代碼會(huì)繞過此限制,并允許使用標(biāo)準(zhǔn)數(shù)據(jù)指針直接讀取閃存中包含的數(shù)據(jù)。這加快了訪問速度。如果小型算法花費(fèi)大量時(shí)間遍歷查找表或存儲(chǔ)在閃存中的其他常量數(shù)據(jù),則從RAM執(zhí)行算法可以在更短的時(shí)間內(nèi)完成操作。

整個(gè)閃存可以重寫

MAXQ8913上的實(shí)用程序ROM與大多數(shù)基于閃存的MAXQ微控制器一樣,包含標(biāo)準(zhǔn)功能,允許在應(yīng)用控制下擦除和重寫程序閃存。此過程允許實(shí)現(xiàn)用戶加載程序,這些加載程序使用用戶指定的接口(例如串行端口、SPI 或 I2C)重新加載部分或全部應(yīng)用程序。但是,如果用戶加載程序代碼包含在閃存中,則無法擦除或重寫它占用的閃存部分。從RAM執(zhí)行用戶加載器代碼允許擦除整個(gè)閃存程序空間并使用新代碼重寫,包括用戶加載器本身。

從 RAM 執(zhí)行代碼的缺點(diǎn)

從 RAM 執(zhí)行應(yīng)用程序代碼時(shí)也存在缺點(diǎn)和限制。有些缺點(diǎn)是可以解決的,而另一些則是MAXQ架構(gòu)固有的。

有限的代碼空間

RAM 通常比程序閃存小得多,這意味著在任何給定時(shí)間只能從 RAM 執(zhí)行少量代碼。但是,可以從 RAM 運(yùn)行一個(gè)例程,擦除它并加載第二個(gè)例程,運(yùn)行第二個(gè)例程,依此類推。

代碼必須鏡像

在從 RAM 執(zhí)行代碼之前,必須將其復(fù)制到 RAM。此過程需要時(shí)間和代碼空間來實(shí)現(xiàn)。此外,代碼必須從某個(gè)地方復(fù)制,因此代碼實(shí)際上存儲(chǔ)兩次:一次在閃存或程序ROM中,一次在RAM中。即使代碼不打算從閃存執(zhí)行,它仍然必須存儲(chǔ)在那里,從而消耗額外的空間。

無法直接訪問內(nèi)存

從內(nèi)部 RAM 執(zhí)行代碼時(shí),RAM 在數(shù)據(jù)存儲(chǔ)器空間中不再可見。這意味著數(shù)據(jù)指針不能用于直接讀取或?qū)懭?RAM 位置。可以通過與從閃存運(yùn)行的應(yīng)用程序代碼相同的方式解決此限制。使用實(shí)用程序ROM數(shù)據(jù)傳輸功能(UROM_moveDP0和類似功能)從RAM讀取,并通過在閃存中寫入類似的功能,對(duì)RAM執(zhí)行間接寫入。但是,此解決方法需要額外的時(shí)間和應(yīng)用程序空間。

組裝要從 RAM 執(zhí)行的代碼

在編寫將從數(shù)據(jù)RAM執(zhí)行的應(yīng)用程序代碼時(shí),必須了解一個(gè)主要因素。每個(gè)代碼字將在一個(gè)地址組裝并加載到該地址的閃存中,但它將在不同地址的RAM中執(zhí)行。例如,如果一段應(yīng)用程序代碼從程序字地址 0100h 開始加載到閃存中,并從數(shù)據(jù)字地址 0100h 開始復(fù)制到 RAM,則無法跳轉(zhuǎn)到地址 0100h 以在 RAM 中執(zhí)行代碼。地址 0100h 仍然是閃存中代碼的地址。程序空間中RAM中的代碼地址是其數(shù)據(jù)存儲(chǔ)器地址加上A000h的偏移量,如下圖1所示。

poYBAGP0fmiAf1XIAAEB0HL_4Vs085.gif?imgver=1

圖1.從RAM執(zhí)行代碼時(shí)MAXQ8913的存儲(chǔ)器映射。

要執(zhí)行復(fù)制到數(shù)據(jù)存儲(chǔ)器地址 0100h 的 RAM 的應(yīng)用程序代碼,必須跳轉(zhuǎn)到程序地址 A100h。

從RAM執(zhí)行代碼會(huì)給MAX-IDE匯編程序帶來困難。MAX-IDE根本不知道您將在與組裝代碼不同的地址執(zhí)行代碼。例如,假設(shè)您有一個(gè)名為 subOne 的例程,它從閃存地址 0080h 開始,另一個(gè)例程位于 0300h 處,它調(diào)用第一個(gè)例程。此代碼如下所示。

org 0080h

subOne:
   ....perform various calculations...
   ret

...

org 0300h

subTwo:
   call  subOne
   ...and so on...

如果將這兩個(gè)例程都復(fù)制到 RAM 中并在那里執(zhí)行,會(huì)發(fā)生什么?假設(shè)例程被復(fù)制到RAM中與它們?cè)陂W存中占用的程序存儲(chǔ)器地址相同的數(shù)據(jù)存儲(chǔ)器地址,則subOne將位于程序地址A080h,subTwo將位于A300h。

由于行“call subOne”和目標(biāo)標(biāo)簽subOne之間的距離大于相對(duì)跳轉(zhuǎn)距離(+127/-128字),因此必須將指令組裝為絕對(duì)LCALL。但是,匯編程序?qū)?subOne 的唯一地址是 0080h,因此指令將被組裝為“LCALL 0080h”。當(dāng) subTwo 執(zhí)行時(shí),它不會(huì)調(diào)用位于 RAM 中的 subOne 的副本,而是調(diào)用位于閃存中的版本。

這種困境有兩種可能的解決方法。第一種也是最簡(jiǎn)單的方法是強(qiáng)制匯編程序始終使用相對(duì)跳轉(zhuǎn)和調(diào)用,并在 RAM 中保持例程足夠接近,以便它們可以以這種方式相互調(diào)用。不要使用 JUMP 和 CALL 操作碼(允許匯編程序選擇短跳或長(zhǎng)跳),而是始終使用 SJUMP 和 SCALL。這將強(qiáng)制使用指令的相對(duì)跳轉(zhuǎn)版本。

但是,這種方法有一個(gè)警告。如果從 RAM 運(yùn)行的代碼量超過 128 個(gè)字,則相對(duì)跳轉(zhuǎn)可能不足以讓 RAM 中的一個(gè)例程調(diào)用另一個(gè)例程。在這種情況下,解決方案是使用 ORG 語句修復(fù)各種例程的地址,然后在 RAM 中定義包含其更正地址的等值。這些等價(jià)可用于LCALL和LJUMP語句,如下所示。

subOne  equ  0A080h

org 0080h

; subOne
   ....perform various calculations...
   ret

...

org 0300h

subTwo:
   lcall  #subOne
   ...and so on...

此過程強(qiáng)制匯編程序使用 LCALL 的正確地址。

將代碼復(fù)制到內(nèi)存

在從 RAM 執(zhí)行代碼之前,必須先將其復(fù)制到 RAM 中。將大量代碼從閃存復(fù)制到RAM的最簡(jiǎn)單方法是使用實(shí)用程序ROM copyBuffer功能。此函數(shù)將兩個(gè)數(shù)據(jù)指針(DP[0] 和 BP[Offs])和一個(gè)長(zhǎng)度值 (LC[0]) 作為輸入。它將指定的字節(jié)/字?jǐn)?shù)從源 DP[0] 復(fù)制到目標(biāo) BP[Offs];它一次最多可以復(fù)制 256 個(gè)字節(jié)/字。

我們的演示應(yīng)用程序會(huì)將自身的前 512 個(gè)單詞從閃存復(fù)制到 RAM,然后跳轉(zhuǎn)到 RAM 中的副本以開始執(zhí)行代碼。源指針 (DP[0]) 指向?qū)嵱贸绦?ROM 內(nèi)存映射中程序閃存的位置,該位置從 8000h 開始。請(qǐng)注意,為了避免無限循環(huán),我們跳轉(zhuǎn)到 RAM 中 RAM 復(fù)制代碼后面的副本部分。

org 0020h                    

copyToRAM:
   move    DPC,   #1Ch       ; Ensure all pointers are operating in word mode.
   move    DP[0], #8000h     ; Start of program flash from UROM's perspective.
   move    BP,    #0         ; Start of data memory.
   move    Offs,  #0         
   move    LC[0], #256       ; The Offs register limits us to a 256-word copy.
   lcall   UROM_copyBuffer

   move    DP[0], #8100h     ; Copy second half.
   move    BP,    #0100h
   move    Offs,  #0
   move    LC[0], #256
   lcall   UROM_copyBuffer

   ljump   #0A040h           ; Begin execution of code from RAM.


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;  Executing from RAM
;;

org 0040h

   move    LC[0], #1000
delayLoop:
   move    LC[1], #8000
   sdjnz   LC[1], $
   sdjnz   LC[0], delayLoop

;; Initialize serial port.

   move    SCON.6, #1        ; Set to mode 1 (10-bit asynchronous).
   move    SMD.1,  #1        ; Baud rate = 16 x baud clock
   move    PR, #009D4h       ; P = 2^21 * 9600/8.000MHz
   move    SCON.1, #0        ; Clear transmit character flag.

數(shù)據(jù)傳輸操作

如上所述,從 RAM 執(zhí)行代碼時(shí),內(nèi)存映射的兩件事會(huì)發(fā)生變化。首先,程序閃存現(xiàn)在映射到數(shù)據(jù)存儲(chǔ)器中。這意味著我們可以使用任何數(shù)據(jù)指針直接從程序閃存中讀取數(shù)據(jù),如下所示。

;; Read the banner string from flash and output it over the serial port.  Since
;; we are running from RAM, we can read from the flash directly without having
;; to use the Utility ROM data transfer functions (moveDP0inc, etc...).

   move    SC.4,  #0
   move    DPC,   #0                  ; Set pointers to byte mode.
   move    DP[0], #(stringData * 2)   ; Point to byte address of string data.

stringLoop:
   move    Acc, @DP[0]++
   sjump   Z, stringEnd
   lcall   #TxChar
   sjump   stringLoop
stringEnd:
   move    DPC, #1Ch         ; Set pointers to word mode.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;  This portion of the code (addresses 200h and higher) will remain in flash.

org 0200h

stringData:
   db      0Dh, 0Ah, "Executing code from RAM....", 00h

請(qǐng)注意,如圖1所示,SC.4(CDA0)位會(huì)影響程序閃存的哪一半(上頁(yè)或下頁(yè))以字節(jié)模式映射到數(shù)據(jù)存儲(chǔ)器。當(dāng)使用字模式指針時(shí),整個(gè)程序閃存立即映射到數(shù)據(jù)存儲(chǔ)器中。

其次,雖然閃存現(xiàn)在可以在數(shù)據(jù)空間中訪問,但SRAM不再可以直接訪問。這意味著要從 SRAM 位置讀取或?qū)懭?SRAM 位置,應(yīng)用程序必須間接執(zhí)行此操作。從SRAM位置讀取的方式與閃存中運(yùn)行的代碼從閃存位置讀取的方式相同 - 它使用實(shí)用程序ROM數(shù)據(jù)傳輸功能(moveDP0inc等)。但是,由于實(shí)用程序ROM中沒有類似的函數(shù)來執(zhí)行間接寫入,因此應(yīng)用程序必須包含一個(gè)保留在閃存中的小函數(shù),該函數(shù)可由RAM駐留代碼調(diào)用以執(zhí)行寫入。

下面的代碼演示了用于讀取和寫入 RAM 變量 varA 的兩種方法,其初始內(nèi)容與位于地址范圍 0000h-01FFh 中的其余應(yīng)用程序代碼一起從閃存復(fù)制到 RAM。

scall   printVar
   scall   incrVar
   scall   printVar
   scall   incrVar
   scall   printVar
   scall   incrVar

   move    Acc, #0Dh
   lcall   #TxChar
   move    Acc, #0Ah
   lcall   #TxChar
   
   sjump   $


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;  Variables stored in RAM (program) space.  They can be read using the 
;;  Utility ROM data transfer functions (such as UROM_moveDP0) and written 
;;  using the writeDP0 function which remains in flash.
;;

varA:
   dw 'A'


;==============================================================================
;=
;=  printVar
;=
;=  Reads the varA RAM variable value and sends it over the serial port.
;=

printVar:
   move    DPC, #1Ch         ; Word mode
   move    DP[0], #varA      ; Variable's location in UROM data space
   lcall   UROM_moveDP0      ; Moves variable value into GR.
   move    Acc, GR
   lcall   #TxChar
   ret


;==============================================================================
;=
;=  incrVar
;=
;=  Reads the varA RAM variable value, adds 1 to it, and stores it back in RAM.
;=

incrVar:
   move    DPC, #1Ch         ; Word mode
   move    DP[0], #varA      ; Variable's location in UROM data space
   lcall   UROM_moveDP0      ; Moves variable value into GR.

   move    Acc, GR
   add     #1
   move    GR, Acc
   lcall   writeDP0

   ret



;==============================================================================
;=
;=  TxChar
;=
;=  Outputs a character to the serial port.
;=
;=  Inputs  : Acc.L - Character to send.
;=

org 01F0h
   move    SBUF, Acc         ; Send character.
TxChar_Loop:
   move    C, SCON.1         ; Check transmit flag.
   sjump   NC, TxChar_Loop   ; Stall until last transmit has completed.
   move    SCON.1, #0        ; Clear the transmit flag.
   ret


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;
;;  This portion of the code (addresses 200h and higher) will remain in flash.

org 0200h

stringData:
   db      0Dh, 0Ah, "Executing code from RAM....", 00h


;==============================================================================
;=
;=  WriteRAM
;=
;=  This is a routine that can be called by code running in the RAM to load
;=  a new value into a byte or word location in the RAM.
;=
;=  Inputs  : DP[0] - Location to write (absolute starting at 0000h) in RAM.
;=            GR    - Value to write to the RAM location.
;=  
;=  Notes   : DP[0] must be configured to operate in word or byte mode as
;=            desired before calling this function.  Following a call to this
;=            function, DP[0] must be refreshed before it is used to read data.
;=            

writeDP0:
   move    @DP[0], GR
   ret

執(zhí)行時(shí),演示代碼通過串行端口輸出以下文本(圖2)。

pYYBAGP0fmqAUYrOAAAkQX9o7dY604.gif?imgver=1

圖2.通過演示代碼通過串行端口輸出文本。

結(jié)論

MAXQ8913和其他MAXQ微控制器使用的哈佛存儲(chǔ)器映射架構(gòu)允許您將不同的物理存儲(chǔ)器段(如數(shù)據(jù)SRAM)映射到程序或數(shù)據(jù)存儲(chǔ)器空間。從數(shù)據(jù)SRAM執(zhí)行部分應(yīng)用可以提高性能并降低功耗。該過程確實(shí)需要額外的應(yīng)用程序復(fù)雜性。

審核編輯:郭婷

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

    關(guān)注

    48

    文章

    7649

    瀏覽量

    152109
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7528

    瀏覽量

    164344
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7980

    瀏覽量

    266092
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    MAXQ8913芯片結(jié)束資料分享

    的16位RISC微控制器、數(shù)/模轉(zhuǎn)換以及兩路伺服放大器。  雖然該器件是針對(duì)OIS應(yīng)用設(shè)計(jì)的,但其同樣也可用于其它各種伺服控制系統(tǒng)。MAXQ8913支持音圈和步進(jìn)電機(jī)應(yīng)用。主要應(yīng)用包
    發(fā)表于 09-28 10:22

    16位微控制器MAXQ613電子資料

    概述:MAXQ613是一款低功耗、16位MAXQ 微控制器 ,設(shè)計(jì)用于通用 遙控 、消費(fèi)類 電子 和白色家電等低功耗產(chǎn)品。器件結(jié)合了強(qiáng)大的16位RISC
    發(fā)表于 04-13 07:35

    微控制器電后是如何尋找到并執(zhí)行main函數(shù)的呢

    NOR FLASH四、開始執(zhí)行代碼的地址五、電后怎么執(zhí)行我們的程序六、總結(jié)前言微控制器(單片機(jī))
    發(fā)表于 12-21 07:23

    MAXQ8913,pdf datasheet (16-Bit

    The MAXQ8913 is a single-chip servo controller designed as a complete solution for dual axis
    發(fā)表于 07-02 09:25 ?21次下載

    Executing Application Code fro

    Executing Application Code from RAM on the MAXQ8913 Microcontroller Abstract: The Harvard
    發(fā)表于 09-02 11:09 ?1602次閱讀
    Executing Application Code fro

    MAXQ8913微控制器RAM執(zhí)行應(yīng)用程序

    MAXQ8913微控制器RAM執(zhí)行應(yīng)用程序 MAXQ8913及其它
    發(fā)表于 01-11 17:56 ?1212次閱讀
    在<b class='flag-5'>MAXQ8913</b><b class='flag-5'>微控制器</b>中<b class='flag-5'>從</b><b class='flag-5'>RAM</b><b class='flag-5'>執(zhí)行</b>應(yīng)用程序

    MAXQ618 低功耗6位MAXQ微控制器

    MAXQ618是一種低功耗,16位MAXQ微控制器的低功耗應(yīng)用,包括通用遙控,消費(fèi)電子和白色家電設(shè)計(jì)。該器件結(jié)合了強(qiáng)大的16位RISC微控制器
    發(fā)表于 03-14 11:02 ?1257次閱讀
    <b class='flag-5'>MAXQ</b>618 低功耗6位<b class='flag-5'>MAXQ</b><b class='flag-5'>微控制器</b>

    MAXQ612/MAXQ622低功耗、16位MAXQ微控制器

    MAXQ612/MAXQ622低功耗、16位MAXQ?微控制器設(shè)計(jì)用于通用遙控、消費(fèi)類電子和白色家電等低功耗產(chǎn)品。兩款器件均采用低功耗、高
    發(fā)表于 05-28 11:47 ?1340次閱讀
    <b class='flag-5'>MAXQ</b>612/<b class='flag-5'>MAXQ</b>622低功耗、16位<b class='flag-5'>MAXQ</b><b class='flag-5'>微控制器</b>

    16位微控制器MAXQ613的特點(diǎn)及應(yīng)用

    MAXQ613是一款低功耗、16位MAXQ微控制器,設(shè)計(jì)用于通用遙控、消費(fèi)類電子和白色家電等低功耗產(chǎn)品。器件結(jié)合了強(qiáng)大的16位RISC微控制器
    的頭像 發(fā)表于 10-02 14:03 ?3521次閱讀
    16位<b class='flag-5'>微控制器</b><b class='flag-5'>MAXQ</b>613的特點(diǎn)及應(yīng)用

    MAXQ8913X-0000+ MAXQ8913X-0000+ - (Maxim Integrated) - 嵌入式 - 微控制器

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

    MAXQ8913 微控制器RAM執(zhí)行應(yīng)用程序代碼

    發(fā)表于 11-17 12:42 ?0次下載
    <b class='flag-5'>從</b> <b class='flag-5'>MAXQ8913</b> <b class='flag-5'>微控制器</b>的 <b class='flag-5'>RAM</b> 中<b class='flag-5'>執(zhí)行</b>應(yīng)用程序<b class='flag-5'>代碼</b>

    使用uIP堆棧將MAXQ微控制器聯(lián)網(wǎng)

    本應(yīng)用筆記介紹如何使用uIP TCP/IP網(wǎng)絡(luò)堆棧將MAXQ?微控制器聯(lián)網(wǎng)。常用的SPI?轉(zhuǎn)以太網(wǎng)IC用作此應(yīng)用的MAC/PHY。MAXQ2000作為微控制器示例。
    的頭像 發(fā)表于 01-11 20:32 ?1261次閱讀
    使用uIP堆棧將<b class='flag-5'>MAXQ</b><b class='flag-5'>微控制器</b>聯(lián)網(wǎng)

    如何在MAXQ3180微控制器使用串行外設(shè)接口

    MAXQ3180微控制器為電表的多相模擬前端。它集成了現(xiàn)代多功能電能計(jì)量所需的所有功能。MAXQ3180通過串行外設(shè)接口(SPI?)總線將其讀數(shù)傳送給主機(jī)微控制器。本應(yīng)用筆記描述了該接
    的頭像 發(fā)表于 01-16 09:30 ?1630次閱讀
    如何在<b class='flag-5'>MAXQ</b>3180<b class='flag-5'>微控制器</b><b class='flag-5'>上</b>使用串行外設(shè)接口

    MAXQ微控制器中斷編程

    MAXQ10和MAXQ20微控制器具有簡(jiǎn)單、廉價(jià)的單向量中斷機(jī)制,而中斷源和控制則在邏輯組織成三級(jí)分層結(jié)構(gòu)。硬件不會(huì)優(yōu)先考慮中斷。應(yīng)用程序
    的頭像 發(fā)表于 02-20 10:11 ?747次閱讀
    <b class='flag-5'>MAXQ</b><b class='flag-5'>微控制器</b>中斷編程

    微控制器基礎(chǔ)】——歷史切入,了解微控制器的五個(gè)要素(

    微控制器基礎(chǔ)】——歷史切入,了解微控制器的五個(gè)要素(
    的頭像 發(fā)表于 12-07 10:55 ?650次閱讀
    【<b class='flag-5'>微控制器</b>基礎(chǔ)】——<b class='flag-5'>從</b>歷史切入,了解<b class='flag-5'>微控制器</b>的五個(gè)要素(<b class='flag-5'>上</b>)
    百家乐什么牌最大| 皇冠网小说网址| 三亚百家乐官网的玩法技巧和规则 | 百家乐怎样发牌| 赌博药| 娱乐城百家乐可以代理吗| 百家乐官网投注双赢技巧| 网上百家乐游戏哪家信誉度最好| 真人百家乐官网游戏软件| 娱乐城送38| 百家乐开和几率| 澳门百家乐官网赢钱技术| 大发888娱乐城手机版| 百家乐庄的概率| 赌场百家乐官网技巧| 大发888娱乐平台下注| 百家乐真钱在线| 百家乐官网分析软件骗人| 大发888微信公众号2| 百家乐娱乐城怎么样| 百家乐官网兑换棋牌| 欢乐谷娱乐城信誉| 新锦江百家乐娱乐场| 百家乐官网小揽| 英吉沙县| 百家乐最新破| 风水24山图解| 百家乐官网游戏机高手| 大发888玩哪个能赢钱| 百家乐香港六合彩| 百家乐官网号游戏机| 福清市| 威尼斯人娱乐城备用网址| 肯博百家乐现金网| 立即博百家乐官网娱乐城| 同花顺国际娱乐城| E世博百家乐的玩法技巧和规则| 网上玩百家乐官网游戏有人挣到钱了吗| 丰县| 全讯网3532888| 澳门百家乐几副牌|