原创 Keil C51對C語言的關鍵詞擴展之十: pdata

外部ram通過一個地址指針寄存器來間接訪問,讀寫效率要低於內部ram。 外部ram容量最大可位64KB。 Keil C51提供兩種外部數據存儲方式,pdata和xdata。 1)xdata存儲類型,指示變量可存儲在外部ram 64KB地址

原创 Keil C51對C語言的關鍵詞擴展之十六:sfr16

sfr16定義一個16位的特殊功能寄存器: sfr16 name = address;     name     16位特殊功能寄存器名稱     address     16位特殊功能寄存器地址 一些8051系列產品擁有16位的特

原创 Keil C51內存模型

Keil C51編譯器提供三種類型的內存模型:small,compact,large。 內存模型決定了函數參數、自動變量以及未顯式聲明存儲類型情況下的默認存儲類型。 三種內存模型的默認存儲區域: 內存模型  參數 & 自動變量  全局

原创 Keil C51對C語言的關鍵詞擴展之十七: sbit

sbit用來定義一個特殊功能寄存器的某一位。 sbit name = sfr-name ^ bit-position; sbit name = sfr-address ^ bit-position; sbit name = sbit-a

原创 Keil C51 之LST文件

     Keil C51編譯器在編譯程序時,會生成一個擴展名爲LST的列表文件,也被稱爲listing file。      這個文件包含了有關編譯過程的豐富信息,該文件由多個段組成,其中Symbol Listing 和 Module

原创 Keil C51對C語言的關鍵詞擴展之十八:using

在8051系列單片機中,內部ram的前32個字節被分爲4組,每組8個寄存器。每組的8個寄存器名字都爲R0-R7。通過設置PSW寄存器的兩個位,可以選擇使用4組寄存器中的哪一組。 寄存器組在處理中斷或者使用實時操作系統時非常有用,可以在進入

原创 51單片機啓動代碼:STARTUP.A51

通過Keil編譯器建立工程時,Keil會提示是否添加STARTUP.A51文件到工程,該文件即爲51單片機啓動代碼。 51單片機復位後馬上執行STARTUP.A51文件中的啓動代碼,根據啓動代碼中的設置依次執行以下操作: 內部RAM清零

原创 Keil C51對C語言的關鍵詞擴展之七: data

 8051單片機內部256字節RAM,低128字節既可直接尋址,又可間接尋址,高128字節RAM只能間接尋址(直接尋址方式下,高128字節被映射到SFR特殊功能寄存器)。內部RAM中包含16字節可位尋址區域,該區域起始地址爲20H。 內部