色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發燒友App

硬聲App

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

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

3天內不再提示
電子發燒友網>電子資料下載>嵌入式開發>單片機程序到底是如何運行的?資料下載

單片機程序到底是如何運行的?資料下載

2021-04-09 | pdf | 252.25KB | 次下載 | 2積分

資料介紹

我們在之前的四期中對利用單片機的功能進行程序設計進行了說明。單片機內置了非常便于使用的外設功能,大家一定也能感受到單片機可應對各種要求的能力。但是,如果要有效地運行單片機,程序是不可或缺的,那么程序到底是如何運行的呢?從本期開始,我們將分兩期連續向大家介紹單片機與程序的關系。 關注單片機的存儲器 在此之前,GR-SAKURA電路板(搭載瑞薩電子單片機“RX63N”)的程序設計是使用Web編譯器來進行的。將通過編譯器搭建的程序(Object Code,結果代碼)如同寫入U盤一樣將之傳送到GR-SAKURA電路板后再執行。那么,問題來了。寫入(傳送到)單片機的程序應該保存在哪兒呢?另外,程序又是如何被執行的呢?在解答這些問題的同時,讓我們一起來了解一下單片機與程序的關系吧。 首先來了解存儲器﹑主存儲器和外置存儲器的兩種作用 記憶(保存)程序和數據的地方即存儲器。存儲器有以下兩種類型。 主存儲器 CPU能夠直接進行存取的存儲器,用于保存正在執行中的程序和數據 外置存儲器(輔助存儲器、二級緩存器) 不能從CPU直接進行存取,需通過USB或串行、并行的各種I/O來進行存取,用于保存不在執行當中(處理中)的應用和數據 外置存儲器中的程序需傳送到主存儲器后才能執行。 關于單片機的存儲器,常會看到ROM(Read Only Memory:只讀存儲器)和RAM(Random Access Memory:可讀寫存儲器)等詞匯,其實ROM和RAM僅是表示存儲器性質,而與存儲器的作用無關。 地址空間(內存空間) CPU能夠直接進行讀寫的所有空間被稱為“地址空間(或內存空間)”。這個地址空間的每個字節都標注有號碼。這個號碼稱為“地址(address)”,一般以十六進制來表示。上面所介紹過的主存儲器都包含在地址空間內。 根據不同用途,單片機的CPU已開發出了4位、8位、16位和32位。在GR-SAKURA中使用的RX63N單片機搭載了32位的CPU,因此也被稱為“32位單片機”。那么,單片機所擁有的地址空間容量到底有多少呢?以RX63N為例,由于是32位的CPU,因此最大能夠指定約40億(2的32次方)個地址。確切地說是4,294,967,296(4x1024x1024x1024)個地址。由于一個地址可以記憶一個字節,這時也可以表示為具有“4GB(千兆字節)的地址空間”(請參考專欄“計算機的單位”)。地址空間的容量越大越能搭載大容量的存儲器, 也可容納更大的程序。因此能夠實現更高功能的應用。 32位字節的CPU所擁有的4G字節的地址空間示例如圖1所示。左邊所示的是以十六進制標示的地址(參考專欄“表示地址的十六進制指的是什么?”)。由于一列保存有4個字節(=32位),所以左邊所標記的地址就是每4個地址的值。 圖1:地址空間及標示例 計算機的單位:位、字節、兆、千兆和兆兆(太) 數據的基本單位是位(b=bit),每個位的值為"0"或"1"。8位為1個字節(B=Byte)。例如,3個字節(3×8位)等同于24位。 電腦存儲設備的容量所使用的單位,大家耳熟能詳的有KB(千字節)、MB(兆字節)、GB(千兆字節)和TB(太字節)等。一般情況下會說1GB=1000MB或者這樣寫出來,但在計算機的世界里,此單位并非為1000倍,而是1024倍(2的10次方),因此正確的表示如下: 1KB(千字節)=2的10次方 = 1,024 字節 1MB(兆字節)=1,024KB = 2的20次方 1,048,576 字節 1GB(千兆字節)=1,024MB = 2的30次方 = 1,073,741,824 字節 1TB(太字節)=1,024GB = 2的40次方 = 1,099,511,627,776字節 表示地址的十六進制指的是什么? 地址空間內的地址以16進制來表示。例如,擁有16位(2的16次方)大小的地址空間中,如果以10進制來表示,就是“從地址0到地址65535”,如果以16進制來表示,則是從“地址0h到地址FFFFh”。在10進制中,每一位所取的值都在0到9之間,而在16進制中,則是0到F(相當于10進制的15)。以16進制表示的數,最后都有一個“h”,標明是以16進制來表示的。 程序保存在哪兒呢?(向量表) 那么,程序被保存在地址空間的什么地方,又是怎么樣開始工作的呢?單片機復位后便開始執行最優先程序。復位是在接通電源或接收到復位信號時發生。實際上,這種“開始執行最優先程序”處理中,有如下所示的兩種方法。 即開始執行程序時,有將執行程序的起始地址設為固定的CPU及將之設為可變地址的CPU。 在將起始地址設為固定的CPU中,大多是從地址0(地址空間中最小的地址)開始執行。這就是程序開始的地點。而且,有時要事先在地址0中實現寫入“下一個要執行的是地址○○”的跳轉(Jump)指令,并將程序預先放置在“地址○○”中。如果改寫“地址○○”,將可獲得與將起始地址設為可變地址同樣的效果。 將起始地址設為可變地址的CPU將起始地址寫入被稱為“向量表”的部分中(圖2)。向量表是只存放地址空間中各種起始地址的特定區域的名稱。一般來說是它放置在地址空間中最大地址的部分。 圖2:RX63N系列的向量表 以RX63N為例,由于地址是以32位來顯示的,為了保存它就需要4個字節。這就意味著圖3中的“復位”部分表示從地址FFFFFFFCh到地址FFFFFFFFh的4個字節中保存了程序的起始地址。CPU復位后將讀取保存于此的地址,并從作了標記的地址開始執行。被寫入向量表的不僅是復位后的起始地址,向量表中還保存發生中斷時程序的起始地址和異常處理(Exception Handling)的起始地址。也正因為保存了發生中斷及異常處理等因多種事由的起始地址,所以才被稱為“表(Table)”。 我們來設想一下使用了向量表的程序處理的情況。圖3表示出了發生非屏蔽中斷(NMI) (*1) 時的處理流程例。 1、產生NMI, 2、讀取寫在向量表的NMI的起始地址(此例中為10000000h), 3、執行所讀取地址(10000000h)中的NMI程序。 圖3:使用向量表進行處理的流程 (*1)非屏蔽中斷(NMI):所謂非屏蔽指的是無法禁止的意思。如有中斷請求,CPU將無條件地執行中斷處理。可用于通過看門狗定時器進行的中斷處理等。關于看門狗定時器,在本連載的第2期--“定時器”中已為大家作了介紹。 如上所述,在將程序的起始地址設為可變的CPU中,由于能夠通過寫入向量表來指定中斷處理的起始地址,因此具有在地址空間中自由配置中斷處理程序的特征。 本期我們介紹了CPU的地址空間與外設功能的關系、以及程序是從哪里開始執行的等內容。如果單片機為32位,就有非常巨大的地址空間可以使用。內存是非常寶貴的資源,所以將保存在內存中的程序設計得小巧非常重要,但32位單片機的地址空間已比16位的大了很多。為了縮小程序,沒有必要進行復雜的編程,我們的程序都是在更易于讀取的目標下來編寫的。 下期我們將通過說明執行程序時的處理和內存的關系來進一步理解單片機的有效運行。? (mbbeetchina)
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統的設計與實現
  10. 0.61 MB  |  2次下載  |  免費
  11. 6基于FPGA的C8051F單片機開發板設計
  12. 0.70 MB  |  2次下載  |  免費
  13. 751單片機窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21548次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537796次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191185次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 尹人综合网 | 中文字幕一区二区三区在线观看 | 欧美精品九九99久久在免费线 | 欧美白人战黑吊 | 欧美日韩中文在线字幕视频 | 日韩精品专区在线影院重磅 | 无码毛片内射白浆视频 | 亚洲日韩欧美国产中文在线 | 国产白浆视频在线播放 | 久久精品国产亚洲AV久五月天 | 寂寞夜晚在线视频观看 | 亚洲青青青网伊人精品 | 领导边摸边吃奶边做爽在线观看 | 久艾草在线精品视频在线观看 | 开心片色99xxxx | 九九热这里只有国产精品 | 99久久99久久精品 | 夜色福利院在线观看免费 | 亚洲免费观看 | 狠狠色狠色综合曰曰 | 国产亚洲精品高清视频免费 | 国产亚洲精品99一区二区 | 天美传媒果冻传媒入口视频 | 久久亚洲精品永久网站 | 善良的女房东味道2在线观看 | 亚洲精品久久久午夜麻豆 | proburn中文破解版下载 | 成人影院久久久久久影院 | 久久中文字幕无码A片不卡 久久中文字幕人妻熟AV女蜜柚M | 亚洲国产夜色在线观看 | 果冻传媒剧情在线观看 | 日本女人bb | 欧美性受xxxx狂喷水 | 曰韩一本道高清无码av | 国产成人精品视频免费大全 | 色欲AV人妻精品麻豆AV | 99久久精品互换人妻AV | 麻豆高潮AV久久久久久久 | 男男免费看 | 国产成人免费观看在线视频 | 啪啪激情婷婷久久婷婷色五月 |