sdcc
單檔案編譯sdcc main.c
packihx main.ihx > main.hex 轉換成微控制器燒寫檔案格式 hex.
多檔案編譯
sdcc
-c foo1.c 編譯第乙個檔案
sdcc
-c foo2.c
編譯第二個檔案
sdcc main.c foo1.rel foo2.rel 編譯第三個檔案並連線整體
sdcc
-cfoo1.c 編譯第乙個檔案
sdcc
-cfoo2.c 編譯第二個檔案
sdcc
-c main.c
編譯第三個檔案
sdcc main.rel foo1.rel foo2.rel
整體連線
定義暫存器:
__sfr __at (
0x80
) p0
定義位變數:
__sbit __at (
0x80
) p0_0 ;
__sbit __at (
0x81
) p0_1 ;
__sbit __at (
0x82
) p0_2 ;
__sbit __at (
0x83
) p0_3 ;
__sbit __at (
0x84
) p0_4 ;
__sbit __at (
0x85
) p0_5 ;
__sbit __at (
0x86
) p0_6 ;
__sbit __at (
0x87
) p0_7 ;
sdcc支援兩種儲存器模式:小模式和大模式。使用儲存器小模式時,sdcc在內部ram中宣告所有不帶儲存型別的變數(如,data、idata、xdata、pdata、bit、code)。使用儲存器大模式時,sdcc在外部ram中宣告所有不帶儲存型別的變數。
採用sdcc編譯時,預設為小模式。如果要強制sdcc使用特定的儲存器模式,可使用以下命令列引數:
sdcc --model-small sdcctest.c或者
sdcc --model-large sdcctest.c
定義中斷服務程式(isr)時,應使用以下格式:
void interrupt_identifier (void) interrupt interrupt_number using bank_number其中interrupt_identifier可以是任意有效的sdcc函式名,interrupt_number代表中斷在中斷向量表中的位置。
中斷服務函式定義的一般形式如下:
新版本中斷格式可能需要加__
void 函式名(void)[interrupt/__ interrupt n] [using/__using n]
sdcc完全支援內嵌彙編。使用該功能時,彙編**應嵌在_asm和_endasm識別符號之間。注意,通過在變數名前加下劃線,內嵌彙編**也可以訪問c變數。
SDCC 2016資料庫峰會(深圳站)學習筆記
本文主要查閱了sdcc 2016資料庫峰會 深圳站 ppt合集後的學習筆記,在此記錄。下面的幾個標題是各個ppt的檔案標題。3月15日,持續七天的圍棋 人機世界大戰 落下帷幕,谷歌的人工智慧機械人 alphago 以4 1大比分戰勝圍棋世界冠軍李世乭九段。此戰成名的智慧型機械人alphago利用 策...
Rails 極簡入門筆記
這裡比較推薦實戰聖經,和ruby china的rails指南 學一門mvc框架,就需要看三個,模型 model 檢視 view 控制器 controller 是怎麼寫的?這裡我也從以上三個角度來極簡介紹下rails。使用rails generate controller welcome指令碼生成乙個...
Docker 最簡實踐筆記
今天開始著手交接,把一些事情大概歸整一下吧。已安裝了幾個映象,包括tomcat等。然後,通過sftp將我們的sys.war上傳到當前目錄。執行以下命令 注意後面有乙個點,當前目錄 t 指定了標籤。如此會生成乙個新的image,可以用docker images命令檢視。執行命令如下 docker ru...