freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

[工學]單片機c語言-資料下載頁

2025-01-19 11:14本頁面
  

【正文】 度最快。表 410給出了第一種情況通過寄存器傳遞參數的規(guī)則。 表 110 C51利用寄存器傳遞參數規(guī)則 參數號 char int long,float 一般指針 1 R7 R6,R7 (低字節(jié) ) R4~R7 R1R2R3(R3為存儲區(qū), R2為高地址 , R1為低地址 ) 2 R5 R4,R5 (低字節(jié) ) R4~R7 或存儲區(qū) R1R2R3或存儲區(qū) 3 R3 R2,R3 (低字節(jié) ) 存儲區(qū) R1R2R3或存儲區(qū) 函數返回值的傳遞 當函數有返回值時,通過寄存器傳遞。 表 111 C51函數返回值傳遞規(guī)則 返回類型 使用的寄存器 說 明 bit C(進位標志 ) 由進位標志位返回 char或 1字節(jié)指針 R7 由 R7返回 int或 2字節(jié)指針 R6, R7 高字節(jié)在 R6,低字節(jié)在 R7 long R4~ R7 高字節(jié)在 R4,低字節(jié)在 R7 float R4~ R7 32位 IEEE格式 一般指針 R1~ R3 R3為存儲區(qū), R1為低地址 四、匯編語言文件及函數編寫方法 匯編語言文件的構成主要有: 定義模塊名、函數聲明、公共函數聲明、引用函數聲明、引用變量聲明、函數定義等部分。 定義模塊 對匯編語言文件定義模塊名,一般一個文件為一個模塊,也可以多個文件為同一個模塊名。 模塊定義格式如下: NAME 模塊名 定義模塊要放在文件的開始。 例如: NAME EXAMP 函數聲明 即對本模塊定義的函數作聲明 , 其格式為 : ?PR?函數名 ?模塊名 SEGMENT CODE 格式中的函數名規(guī)則如上面一所述。 例如: ?PR?DISPLAY?EXAMP SEGMENT CODE ?PR?_RIGHT?EXAMP SEGMENT CODE ?PR?_?MUSIC?EXAMP SEGMENT CODE 說明 : 函數的聲明放在文件的前面,一般在模塊定義之后,并且緊接著模塊定義。 公共函數聲明 如果函數在其它文件(模塊)中調用,必須作公共函數聲明。 聲明格式為: PUBLIC 函數名 例如: PUBLIC DISPLAY PUBLIC _RIGHT_SHIFT PUBLIC _?MUSIC 聲明公共函數應放在函數聲明之后。 引用函數聲明 如果在匯編程序中引用了其它文件中的函數,必須作引用聲明。 聲明格式為: EXTRN CODE(函數名) 例如: EXTRN CODE( KEY) EXTRN CODE( _COUNT) 函數引用聲明中的“ KEY” 函數不傳遞參數;“ _COUNT”函數通過寄存器傳遞參數。 引用變量聲明 如果在匯編程序中引用了其它文件中的變量,必須作引用聲明。 聲明格式為: EXTRN 存儲區(qū)(變量名) 其存儲區(qū)域類型如表 42所示的 7種類型。 例如: EXTRN DATA( TIMER_SEC) EXTRN IDATA( DIS_BUF) ENTRN XDATA( SEND_BUF) 函數編寫格式 匯編語言函數的格式如下: RSEG ?PR?函數名 ?模塊名 函數名: …… …… RET(或 RETI) 五、匯編語言文件編寫舉例 例 16 編寫一個完整的匯編語言程序文件, 文件包含三個函數 ,分別是 定時器 /計數器 T1產生方波信號的中斷函數 、 循環(huán)右移多位函數 和 循環(huán)左移多位函數 ; 參數傳遞: T1的計數初值通過全局變量T1_H、 T1_L傳遞。 左移、右移函數都有 兩個入口參數 (被移位的數、移位的位數)和 返回值 (被移位后的數) ,要求 通過寄存器傳遞 。所有參數都是無符號字符型數據。 程序如下: NAME EXAMP 。定義模塊名 ?PR?T1_INT?EXAMP SEGMENT CODE ?PR?_RIGHT?EXAMP SEGMENT CODE ?PR?_LEFT?EXAMP SEGMENT CODE PUBLIC _RIGHT 。公共函數聲明 PUBLIC _LEFT EXTRN DATA(T1_H) 。引用外部變量聲明 EXTRN DATA(T1_L) CSEG AT 001BH 。設置 T1中斷入口 LJMP T1_INT RSEG ?PR?T1_INT?EXAMP 。定義 T1中斷處理函數 T1_INT: MOV TL1, T1_L MOV TH1, T1_H CPL RETI RSEG ?PR?_RIGHT?EXAMP。 右移函數 _RIGHT : 。R7中為第 1個參數, MOV A, R7 。為將被移位的數 RIGHT_LP: 。R5為第 2個參數 ,移位的位數 RR A 。右移 1位 DJNZ R5, RIGHT_LP MOV R7, A 。保存返回值于 R7中 RET 。為被移位后的數 RSEG ?PR?_LEFT?EXAMP 。左移函數 _ LEFT: 。R7為第 1個參數, MOV A, R7 。為被移位的數 LEFT_LP: 。R5為第 2個參數 , 移位的位數 RL A 。左移 1位 DJNZ R5, LEFT_LP MOV R7, A 。保存返回值于 R7中 RET 。為被移位后的數 END 閱讀本例注意以下幾個方面 : 1)函數的聲明方法和定義方法 3)引用其它文件中的變量的聲明方法和使用方法 4)聲明公共函數的方法 2) 對(中斷處理)函數的定位方法 5)函數中入口參數的傳遞方法,返回參數的傳遞方法 6)外部函數的聲明方法和使用方法 六、在 C51中調用匯編函數的方法 在 C語言文件中調用匯編語言中的函數,必須先聲明再調用,其聲明方法與聲明 C語言函數完全一樣,即: extern 返回值類型 函數名 (參數表 ) 。 例如: extern unsigned char right_shift(char,char)。 extern unsigned char left_shift (char, char)。 對于匯編語言函數的調用方法,與調用 C語言中的函數完全一樣 。 C51集成開發(fā)軟件 Keil C 主要內容 Keil C集成開發(fā)工具簡介 Keil C操作界面 Keil C的使用 項目的運行調試 C51集成開發(fā)軟件 Keil C Keil C: 是德國 KEIL公司開發(fā)的單片機C語言編譯器 。其前身是 FRANKLIN C51,功能相當強大。 181。Vision2: 是一個 for Windows 的、集成化的 C51開發(fā)環(huán)境 。集成了文件編輯處理、項目管理、編譯鏈接、軟件仿真調試等多種功能,是強大的 C51開發(fā)工具。 在后面的討論中,對 Keil C和 181。Vision2兩個術語不做嚴格的區(qū)分, 一般多稱呼為 Keil C,包含有 181。Vision2集成開發(fā)環(huán)境之意。 Keil C集成工具簡介 一、編譯器和鏈接器 Keil C的編譯器和鏈接器包括 C5 A5L51和 BL51。 C51是 C語言編譯器 ,其功能是將 C源代碼編譯生成可重新定位的目標模塊。 A51是匯編語言編譯器 ,其功能是將匯編源代碼編譯生成可重新定位的目標模塊。 L51是鏈接 /定位器 ,其功能是將匯編源代碼和 C源代碼生成的可重定位的目標模塊文件( .OBJ),與庫文件鏈接、定位生成絕對目標文件。 BL51也是鏈接 /定位器 ,除了具有 L51所有的功能之外, (1)可以鏈接定位大于 64KB的程序; (2) 具有代碼域及域切換功能; (3)可用于 RTX51實時多任務操作系統(tǒng)。 二、 LIB51庫管理器 LIB51庫管理器可以把由匯編器、編譯器創(chuàng)建的目標文件構建成目標庫 ( .LIB)。 這些庫是按規(guī)定格式排列的目標模塊,可在以后被鏈接器所使用。 三、模擬調試器 Keil C有三個模擬調試器。 軟件模擬調試器 dScope51 ( 1)模擬程序運行與調試 ,包括 C、匯編、宏匯編程序; ( 2)模擬 CPU及其外圍器件 ,如串行口、定時器 /計數器、 I/O口等。 硬件調試器 tScope51 tScope51用于對硬件目標板進行調試。 監(jiān)視程序 Monitor51 通過串行口, PC機與目標板進行通信,利用 Monitor51,在 PC機上顯示程序的運行情況 Keil C操作界面 編輯狀態(tài)的操作界面主要由 5部分組成:最上面的 菜單欄 、菜單欄下面的 工具欄 、左邊的 工程管理窗口 、中間的 編輯窗口 、下面的 輸出信息窗口 。 菜單項主要有 : 文件 、 編輯 、 視圖 (View)、工程、調試、片內外設 (Peripherals)、工具、軟件版本控制系統(tǒng) (SVCS)、窗口、幫助。 工具都是相應菜單項的快捷操作按鈕 ,所以,下面以介紹菜單項為主線,并指明對應的工具按鈕。 圖 16 Keil C51在編輯狀態(tài)下的操作界面 輸出信息窗口 工程管理器窗口 工具欄 菜單欄 編輯窗口 一、文件( File)菜單 文件菜單下都是常見的項,不再給出對應的工具按鈕。 1) New 2) Open 3) Close 4) Save 5) Save as… 6) Device Database:維護器件數據庫 7) Print Setup… :設置打印機 8) Print 9) Exit 二、編輯( Edit)菜單 1) Undo 2) Redo:恢復上次的撤銷 3) Cut 4) Copy 5) Paste 6) Indent Select Text:縮進一個制表符位 7) Unindent Select Text左移一個制表符位 8) Toggle Bookmark:在當前行置書簽 9) Goto Next Bookmark移光標到下一書簽 10) Goto Previous Bookmark: 移光標到上一個書簽 11) Clear All Bookmark: 清除當前文件中所有的書簽 12) Find… 13) Replace… :查找與替換 14) Find in Files… : 在多個文件中查找字符串 15) Goto Matching Brace: 尋找匹配的各種括號 三、查看( View)菜單 1) Status Bar:顯示或隱藏狀態(tài)欄 2) File Toolbar:顯示或隱藏文件工具欄 3) Build Toolbar:顯示或隱藏編譯工具欄 4) Debug Toolbar:顯示或隱藏調試工具欄 5) Project Windows:顯示或隱藏工程窗口 6) Output Windows:顯示或隱藏輸出窗口 7) Source Browser:打開源文件瀏覽器窗口 8) Disassembly Windows: 顯示或隱藏反匯編窗口 9) Watch amp。 Call Stack Windows: 顯示或隱藏觀察和堆棧窗口 10) Memory Windows: 顯示或隱藏存儲器窗口 11) Code Coverage Windows: 顯示或隱藏代碼覆蓋窗口 12) Performance Analyzer Windows: 顯示或隱藏性能分析窗口 13) Symbol Windows: 顯示或隱藏符號變量窗口 14) Serial Windows 1: 顯示或隱藏串行口窗口 1 15) Serial Windows 2: 顯示或隱藏串行口窗口 2 16) Toolbox:顯示或隱藏工具箱 17) Periodic Windows Update: 在調試運行程序時,周期刷新調試窗口 18) Workbook Mode: 顯示或隱藏工作簿窗口的標簽 19) Option… : 設置顏色、字體、快捷鍵和編輯器選項 四、工程( Proje
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1