99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

關(guān)于使用GD32 MCU實現(xiàn)位帶操作的指南

GD32MCU ? 來源:djl ? 2019-10-22 08:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

MCS-51單片機可以簡單的將P1口的第2位獨立操作,如P1.2=0;P1.2=1,就是這樣把P1口的第三個腳(BIT2)置0置1。對于32位ARM MCU 我們可以像51單片機一樣單獨的對某個端口的某一個IO單獨操作嗎?答案是可以的。并且這樣就引入了“位帶操作”的概念。簡而言之,為了能夠?qū)崿F(xiàn)單獨的位控制,所以就有了位帶這樣的操作機制。

ARM Cortex-M3處理器采用哈佛結(jié)構(gòu),可以使用相互獨立的總線來讀取指令和加載/存儲數(shù)據(jù)。指令代碼和數(shù)據(jù)都位于相同的存儲器地址空間,但在不同的地址范圍。程序存儲器,數(shù)據(jù)存儲器,寄存器和I/O端口都在同一個線性的4 GB的地址空間之內(nèi)。這是Cortex-M3的最大地址范圍,因為它的地址總線寬度是32位。此外,為了降低不同客戶在相同應(yīng)用時的軟件復雜度,存儲映射是按Cortex-M3處理器提供的規(guī)則預先定義的。

ARM Cortex-M3的自帶的系統(tǒng)外設(shè)也占用了一些地址空間。如GD32F1x0系列設(shè)備的存儲映射,包括指令代碼、SRAM、外設(shè)和其他預先定義的區(qū)域。為了簡化外設(shè)的地址譯碼,每個外設(shè)分配的地址空間都是1KB。

為了實現(xiàn)位帶操作,我們可以設(shè)置GD32的位帶別名區(qū)。對象可以是SRAM、I/O外設(shè)空間,從而實現(xiàn)對這些地方的某一位的操作。這樣就可以把代碼縮小、速度更快、效率更高也更安全。

在尋址空間(32位地址是 4GB)的另一地方,取個別名區(qū)空間,從這地址開始處,每一個字(32BIT)就對應(yīng)SRAM或I/O的一位。這樣,1MB SRAM就可以有32MB的對應(yīng)別名區(qū)空間,就是1位膨脹到32位(1BIT 變?yōu)?個字)。我們對這個別名區(qū)空間開始的某一字操作,置0或置1,就等于它映射的SRAM或I/O相應(yīng)的某地址的某一位的操作。

支持了位帶操作后,用戶可以使用普通的加載/存儲指令來對單一的比特進行讀寫。Cortex-M3處理器提供了兩個支持位帶操作的區(qū)域。其中一個是SRAM區(qū)的最低1MB范圍,第二個是片內(nèi)外設(shè)區(qū)的最低1MB范圍。這兩個區(qū)域中的地址除了普通應(yīng)用外,還有自己的“位帶別名區(qū)”。位帶別名區(qū)把每個比特擴展成一個32位的字。當用戶訪問位帶別名區(qū)時,就可以達到訪問原始比特的目的。

下面的映射公式表明了位帶別名區(qū)的每個32位字如何對應(yīng)位帶區(qū)的某個比特。

位帶別名區(qū)地址 = 位帶別名區(qū)基地址 + (字節(jié)偏移×32) + (位數(shù)×4)

其中:

位帶別名區(qū)地址指的是位帶區(qū)目標比特對應(yīng)在位帶別名區(qū)的地址

位帶別名區(qū)基地址指的是位帶別名區(qū)的起始地址

字節(jié)偏移指的是位帶區(qū)目標比特所在的字節(jié)的字節(jié)地址偏移量

位數(shù)指的是目標比特在對應(yīng)字節(jié)中的位置

例如,要想訪問0x2000 0200地址的第7位, 可訪問的位帶別名區(qū)地址是:

位別名地址= 0x2200 0000 + (0x200 * 32) + (7 * 4) = 0x2200 401C

如果對0x2200 401C進行寫操作,那么0x2000 0200的第7位將會相應(yīng)變化;

如果對0x2200 401C進行讀操作,那么視0x2000 0200的第7位狀態(tài)而返回0x0000 0001或0x0000 0000。

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

    關(guān)注

    68

    文章

    19896

    瀏覽量

    235360
  • 單片機
    +關(guān)注

    關(guān)注

    6067

    文章

    44992

    瀏覽量

    650652
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    兆易創(chuàng)新GD32 MCU閃耀2025慕尼黑上海電子展

    GD32 MCU以高性能與創(chuàng)新生態(tài)閃耀2025慕尼黑上海電子展,從工業(yè),數(shù)字能源到汽車,物聯(lián)網(wǎng),以"芯"驅(qū)動數(shù)字化轉(zhuǎn)型,讓我們一起回顧下慕展上GD32 MCU強大產(chǎn)品矩陣和創(chuàng)新解決方案
    的頭像 發(fā)表于 04-22 14:08 ?1188次閱讀
    兆易創(chuàng)新<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>閃耀2025慕尼黑上海電子展

    GD32與STM32有什么區(qū)別

    電子發(fā)燒友網(wǎng)站提供《GD32與STM32有什么區(qū)別.docx》資料免費下載
    發(fā)表于 04-03 17:27 ?0次下載

    #新年新氣象,大家新年快樂!#emWin應(yīng)用開發(fā)——基于GD32

    emWin 應(yīng)用于基于 GD32 的系統(tǒng)開發(fā)中,可以大大簡化圖形界面的開發(fā)過程。 以下是一個簡單的指南,幫助你在基于 GD32 的項目中集成 emWin: 1. 準備工作 硬件準備 GD32
    發(fā)表于 01-14 16:34

    作為國產(chǎn)MCU龍頭,兆易創(chuàng)新GD32如何在工業(yè)市場開疆拓土?

    電子發(fā)燒友網(wǎng)報道(文/吳子鵬)近日,在以“勇躍?芯征程”為主題的GD32新品發(fā)布會上,兆易創(chuàng)新MCU事業(yè)部產(chǎn)品市場總監(jiān)陳思偉表示,當前工業(yè)自動化增長穩(wěn)健,數(shù)字能源領(lǐng)域則在快速增長,這些領(lǐng)域?qū)⒊?/div>
    的頭像 發(fā)表于 11-28 00:23 ?4150次閱讀

    GD32 MCU入門教程】GD32 MCU GPIO 結(jié)構(gòu)與使用注意事項

    本文是專門為基于GD32 MCU開發(fā)的工程設(shè)計人員提供,主要介紹了GPIO的功能配置、內(nèi)部結(jié)構(gòu)以及在不同場景使用時的注意事項,旨在幫助GD32 MCU開發(fā)者優(yōu)化對通用型輸入輸出端口(G
    的頭像 發(fā)表于 09-07 10:34 ?1680次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 結(jié)構(gòu)與使用注意事項

    GD32 MCU 入門教程】GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的頭像 發(fā)表于 08-25 09:24 ?1382次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> FPU 使用方法

    GD32如何替換STM32

    GD32替換Stm32注意事項
    發(fā)表于 08-23 11:31 ?5次下載

    GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(14)RTC 模塊介紹

    GD32 MCU內(nèi)部提供了一個RTC(實時時鐘)模塊,通過RTC可以實現(xiàn)日歷時鐘、鬧鐘等功能。RTC也可以用于深度睡眠或待機模式的低功耗喚醒。不同系列的GD32
    的頭像 發(fā)表于 08-23 09:18 ?1124次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常見外設(shè)介紹(14)RTC 模塊介紹

    GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(12)FMC 模塊介紹

    閃存控制器(FMC),提供了片上閃存需要的所有功能。FMC 也提供了頁擦除,整片擦除,以及32 整字或 16 半字編程閃存等操作GD32 M
    的頭像 發(fā)表于 08-21 09:56 ?2150次閱讀
    <b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常見外設(shè)介紹(12)FMC 模塊介紹

    GD32 MCU 入門教程】二、GD32 MCU 燒錄說明(3)脫機燒錄

    大部分主流的燒錄器廠商均支持GD32 MCU的燒錄,如ELNEC、致遠電子、貸鋪科技、希爾特、邁斯威志、軒微、天津威磊、Segger、芯園電子、北極星電子等燒錄器廠商。燒錄方式分別有SWD和ISP
    的頭像 發(fā)表于 08-08 17:44 ?2503次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 燒錄說明(3)脫機燒錄

    GD32 MCU 入門教程】二、GD32 MCU 燒錄說明 (2)SWD/JTAG在線下載

    GD32系列MCU支持SWD和JTAG(部分型號不支持)接口進行下載調(diào)試,這些功能通過ARM CoreSight組件的標準配置和鏈狀連接的TAP控制器來實現(xiàn)的。調(diào)試和跟蹤功能集成在ARM
    的頭像 發(fā)表于 08-08 17:34 ?1837次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 燒錄說明 (2)SWD/JTAG在線下載

    GD32 MCU 入門教程】二、GD32 MCU 燒錄說明(1)ISP 燒錄

    ISP:In System Programing,在系統(tǒng)編程,通過MCU片內(nèi)的引導程序進行Flash編程。 GD32片內(nèi)有一個只讀信息塊,用于存放引導裝載程序,引導程序在MCU出廠前就會提前燒錄好
    的頭像 發(fā)表于 08-08 16:20 ?2497次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 燒錄說明(1)ISP 燒錄

    GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(3)使用 Embedded Builder 開發(fā) GD32

    GD32系列為通用型MCU,所以開發(fā)環(huán)境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據(jù)個人喜好來選擇相應(yīng)的開發(fā)環(huán)境。
    的頭像 發(fā)表于 08-08 16:03 ?2688次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發(fā)環(huán)境搭建(3)使用 Embedded Builder 開發(fā) <b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(2)使用 IAR 開發(fā) GD32

    GD32系列為通用型MCU,所以開發(fā)環(huán)境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據(jù)個人喜好來選擇相應(yīng)的開發(fā)環(huán)境。
    的頭像 發(fā)表于 08-08 15:40 ?1470次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發(fā)環(huán)境搭建(2)使用 IAR 開發(fā) <b class='flag-5'>GD32</b>

    GD32 MCU 入門教程】一、GD32 MCU 開發(fā)環(huán)境搭建(1)使用Keil開發(fā)GD32

    GD32系列為通用型MCU,所以開發(fā)環(huán)境也可以使用通用型的IDE,目前使用較多的是KEIL、IAR、 GCC和Embedded Builder,客戶可以根據(jù)個人喜好來選擇相應(yīng)的開發(fā)環(huán)境。
    的頭像 發(fā)表于 08-08 15:01 ?2884次閱讀
    【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】一、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 開發(fā)環(huán)境搭建(1)使用Keil開發(fā)<b class='flag-5'>GD32</b>