版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 大課(1)單片機(2)8051單片機(3)8051 CPU核的內部結構(4)8051 CPU核的存儲空間分布(重點、難點) 小課(1)實驗硬件平臺的熟悉(2)IAR開發(fā)環(huán)境的熟悉第1頁/共37頁本周教學主要內容 CC2530和8051的關系; CC2530結構; 物理存儲器的映射(難點) CC2530 GPIO口編程(重點)第2頁/共37頁教學目標 理解cc2530 cc2530 物理存儲器的映射; 掌握CC2530 GPIOCC2530 GPIO口控制原理和編程方法。第3頁/共37頁 CC2530 8051 CPU 核 ROM(32K/64K/128K/256K) RAM(8K) IO接口
2、電路 無線射頻電路 51無線單片機+ +51單片機的相關知識上次課我們已經(jīng)講過,單片機和無線通信又如何中走在一起的呢?第4頁/共37頁 80年代,當單片機技術已經(jīng)廣泛普及,8051如日中天的時候,手機還是價值萬元的大磚頭,語音通訊也只有8K/S的通訊速度,無線通訊技術還僅是美國摩托羅拉等巨頭公司實驗室里的前沿。 90年代,TI投入巨資,開發(fā)短距離通訊芯片,10年努力,卻以失敗告終,據(jù)統(tǒng)計,當時在美國進行無線產(chǎn)品的項目開發(fā),有85%以上的開發(fā)項目會失敗。復雜的高頻,昂貴的設備,完全被封鎖的技術,無線似乎是在“天上”遙不可及。第5頁/共37頁2003年挪威兩家創(chuàng)新公司,CHIPCON (2006年
3、被TI公司2億美元收購)和Nordic 公司,采用CMOS高頻技術將無線收發(fā)器完全集成到芯片內部,外部只有很少的元件, 電路板設計非常簡化,并將8051單片機和高頻電路進行集成,就誕生了”無線單片機”。射頻SoC 單片機(簡稱無線單片機)的出現(xiàn),為不具備無線通訊經(jīng)驗和高頻電路經(jīng)驗的電子工程師,提供了 非常簡單的解決方案。1)專門的設計,將全部的高頻部分電路集成到了電路內部,從無線單片機到天線之間,只有簡單的濾波電路,系統(tǒng)設計者完成不必進行任何高頻電路設計; 2)采用特殊設計,使8051 的微處理器和高頻線路間,實現(xiàn)完美的配合,數(shù)字電路對高頻通訊的影響減低到最??;3)設置了高頻通訊的若干寄存器,
4、將高頻通訊的處理,簡化為對寄存器的簡單操作處理,即你只需要對這 些寄存器進行操作,就可以輕松完成無線通訊功能。代表作有NRF2401,CC1000,NRF905,CC1010,CC2430,CC2530. 4)高度集成SOC,簡化了高頻設計,使開發(fā)無線應用設計轉移到以軟件代碼為中心; 5)大量低價格,直觀顯示為特點的無線開發(fā)、測試工具的誕生,使無線應用開發(fā)成本大大降低; 在家建立自己的無線開發(fā)平臺不是夢想; 6)無線SOC得到了非常廣泛應用,特別是無線鼠標,鍵盤和游戲搖桿等方面。 第6頁/共37頁第7頁/共37頁- 8 -l 高性能、低功耗的8051微控制器內核。l 適應2.4GHz IEEE
5、802.15.4的RF收發(fā)器。l 極高的接收靈敏度和抗干擾性。l 32KB/64KB/128KB/256KB閃存。l 8KB SRAM,具備各種供電方式下的數(shù)據(jù)保持能力。l 強大的DMA功能。l 只需極少的外接元件,即可形成一個簡單應用系統(tǒng)。l 只需一個晶振,即可滿足網(wǎng)狀型網(wǎng)絡系統(tǒng)的需要。CC2530芯片特征第8頁/共37頁- 9 -l 低功耗,主動模式RX(CPU空閑):24mA;主動模式TX在1dB(CPU空閑):29mA;供電模式1(4us喚醒):0.2mA;供電模式2(睡眠定時器運行):1uA;供電模式3(外部中斷):0.4uA;寬電源電壓范圍(2V-3.6V)。l 硬件支持CSMA/
6、CA。l 支持數(shù)字化的接收信號強度指示器/鏈路質量指示(RSSI/LQI)。l 具有8路輸入8位14位ADC。l 高級加密標準AES協(xié)處理器。l 具有看門狗和2個支持多種串行通信協(xié)議的USART。l 1個通用的16位定時器和2個8位定時器,1個IEEE802.15.4 MAC定時器。l 21個通用I/O引腳。CC2530芯片特征第9頁/共37頁- 10 -二、CC2530存儲器及映射 CC2530物理存儲器CC2530存儲空間映射存儲器仲裁第10頁/共37頁CC2530存儲器及映射 物理存儲器:實際存在的具體存儲介質,如下:SRAM未上電時,SRAM的內容未定義,在供電的情況下,SRAM的內容
7、被保留FLASH片上閃存存儲器,主要為了保存程序和常量數(shù)據(jù)。FLASH由一組2KB的頁面組成 信息頁面信息頁面是一個2KB的只讀區(qū)域,它的主要作用是存儲全球唯一的IEEE地址 SFR控制8051CPU內核或外設的一些功能 XREG 是SFR的擴展寄存器,比如射頻寄存器,訪問速度比SFR要慢 第11頁/共37頁- 12 -CC2530存儲器及映射 存儲空間:虛擬的空間,指對存儲器編碼的范圍CODE程序存儲器,只讀存儲空間,用于存放程序代碼和一些常量,有16根地址總線,尋址范圍為0 x00000 xFFFF共64KB DATA數(shù)據(jù)存儲器,可讀/寫的數(shù)據(jù)存儲空間,用于存放程序運行過程中的數(shù)據(jù),直接或
8、間接被1個指令周期訪問。有8根地址總線,因此尋址空間為0 x000 xFF,共256個字節(jié) ,低128B可直接或間接尋址,高128B只能間接尋址XDATA外部數(shù)據(jù)存儲器,可讀/寫的數(shù)據(jù)存儲空間,主要用于DMA尋址,需45個指令周期訪問。有16根地址總線,尋址空間是0 x00000 xFFFF共64KB SFR特殊功能寄存器,可讀/寫的寄存器存儲空間,共有128字節(jié),直接被1個指令周期訪問。對于地址是被8整除的SFR寄存器,每一位還可以單獨尋址 第12頁/共37頁CC2530存儲器及映射 物理存儲器與存儲空間的關系存儲空間只是4種不同的尋址方式概念,并不代表物理具體上的存儲設備,只是存儲空間的概
9、念;而FLASH、SRAM、EEPROM等是具體的物理存儲設備。他們兩者之間的關系是通過映射來聯(lián)系起來的。例如FLASH或者EEPROM都可以作為物理存儲媒介映射到CODE上。 第13頁/共37頁- 14 -CC2530存儲器及映射 映射映射就是將CC2530的物理存儲器映射到其存儲空間上,有兩個作用: 方便方便DMA訪問訪問存儲設備存儲設備 可在可在CODE區(qū)執(zhí)行區(qū)執(zhí)行FLASH或或SRAM中的中的代碼代碼 第14頁/共37頁CC2530存儲器及映射 映射的兩種主要形式:1.CODE存儲器映射存儲器映射 2.XDATA存儲器映射存儲器映射第15頁/共37頁CC2530存儲器及映射 1.COD
10、E存儲器映射l CODE存儲器映射具有兩個功能:存儲器映射具有兩個功能:l 一是將一是將FLASH映射至映射至CODE存儲空間;存儲空間;l 二是執(zhí)行來自二是執(zhí)行來自SRAM的代碼(將的代碼(將SRAM映射至映射至CODE存儲空間)存儲空間) 第16頁/共37頁- 17 -CC2530存儲器及映射 FLASH映射CODE的尋址空間為64KB,而對于CC2530F256設備來說FLASH的存儲空間為256KB首先要解決存儲空間不對稱的問題首先要解決存儲空間不對稱的問題 CC2530將將FLASH存儲器分為幾個存儲器分為幾個bank,每個每個bank的大小是的大小是32KB。對于對于CC2530F
11、256設備來說,它有設備來說,它有8個個bank,分別為,分別為bank0bank7。通過操作寄存器通過操作寄存器FMAP.MAP2:0來控制來控制將哪個編號的將哪個編號的bank映射到映射到CODE區(qū)域區(qū)域 只針對CC2530F32這款芯片,因為這款芯片的的FLASH只有32KB雖然這里有bank0區(qū)域,但是映射的時候bank0總映射的根部的低32KB區(qū)域第17頁/共37頁- 18 -CC2530存儲器及映射 SRAM映射為了便于在SRAM中執(zhí)行代碼,可以將SRAM映射到CODE存儲空間的0 x8000(0 x8000+SRAM_SIZE-1)的區(qū)域 雖然程序從雖然程序從SRAM中運行代碼,
12、但中運行代碼,但是并不代表程序是從是并不代表程序是從SRAM中啟動中啟動的。程序仍舊是從的。程序仍舊是從CODE的普通區(qū)的普通區(qū)域域0 x0000開始執(zhí)行,當程序執(zhí)行到開始執(zhí)行,當程序執(zhí)行到0 x8000時,將執(zhí)行時,將執(zhí)行SRAM中的代碼中的代碼 第18頁/共37頁CC2530存儲器及映射 2.XDATA 映射為了方便DMA控制器能訪問所有的物理存儲空間,CC2530把所有的物理存儲器以及寄存器都映射到XDATA上,包括CODE和SFR部分存儲空間 。第19頁/共37頁- 20 -CC2530存儲器及映射 XDATA包含了所有物理存儲器的映射,包括8KB的SRAM存儲器、XREG、SFR、信
13、息頁面和FLASH存儲器 l SRAM映射的地址范圍是映射的地址范圍是0 x0000到到SRAM_SIZE-1。其中。其中SRAM較高的較高的256字字節(jié)映射到節(jié)映射到DATA存儲空間存儲空間8位地址區(qū)域,即地址范圍從位地址區(qū)域,即地址范圍從SRAM_SIZE-256到到SRAM_SIZE-1 l XREG區(qū)域映射到區(qū)域映射到1KB地址區(qū)域地址區(qū)域0 x6000-0 x63FF l SFR寄存器映射到地址區(qū)域寄存器映射到地址區(qū)域0 x7080-0 x70FF。128個條目的硬件寄存器區(qū)域是個條目的硬件寄存器區(qū)域是通過這一存儲空間訪問的。閃存信息頁面通過這一存儲空間訪問的。閃存信息頁面2KB映射
14、到地址區(qū)域映射到地址區(qū)域0 x7800-0 x7FFF。這是一個只讀區(qū)域,包含有關設備的各種信息。這是一個只讀區(qū)域,包含有關設備的各種信息 l 信息頁面映射到地址區(qū)域信息頁面映射到地址區(qū)域0 x78000 x7FFF l XBANK為為CODE存儲空間的存儲空間的bank07區(qū)域的映射,其地址仍然是區(qū)域的映射,其地址仍然是0 x80000 xFFFF??梢耘渲么鎯ζ骺刂萍拇嫫???梢耘渲么鎯ζ骺刂萍拇嫫鱉EMCTR.XBANK2:0(詳見(詳見存儲器仲裁)決定選擇映射存儲器仲裁)決定選擇映射bank0bank7之間的哪個區(qū)域,比如之間的哪個區(qū)域,比如MEMCTR.XBANK=001,則映射,則映
15、射bank1區(qū)域區(qū)域 第20頁/共37頁- 21 -CC2530存儲器及映射 存儲器仲裁 l 主要功能是解決主要功能是解決CPU與與DMA訪問所有物理存儲器(除了訪問所有物理存儲器(除了CPU內部寄內部寄存器)之間的沖突問題。當存器)之間的沖突問題。當CPU和和DMA之間發(fā)生沖突時,之間發(fā)生沖突時,“存儲器存儲器仲裁仲裁”停止停止CPU或或DMA的總線的總線 l 存儲器仲裁主要有兩個寄存器:存儲器仲裁控制寄存器存儲器仲裁主要有兩個寄存器:存儲器仲裁控制寄存器MEMCTR和和閃存區(qū)映射寄存器閃存區(qū)映射寄存器FMAP,這兩個寄存器用于控制存儲器子系統(tǒng)的各,這兩個寄存器用于控制存儲器子系統(tǒng)的各個方面
16、個方面 第21頁/共37頁- 22 -CC2530存儲器及映射 1.存儲器仲裁控制寄存器MEMCTR l MEMCTR.XMAP必須設置以使得程序從必須設置以使得程序從SRAM執(zhí)行;執(zhí)行;MEMCTR.XBANK決決定定XDATA的高的高32KB映射映射CODE存儲空間的哪個存儲空間的哪個bank區(qū)域區(qū)域 位位名稱名稱復位復位R/W描述描述7:4-0000R0保留保留3XMAP0R/WXDATA映射到代碼,當設置了這一位,映射到代碼,當設置了這一位,SRAM XDATA區(qū)區(qū)域從域從0 x0000到(到(SRAM_SIZE)映射到)映射到CODE區(qū)域的區(qū)域的(0 x8000+SRAM_SIZE-
17、1)這使得程序代碼從)這使得程序代碼從RAM執(zhí)行。執(zhí)行。0:SRAM映射到映射到CODE功能禁用功能禁用1:SRAM映射到映射到CODE功能使能功能使能2:0XBANK000R/WXDATA區(qū)選擇,控制物理閃存存儲器的哪個代碼區(qū)域映區(qū)選擇,控制物理閃存存儲器的哪個代碼區(qū)域映射到射到XDATA區(qū)域(區(qū)域(0 x8000-0 xFFFF)。當設置為)。當設置為0,映射,映射到根底部。到根底部。有效設置取決于設備的閃存大小。寫一個無效設置被忽略有效設置取決于設備的閃存大小。寫一個無效設置被忽略,即不會更新,即不會更新XBANK2:032KB版本只能是版本只能是0(即總是映射到根底部)(即總是映射到根
18、底部)64KB版本:版本:0-1128KB版本:版本:0-3256KB版本:版本:0-7第22頁/共37頁- 23 -CC2530存儲器及映射 2.閃存區(qū)映射寄存器FMAP l 閃存區(qū)映射寄存器閃存區(qū)映射寄存器FMAP控制物理控制物理32KB代碼區(qū)映射到代碼區(qū)映射到CODE存儲空存儲空間的程序地址區(qū)域間的程序地址區(qū)域0 x8000-0 xFFFF 位位名稱名稱復位復位R/W描述描述7:3-00000R0保留保留2:0MAP2:0001R/W閃存區(qū)域映射,控制物理閃存存儲器的閃存區(qū)域映射,控制物理閃存存儲器的哪個代碼映射到哪個代碼映射到XDATA區(qū)域(區(qū)域(0 x8000-0 xFFFF)。當設
19、置為)。當設置為0,映射到根部區(qū)。,映射到根部區(qū)。有效設置取決于設備的閃存大小。寫一有效設置取決于設備的閃存大小。寫一個無效設置被忽略,即不會更新個無效設置被忽略,即不會更新MAP2:032KB版本只能是版本只能是0(即總是映射到根底部(即總是映射到根底部)64KB版本:版本:0-1128KB版本:版本:0-3256KB版本:版本:0-7即最底部的32KB區(qū)域(0 x00000 x7FFF)第23頁/共37頁 作為一個單片機或 嵌入式編程人員,毋容置疑需要熟悉系統(tǒng)中物理存儲器所映射的存儲空間,更需要清楚自己程序里的對象(變量、函數(shù)、參數(shù))所分配的具體存儲空間。 對象空間的缺省分配方式可以通過I
20、AR中的如下界面設置:Code modelCode model負責函數(shù)的缺省分配方式;負責函數(shù)的缺省分配方式;Data modelData model負責靜態(tài)負責靜態(tài)局部變量和全局變量的缺省分配方式;局部變量和全局變量的缺省分配方式;Calling conventionCalling convention負責函數(shù)局部變量和參數(shù)的缺省分配方式;負責函數(shù)局部變量和參數(shù)的缺省分配方式;Location for Location for constants and strconstants and str負責常量和字符串的缺省分布方式負責常量和字符串的缺省分布方式第24頁/共37頁 Data mode
21、l分配表 Code model分配表負責靜態(tài)局部變量和全局變量的缺省分負責靜態(tài)局部變量和全局變量的缺省分配方式;配方式;負責函數(shù)的缺省分配方式;負責函數(shù)的缺省分配方式;第25頁/共37頁 Calling convention負責函數(shù)局部變量和參數(shù)的缺省分配方式;負責函數(shù)局部變量和參數(shù)的缺省分配方式;第26頁/共37頁n當我們要改變對象的缺省分配方式時,可以聲明對象是通過添加一個memory type修飾,使對象具有一個新的存儲類型。 不同的存儲類型意味對應存儲空間、尋址方式、指針類型不一樣不同的存儲類型意味對應存儲空間、尋址方式、指針類型不一樣第27頁/共37頁n例如: (1)_xdata i
22、nt x; 整型變量x將被分配在XDATA存儲空間; (2)_data int x; 整型變量x將被分配在DATA存儲空間;n我們在實際編程過程中,如何選取對象的存儲類型,應該盡量使用訪問效率高的memory type;一般說來,尋址空間越大的memory type訪問效率越低。 第28頁/共37頁 CC2530共有21個可用作數(shù)字輸入、輸出管腳或者其他外圍設備管腳,主要特性如下: (1)數(shù)字輸入、輸出; (2)可以作為普通的輸入、輸出管腳或其他外圍設備管腳; (3)管腳內部具有上下拉電阻(輸入時才有用); (4)可用作外部中斷輸入; 其中,(3)特性少數(shù)管腳沒有;GPIO口作為外圍設備管腳的
23、具體配置可參加CC2530的數(shù)據(jù)手冊73頁的Table 7-1;第29頁/共37頁n21個管腳被分成了3組(1)P0組:8個管腳分別是P0_0-P0_7;(2)P1組:8個管腳分別是P1_0-P1_7;(3)P2組:5個管腳分別是P2_0-P2_4nGPIO口用作普通IO口的應用場合(1)外部設備所要求的通信速率較低低;(2)通信協(xié)議簡單,例如和發(fā)光二極管、按鍵、繼電器等簡單設備的通信第30頁/共37頁n在計算系系統(tǒng)中,一個再復雜的IO接口電路面向CPU的一面都是一組特殊功能寄存器SFR;nCPU 通過讀、寫與IO接口相關聯(lián)的一組SFR來間接和連在IO接口上的外部設備進行信息交換;n普通的輸入
24、、輸出管腳的編程,主要涉及如下幾個sfr(8位): PxSEL:每位所對應的管腳時普通IO還是外圍設備IO; Px: 每位的值和對應管腳的電平一致; PxDIR:每位對應管腳是輸入還是輸出; PxINP:管腳拉電阻選擇這里x可以為0,1,2第31頁/共37頁PxSel:PxSel: 7 6 5 4 3 2 1 7 6 5 4 3 2 1 0 0例:例:PxDIR:PxDIR: 7 6 5 4 3 2 1 07 6 5 4 3 2 1 0例:例:Px:Px: 7 6 5 4 3 2 1 0 7 6 5 4 3 2 1 0第32頁/共37頁nCC2530 GPIO普通輸入、輸出的編程步驟: (1)
25、設置PxSEL,選擇管腳功能; (2)設置PxDIR,選擇管腳方向; (3)設置Px為管腳的初始狀態(tài); n特殊功能寄存器位于8051 CPU存儲空間的SFR區(qū)域,You cannot create a pointer to an object located in SFR memory!也就是說,盡管知道了P0SEL的地址為0 xf3,但我們卻無法通過指針來訪問它!nCC2530中的特殊功能寄存器以及其中的每一位在其頭文件iocc2530.h中已經(jīng)定義好了,我們直接拿來使用就行了如 :P0SEL P0DIR P0 P0_0等。 n位運算要非常熟悉:& | 第33頁/共37頁 本次課開始主要講述了CC2530的物理存儲器如何映射到存儲空間,理解這種映射關系是編程時正確、有效地使用存儲器的前提;CC2530最簡單的片上資源GPIO口的控制原理和編程方法,GPIO口的正確使用將為后面復雜的片上IO接口打下堅實的基礎。第34頁/共37頁查閱資料理解查閱資料理解IOCC2530.hIOCC2530.h中關于定義特殊功能寄存器、特殊功能寄存器位的宏:中關于定義特殊功能寄存器、特殊功能寄存器位的宏:#define SFR(name,addr) _sfr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年食品供應鏈合同模板
- 2024民辦學校教師年度考核聘用合同模板3篇
- 2024年軟件維護服務詳細合同樣本一
- 二零二五年度廠房裝修與室內外防滑及防跌落工程協(xié)議2篇
- 2025年度物業(yè)公司物業(yè)接管合同含年度工作目標3篇
- 2025年度牛奶飲料品牌授權與區(qū)域代理合同2篇
- 2025版精油原料供應鏈金融合作協(xié)議3篇
- 2025年度智能交通建設項目總承包服務協(xié)議下載2篇
- 2025借調合同適用人群范圍
- 二零二五年度企業(yè)培訓合同2篇
- 人工智能 課件 第五章 機器學習
- 2024-2025學年上學期杭州初中英語八年級期末試卷
- 【MOOC】人因工程學-東北大學 中國大學慕課MOOC答案
- 中考數(shù)學復習第二章方程(組)與不等式(組)第三節(jié)分式方程及其應用課件
- 中國慢性阻塞性肺疾病基層診療指南(2024年)解讀
- 水肥一體化智能種植管理技術實施方案
- 《中華人民共和國學前教育法》專題培訓
- 《房產(chǎn)稅法》課件
- 產(chǎn)品質量培訓
- 海洋氣象預測研究
- 2024急性心梗護理常規(guī)
評論
0/150
提交評論