原创 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。 內部