導航:首頁 > 操作系統 > 51單片機xdata

51單片機xdata

發布時間:2023-03-02 08:15:09

A. 51單片機定義一個大數組存在idata與xdata中有什麼區別

區別如下:1、位置不同 idata定義在高128位元組中,xdata定義在外部RAM中,一些單片機內部集成了外部RAM。
2、訪問速度不一樣 訪問idata的速度稍快。
3、最後,可能也是最重要的,二者在初始化上區分很大。
在基本所有編譯器下,unsigned char idata num[3]={1,2,3};可以正確編譯,在idata區中,可以看到該數組。
但是unsigned char xdata num[3]={1,2,3},在一些編譯器下,xdata中,看不到該數組,程序可能不正確運行。

B. 如果在51單片機的外部RAM中定義變數,需要將變數用xdata修飾,請問這個變數必須是靜態變數嗎

不需要。不論靜態動態都可以分配到外部RAM空間的。

C. 怎樣用51單片機做計算器啊

1、首先第一步就是要進行查找元器件並放入到原理圖中,如下圖所示。



(3)51單片機xdata擴展閱讀


電腦模擬:

單片機有了開發系統,隨著單片機的發展開發系統也在不斷發展。 keil是一種先進的單片機集成開發系統。

它代表著匯編語言單片機開發系統的最新發展,首創多項便利技術,將開發的編程/模擬/調試/寫入/加密等所有過程一氣呵成,中間不須任何編譯或匯編。

功能特性:

1、可以模擬63K程序空間,接近64K 的16位地址空間;

2、可以模擬64Kxdata 空間,全部64K 的16位地址空間;

3、可以真實模擬全部32 條IO腳;

4,完全兼容keilC51 UV2 調試環境,可以通過UV2 環境進行單步,斷點, 全速等操作;

5、可以使用C51語言或者ASM匯編語言進行調試 ;

6、可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某 變數上就會立即顯示出它此的值;

7、可選 使用用戶晶振,支持0-40MHZ晶振頻率;

8、片上帶有768位元組的xdata,您可以在模擬時選 使用他們,進行xdata 的模擬;

9、可以模擬雙DPTR 指針;

10、可以模擬去除ALE 信號輸出. ;

11、自適應300-38400bps 的所有波特率通訊;

12、體積非常細小,非常方便插入到用戶板中.插入時緊貼用戶板,沒有連接電纜,這樣可以有效地減少運行中的干擾,避免模擬時出現莫名其妙的故障;

13、模擬插針採用優質鍍金插針,可以有效地防止日久生銹,選擇優質園腳IC插座,保護模擬插針,同時不會損壞目標板上的插座. ;

14,模擬時監控和用戶代碼分離,不可能產生不能模擬的軟故障;

15、RS-232介面不計成本採用MAX202集成電路,串列通訊穩定可靠,絕非一般三極體的簡易電路可比。

功能限制:

模擬器佔用單片機串口及定時器2,與Keil C(PC)通訊,故不支持串口及定時器2 的模擬功能。全速運行時單片機串口及定時器2 可供用戶使用。

使用方法:

1、將模擬器插入需模擬的用戶板的CPU插座中,模擬器由用戶板供電;

2、將模擬器的串列電纜和PC機接好,打開用戶板電源;

3、通過Keil C 的IDE 開發模擬環境UV2 下載用戶程序進行模擬、調試。

D. 如何編寫51單片機音樂程序

設計的相關音樂說明

要產生音頻脈沖,只要算出某一音頻的周期(1/頻率),然後將此周期除以2,即為半周期時間。利用半周期時間定時這個半周期時間,每當計時到後就將輸出的I/O反向,然後重復計時此半周期再對I/O反向,就可以在I/O腳上得到此頻率的脈沖。

記數脈沖值與頻率的關系公式如:N=Fi/2/Fr。N:記數值;Fi:內部計時依次為1us,故其頻率為1 MHZ;Fr:要產生的頻率。

其記數值的求法如:T=65536-N=65536-Fi/2/Fr。例:設K=65536,F=1000000=Fi=1 MHZ。求低音DO(26HZ),中音DO(523HZ),高音DO(1046HZ)的記數值。

每個音符使用1個音節,位元組的高四位代表音符的高低,低四位代表音符的節拍。如果1拍為0.4秒,1/4拍為0.1秒,假設1/4拍為 DELAY,則1拍為4 DELAY。

(4)51單片機xdata擴展閱讀

功能特性

1,可以模擬63K程序空間,接近64K 的16位地址空間;

2,可以模擬64Kxdata 空間,全部64K 的16位地址空間;

3,可以真實模擬全部32 條IO腳;

4,完全兼容keilC51 UV2 調試環境,可以通過UV2 環境進行單步,斷點, 全速等操作;

5,可以使用C51語言或者ASM匯編語言進行調試 ;

6,可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某 變數上就會立即顯示出它此的值;

7,可選 使用用戶晶振,支持0-40MHZ晶振頻率;

8,片上帶有768位元組的xdata,您可以在模擬時選 使用他們,進行xdata 的模擬;

9,可以模擬雙DPTR 指針;

10,可以模擬去除ALE 信號輸出. ;

11,自適應300-38400bps 的所有波特率通訊;

12,體積非常細小,非常方便插入到用戶板中.插入時緊貼用戶板,沒有連接電纜,這樣可以有效地減少運行中的干擾,避免模擬時出現莫名其妙的故障;

13,模擬插針採用優質鍍金插針,可以有效地防止日久生銹,選擇優質園腳IC插座,保護模擬插針,同時不會損壞目標板上的插座. ;

14,模擬時監控和用戶代碼分離,不可能產生不能模擬的軟故障;

15,RS-232介面不計成本採用MAX202集成電路,串列通訊穩定可靠,絕非一般三極體的簡易電路可比。

E. mcs-51單片機有哪幾種定址方式

51單片機有7種定址方式:

1、立即定址方式

採用立即定址的指令一般是雙位元組的。第一個位元組是指令的操作碼,第二個位元組是立即數。因此,操作數就是放在程序存儲器中的常數。立即數前面應加前綴「#」號。

2、直接定址方式

採用直接定址的指令一般是雙位元組或三位元組指令,第一位元組為操作碼,第二,三位元組為操作數的地址碼。單片機中,直接地址只能用來表示片內低128位元組單元、專用寄存器和片內RAM的位地址空間。其中專用寄存器和位地址空間只能用直接定址方式來訪問。

3、寄存器定址方式

寄存器定址方式用於訪問選定的工作寄存器R0~R7、A、B、DPTR和進位CY中的數。其中R0~R7由操作碼低三位的8種組合表示,A、B、DPTR、C則隱含在操作碼之中。

4、寄存器間接定址方式

這種定址方式中,指令指定寄存器中的內容為操作數的地址。寄存器間接定址是用於訪問片內數據存儲器或片外數據存儲器。當訪問片內RAM

或片外的低256位元組空間時,可用R0或R1做為間址寄存器;當訪問片外整個64KB的地址RAM空間時,用16位寄存器DPTR做間址寄存器。這類指令都為單位元組的指令,操作碼的最低位表示是採用R0還是R1做間址器。

(5)51單片機xdata擴展閱讀:

51單片機功能特性

1,可以模擬63K程序空間,接近64K的16位地址空間;

2,可以模擬64Kxdata空間,全部64K的16位地址空間;

3,可以真實模擬全部32條IO腳;

4,完全兼容keilC51UV2調試環境,可以通過UV2環境進行單步,斷點,全速等操作;

5,可以使用C51語言或者ASM匯編語言進行調試;

6,可以非常方便地進行所有變數觀察,包括滑鼠取值觀察,即滑鼠放在某變數上就會立即顯示出它此的值;

7,可選使用用戶晶振,支持0-40MHZ晶振頻率;

8,片上帶有768位元組的xdata,您可以在模擬時選使用他們,進行xdata的模擬;

9,可以模擬雙DPTR指針;

10,可以模擬去除ALE信號輸出.;

11,自適應300-38400bps的所有波特率通訊。

F. 51單片機中的data和xdata總共容量是 多少

不能確定,不同牌子及不同型號的單片機,其帶的ram和擴展內存都各不相同,依實際情況而定
一般的,data都有128位元組 晶元內置ram至少128位元組 至多也只256位元組,具體多少可查相關的手冊,data固定指最開頭的128位元組,內置的256位元組內存又稱為idata(包含data),高於128位元組的ram不一定存在
擴展內存為xdata,部分型號的晶元內置有少量的擴展內存,如內置512節字xdata 或1K byte xdata比較常見,如果接外置的擴展內存,則xdata最大可以到640K,實際有多少你得查手冊

G. 51單片機定義一個大數組存在idata與xdata中有什麼區別

存儲的區域不同
idata 是存在 內部RAM 80H--FFH,(對匯編指令來說,不可直接定址,只能間接定址)。
xdata 是存在外部RAM ,有些單片機會在晶元內擴展一些RAM,這部分也要用 xdata,因為是同外部RAM共同編址的,匯編指令中都是用 MOVX來定址。

H. 51單片機定義變數時默認是存儲到哪裡的

未顯式聲明的情況下,變數會根據Memory Model的設置,默認分配在指定的存儲區。

新建工程默認都是Small模式,所以未顯式聲明存儲區域的變數都會分配在data區的。所以才會容易出現data區擠爆、編譯器跳著腳讓你把變數分到idata區去……

I. 51單片機可以通過指針訪問寄存器嗎

data:固定指前面0x00-0x7f的128個RAM,可以用acc直接讀寫的,速度最快,生成的代碼也最小。

idata:固定指前面0x00-0xff的256個RAM,其中前128和data的128完全相同,只是因為訪問的方式不同。idata是用類似C中的指針方式 訪問的。匯編中的語句為:mox ACC,@Rx。

xdata:外部擴展RAM,一般指外部0x0000-0xffff空間,用DPTR訪問。

pdata:外部擴展RAM的低256個位元組,地址出現在A0-A7的上時讀寫,用movx ACC,@Rx讀寫。這個比較特殊,對於C51來說好象有BUG, 建議少用。

code:訪問程序存儲器(默認僅限於標准51能夠定址的64kB空間內),生成的代碼主要通過 MOVC@A+DPTR實現。

far:far是Keil 編譯器為了支持新出現的8051家族增強型MCU,這些增強型MCU可能擁有大於64KB的存儲器。使用far可訪問擴展的RAM,使用**const far可訪問擴展的ROM**。NXP 51MX架構51單片機提供通過通用指針訪問多達8MB的code和xdata存儲空間。Dallas 390架構的51單片機通過24位的DPTR寄存器結合傳統MOVX 、MOVC指令來訪問擴展的RAM和ROM。

閱讀全文

與51單片機xdata相關的資料

熱點內容
php多個分隔符分割 瀏覽:374
表格怎麼轉移到另一個文件夾 瀏覽:923
同態加密gpu 瀏覽:216
程序員告訴你網賭為什麼贏不了 瀏覽:971
程序員最帥操作 瀏覽:72
雲伺服器可以隨時更換嗎 瀏覽:489
老款車在哪裡可以買到app 瀏覽:460
程序員事業單位 瀏覽:68
特來電需要用哪個App 瀏覽:881
電腦如何共享其他伺服器 瀏覽:260
php網站性能優化 瀏覽:354
被子收納袋壓縮真空 瀏覽:30
h1z1選什麼伺服器 瀏覽:484
蘋果版三國殺怎麼在安卓上下載 瀏覽:728
安潤國際app在哪裡下載 瀏覽:438
iospdf教程下載 瀏覽:332
加密貨幣換手率300表示什麼 瀏覽:727
手機wps新建文件夾存照片 瀏覽:399
單片機rgbled 瀏覽:963
怎麼通過文件加密後發給微信好友 瀏覽:90