版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、天津理工大學聾人工學院2021-10-261第第4 4章章 80C5180C51的匯編及的匯編及C C語言程序設計語言程序設計單片機單片機匯編、匯編、C語言概述語言概述4.1C51的的數據類型數據類型與運算與運算4.2C51流程流程控制語句控制語句4.3C51的的指針類型指針類型4.4C51的的函數函數4.5C51編程編程實例實例4.6天津理工大學聾人工學院2021-10-262v 單片機應用系統(tǒng)由單片機應用系統(tǒng)由硬件系統(tǒng)硬件系統(tǒng)和和應用程序應用程序構成構成v 匯編語言匯編語言v 高級語言高級語言v 應用程序設計方法應用程序設計方法 匯編語言匯編語言,生成的目標程序占內存空間少、,生成的目標程
2、序占內存空間少、運行速度快,具有效率高、實時性強。運行速度快,具有效率高、實時性強。 高級語言高級語言,對系統(tǒng)的功能描述與實現簡單,對系統(tǒng)的功能描述與實現簡單,程序閱讀、修改和移植方便,適合于編寫復程序閱讀、修改和移植方便,適合于編寫復雜的程序。如雜的程序。如C51C51 4.1 單片機匯編及單片機匯編及C語言概述語言概述 天津理工大學聾人工學院2021-10-263匯編語言的語句格式匯編語言的語句格式v 非數字字符開頭,后跟字母、數字、非數字字符開頭,后跟字母、數字、“- -”、“?”等等v 不能用已定義的保留字(指令助記符、偽指令等)不能用已定義的保留字(指令助記符、偽指令等)v 后跟英文
3、冒號后跟英文冒號“: :”KeilKeil的匯編器的匯編器A51A51可以識別的語句形式為:可以識別的語句形式為:v 標號(即符號地址)標號(即符號地址)標號: 指令助記符指令助記符 操作數1, 操作數2, 操作數3, ;注釋v 指令助記符指令助記符是指令功能的英文縮寫。是指令功能的英文縮寫。4.1 單片機匯編語言概述單片機匯編語言概述 80C5180C51的匯編語言程序設計的匯編語言程序設計- -自學自學天津理工大學聾人工學院2021-10-2644.1 單片機單片機C語言概述語言概述 4.1.1 C514.1.1 C51程序開發(fā)過程程序開發(fā)過程 v 編譯器能自動完成變量的存儲單元的分配編譯
4、器能自動完成變量的存儲單元的分配v 對常用功能模塊和算法編制相應的函數,方便移植對常用功能模塊和算法編制相應的函數,方便移植v 采用采用C51C51的優(yōu)點的優(yōu)點 C C語言具有良好的可讀性、可移植性和基本的硬件操作能力語言具有良好的可讀性、可移植性和基本的硬件操作能力 。 v C51C51程序開發(fā)過程程序開發(fā)過程 v 編寫源程序編寫源程序v 建立工程,加入源程序建立工程,加入源程序v 編譯生產目標程序編譯生產目標程序v 仿真調試、寫存儲器仿真調試、寫存儲器天津理工大學聾人工學院2021-10-265天津理工大學聾人工學院2021-10-2664.1.2 C514.1.2 C51程序結構程序結構
5、#include #include #include #include void void delaymsdelayms(unsigned)(unsigned);void main(void)void main(void) unsigned char i unsigned char i; P1=0 x01P1=0 x01; dodo for (i=0for (i=0;i=7i=7;i+)i+) delaymsdelayms(5000)(5000); P1=P11P1=P11; if(P1=0 x0)P1=0 x01if(P1=0 x0)P1=0 x01; while(1) while(1);
6、void void delaymsdelayms(unsigned x)(unsigned x) unsigned char j unsigned char j; while(x-)while(x-) for(j=0 for(j=0;j123j123;j+)j+); 天津理工大學聾人工學院2021-10-2674.2.1 C514.2.1 C51的數據類型的數據類型4.2 C51的數據類型與運算的數據類型與運算 數據類型決定其數據類型決定其取值范圍取值范圍、占用、占用存儲器的大小存儲器的大小及可參與及可參與哪種運算。哪種運算。 數據類型數據類型長度長度(位位)取值范圍取值范圍字符型字符型sig
7、ned char8-128127unsigned char80255整整 型型signed int16-3276832767unsigned int16065535長整型長整型signed long32-2147488364821474883647unsigned long3204294967295浮點型浮點型float321.75494E-383.402823E+38位位 型型bit10,1sbit10,1訪問訪問SFRsfr80255sfr1616065535天津理工大學聾人工學院2021-10-268v 盡可能采用無符號格式盡可能采用無符號格式v bitbit用于定義位變量的名字,編譯器
8、會對其分用于定義位變量的名字,編譯器會對其分配地址(配地址(RAMRAM的的20H20H2FH 2FH 區(qū)域區(qū)域)v sbitsbit用于定義位變量的名字和地址,地址是確用于定義位變量的名字和地址,地址是確定的且不用編譯器分配(定的且不用編譯器分配(SFRSFR及及RAMRAM的的20H20H2FH 2FH 區(qū)區(qū)域域)v C51C51編譯器在編譯時會自動進行類型轉換編譯器在編譯時會自動進行類型轉換 幾點說明:幾點說明:天津理工大學聾人工學院2021-10-2694.2.2 C514.2.2 C51數據的存儲類型數據的存儲類型vC51C51的存儲的存儲器器類型類型存儲器類型存儲器類型長度(位)長
9、度(位)對應單片機存儲器對應單片機存儲器bdata1片內片內RAM位尋址區(qū),共位尋址區(qū),共128位。(亦能字節(jié)訪問)位。(亦能字節(jié)訪問)data8直接尋址,共直接尋址,共128字節(jié)。字節(jié)。idata8間接尋址,共間接尋址,共256字節(jié)。字節(jié)。pdata8片外片外 RAM分頁間址,共分頁間址,共256字節(jié)。(字節(jié)。(MOVX Ri)xdata16間接尋址,共間接尋址,共64k字節(jié)。(字節(jié)。(MOVX DPTR)code16ROM間接尋址,共間接尋址,共64k字節(jié)。(字節(jié)。(MOVC A,A+DPTR)天津理工大學聾人工學院2021-10-2610v 經常使用的變量應該置于片內經常使用的變量應該置
10、于片內RAMRAM中,要用中,要用bdatabdata、datadata、idataidata來定義來定義v 不經常使用的變量或規(guī)模較大的變量應該置于片外不經常使用的變量或規(guī)模較大的變量應該置于片外RAMRAM中,中,要用要用pdatapdata、xdataxdata來定義來定義v 默認存儲器類型由編譯控制命令的存儲模式指令限制默認存儲器類型由編譯控制命令的存儲模式指令限制 存儲模式存儲模式默認默認存儲類型存儲類型特特 點點SMALL data小模式。小模式。 變量默認在片內變量默認在片內RAM??臻g小,速度塊??臻g小,速度塊。COMPACTpdata緊湊模式。變量默認在片外緊湊模式。變量默認
11、在片外RAM的頁(的頁(256字節(jié),頁號由字節(jié),頁號由P2口決定)??跊Q定)。LARGExdata大模式。大模式。 變量默認在片外變量默認在片外RAM的的64KB范圍??臻g大,速度慢。范圍。空間大,速度慢。天津理工大學聾人工學院2021-10-26114.2.3 80C514.2.3 80C51硬件結構的硬件結構的C51C51定義定義v特殊功能寄存器的聲明特殊功能寄存器的聲明 sfrsfr 特殊功能寄存器名特殊功能寄存器名 = = 地址常數;地址常數;格式:格式:例如:例如:sfr SCON = 0 x90sfr SCON = 0 x90;sfr P0 = 0 x80sfr P0 = 0 x8
12、0; 天津理工大學聾人工學院2021-10-2612v特殊功能寄存器中特殊功能寄存器中特定位特定位的聲明的聲明 v sbit sbit 位變量名位變量名= =特殊功能寄存器名特殊功能寄存器名 位的位置(位的位置(0 07 7) 例如:例如: sfr PSW=0 xD0sfr PSW=0 xD0; sbit OV=PSW2 sbit OV=PSW2; v sbit sbit 位變量名位變量名 = = 字節(jié)地址字節(jié)地址 位的位置(位的位置(0 07 7) 例如:例如: sbit OV=0 xD02sbit OV=0 xD02; sbit CY=0 xD07 sbit CY=0 xD07; v sb
13、it sbit 位變量名位變量名 = = 位地址位地址 例如:例如: sbit OV=0 xD2sbit OV=0 xD2; sbit CY=0 xD7 sbit CY=0 xD7; 天津理工大學聾人工學院2021-10-2613v內部內部RAMRAM中可位尋址對象的定義中可位尋址對象的定義 v 先先定義變量的數據類型和存儲類型定義變量的數據類型和存儲類型 例如:例如: int bdata ibaseint bdata ibase; char bdata array4 char bdata array4; v 再再利用利用sbitsbit進行聲明進行聲明 例如:例如: sbit mybit0
14、= ibase0sbit mybit0 = ibase0; sbit mybit15 = ibase15 sbit mybit15 = ibase15; sbit ary07 = array07sbit ary07 = array07; 訪問示例:訪問示例:ibase = -1ibase = -1;array2 = array2 = a a; 天津理工大學聾人工學院2021-10-2614v算術運算符和算術表達式算術運算符和算術表達式 4.2.4 C514.2.4 C51的運算符和表達式的運算符和表達式 v 基本算術運算符基本算術運算符 例如:例如: + + 加法運算符;加法運算符; - -
15、減法(取負)運算符;減法(取負)運算符; * * 乘法運算符;乘法運算符; / / 除法運算符;除法運算符; % % 取余數運算符取余數運算符。 示例:示例:25.0/20.0=1.25 25.0/20.0=1.25 25/20=125/20=125%20=5 25%20=5 取負運算優(yōu)先級最高。取負運算優(yōu)先級最高。 天津理工大學聾人工學院2021-10-2615v 自增、自減運算符(自增、自減運算符(僅能用于變量僅能用于變量) 例如:例如: + + 自增運算符;自增運算符; - - 自減運算符;自減運算符;v 類型轉換運算符類型轉換運算符 自動轉換,順序:自動轉換,順序:bitcharint
16、longfloatbitcharintlongfloat 強制類型轉換,如:(強制類型轉換,如:(doubledouble)a a 天津理工大學聾人工學院2021-10-2616v關系運算符關系運算符和和關系表達式關系表達式 v 關系運算符關系運算符 小于;小于; = 大于;大于; = = 大于等于;大于等于; = = = = 等于;等于; != = 不等于。不等于。v 關系表達式關系表達式關系表達式的值為邏輯值:真(關系表達式的值為邏輯值:真(1 1)和假()和假(0 0)天津理工大學聾人工學院2021-10-2617v邏輯運算符邏輯運算符和和邏輯表達式邏輯表達式 v 邏輯運算符邏輯運算符
17、& & 邏輯與;邏輯與; | | 邏輯或;邏輯或; ! 邏輯非。邏輯非。 v 邏輯表達式邏輯表達式邏輯表達式的值為邏輯值:真(邏輯表達式的值為邏輯值:真(1 1)和假()和假(0 0)例:例:5| | 05| | 0結果為結果為1 1,2&02&0結果為結果為0 0 天津理工大學聾人工學院2021-10-2618v位運算符位運算符 & & 按位與;按位與; | | 按位或;按位或; 按位異或;按位異或; 按位取反;按位取反; 右移。右移。 例:例:P1=P11P1=P11表示對表示對P1P1口的所有位左移口的所有位左移1 1位位 天津理工大學聾人工學院2021-10-2619v賦值和復合賦值運
18、算符賦值和復合賦值運算符 v 復合賦值運算符復合賦值運算符 += += 加法賦值;加法賦值; -= -= 減法賦值;減法賦值; * *= = 乘法賦值;乘法賦值; /= /= 除法賦值;除法賦值; %= %= 取模賦值;取模賦值; v 符號符號“= =”稱為賦值運算稱為賦值運算符符 = = = 右移位賦值;右移位賦值; &= &= 邏輯與賦值;邏輯與賦值; |= |= 邏輯或賦值;邏輯或賦值; = = 邏輯異或賦值;邏輯異或賦值; = = 邏輯非賦值邏輯非賦值 例:例:a a* *=5=5相當于相當于a=aa=a* *5 5;b&=0 x80b&=0 x80相當于相當于b=b&0 x80b=b
19、&0 x80。天津理工大學聾人工學院2021-10-26204.3 C51流程控制語句流程控制語句 4.3.1 C514.3.1 C51選擇語句選擇語句 v條件語句條件語句v ifif(條件表達式)語句(條件表達式)語句 例如:例如: if if(p1p1!= 0= 0) c=20 c=20; v ifif(條件表達式)語句(條件表達式)語句1 1 else else 語句語句2 2 例如:例如: if if(p1p1!= 0= 0) c=20 c=20; else c=0 else c=0; 天津理工大學聾人工學院2021-10-2621v ifif(條件表達式(條件表達式1 1)語句)語句
20、1 1 else if else if (條件表達式(條件表達式2 2)語句)語句2 2 else if else if (條件表達式(條件表達式3 3)語句)語句3 3 else if else if (條件表達式(條件表達式n n)語句)語句n n else else 語句語句n+1 n+1 天津理工大學聾人工學院2021-10-2622v開關語句開關語句switch switch (表達式)(表達式) case case 常量表達式常量表達式1 1:語句:語句1 1;breakbreak; case case 常量表達式常量表達式2 2:語句:語句2 2;breakbreak; case
21、 case 常量表達式常量表達式n n:語句:語句n n;breakbreak; default default :語句:語句n+1n+1; 天津理工大學聾人工學院2021-10-26234.3.2 C514.3.2 C51循環(huán)語句循環(huán)語句 vwhilewhile語句語句 v 一般形式為:一般形式為: whilewhile(條件表達式)語句;(條件表達式)語句;如果條件表達式的結果一開始就為假,則后面的語句一如果條件表達式的結果一開始就為假,則后面的語句一次也不能執(zhí)行。次也不能執(zhí)行。 vdo-whiledo-while語句語句 v 一般形式為:一般形式為: dodo語句語句 whilewhil
22、e(條件表達式);(條件表達式);任何條件下,循環(huán)體語句至少會被執(zhí)行一次。任何條件下,循環(huán)體語句至少會被執(zhí)行一次。 天津理工大學聾人工學院2021-10-2624vforfor語句語句v 一般形式為:一般形式為: forfor( 初值表達式初值表達式;條件表達式條件表達式;更新表達式更新表達式 )語)語句句vifif語句與語句與gotogoto語句結合語句結合 v 當型循環(huán)當型循環(huán) 形式為:形式為: looploop:ifif(表達式)(表達式) 語句語句 goto loopgoto loop; 天津理工大學聾人工學院2021-10-2625v 直到型循環(huán)直到型循環(huán) 形式為:形式為: loop
23、loop: 語句語句 ifif(表達式)(表達式) goto loopgoto loop; vcontinuecontinue是一種循環(huán)中斷語句,它并不跳出循環(huán)體;是一種循環(huán)中斷語句,它并不跳出循環(huán)體;vbreakbreak語句只能跳出它所處的那一層循環(huán);語句只能跳出它所處的那一層循環(huán);vgotogoto語句可以用于跳出多重循環(huán)(從內層到外層)。語句可以用于跳出多重循環(huán)(從內層到外層)。注意:注意:天津理工大學聾人工學院2021-10-26264.4 C51的指針類型的指針類型 v有一個變量有一個變量a a,利用,利用&a&a表示變量表示變量a a的地址的地址 。則語句。則語句 p=&a p=
24、&a; 把把a a的地址賦給了指針變量的地址賦給了指針變量p p,則,則“p p指向了變量指向了變量a a”。 v * *P P表示變量表示變量a a的內容的內容指針變量的定義指針變量的定義 char data char data * *p /p /* * 定義指針變量定義指針變量 * */ / p = 30H / p = 30H /* * 為指針變量賦值,為指針變量賦值,30H30H為片內為片內RAMRAM地址地址 * */ / x = x = * *p /p /* * 30H 30H單元的內容送給變量單元的內容送給變量x x * */ /天津理工大學聾人工學院2021-10-2627v 定
25、義時定義時未指定未指定它所指向的它所指向的對象的存儲器對象的存儲器類型類型 4.4.1 4.4.1 一般指針一般指針 v 一般指針占一般指針占3 3個字節(jié)個字節(jié)第一字節(jié)存放該指針的第一字節(jié)存放該指針的默認默認存儲器類型編碼(存儲器類型編碼(見表見表)第二字節(jié)存放該指針的第二字節(jié)存放該指針的高高位地址偏移量位地址偏移量第三字節(jié)存放該指針的第三字節(jié)存放該指針的低低位地址偏移量位地址偏移量 v 存儲器類型編碼存儲器類型編碼 存儲器類型存儲器類型bdata/ data / idataxdatapdatacode編碼編碼0 x000 x010 xfe0 xff天津理工大學聾人工學院2021-10-262
26、8一般指針定義示例:一般指針定義示例:charchar * *xdata strptrxdata strptr; / /* * 指針本身存于指針本身存于xdata xdata 空間,它指向空間,它指向charchar型數據型數據 * */ /intint * *data numberdata number; / /* * 指針本身存于指針本身存于data data 空間,它指向空間,它指向intint型數據型數據 * */ / 由于指向對象的存儲空間在編譯時無法確定(由于指向對象的存儲空間在編譯時無法確定(運行時確運行時確定定),因此必須生成一般代碼以保證對任意空間的對象進),因此必須生成一般
27、代碼以保證對任意空間的對象進行存取。所以行存取。所以一般指針所產生的代碼速度較慢一般指針所產生的代碼速度較慢。天津理工大學聾人工學院2021-10-26294.4.2 4.4.2 基于存儲器的指針基于存儲器的指針v 定義時就定義時就指定指定它所指向的它所指向的對象的存儲器對象的存儲器類型類型 v 指針占指針占1 1個字節(jié)(個字節(jié)(idata idata * *,data data * *,pdata pdata * *)或)或2 2個個字節(jié)(字節(jié)(code code * *,xdata xdata * *) 基于存儲器指針定義示例:基于存儲器指針定義示例:charchar data data
28、* *strstr; / /* * 指針指向的指針指向的charchar型數據存于型數據存于data data 空間空間 * */ /intint xdata xdata * *numnum; / /* * 指針指向的指針指向的intint型數據存于型數據存于xdata xdata 空間空間 * */ / 基于存儲器的指針長度比一般指針短,可以節(jié)省存儲基于存儲器的指針長度比一般指針短,可以節(jié)省存儲器空間,器空間,運行速度快運行速度快,但它所指對象具有確定的存儲器,但它所指對象具有確定的存儲器空間,空間,兼容性不好兼容性不好。天津理工大學聾人工學院2021-10-26304.5 C51的函數的函
29、數 4.5.1 C514.5.1 C51函數的定義函數的定義一般形式一般形式: :返回值類型返回值類型 函數名(形式參數列表)函數名(形式參數列表) 編譯模式編譯模式reentrantinterrupt nusing nreentrantinterrupt nusing n 函數體函數體 v 編譯模式為編譯模式為SMALLSMALL、COPACTCOPACT或或LARGELARGEv reentrantreentrant用于定義可重入函數用于定義可重入函數v interrupt n interrupt n 用于定義中斷函數用于定義中斷函數,n,n為中斷號為中斷號, ,可以為可以為0 03131
30、v using n using n 確定工作寄存器組,取值為確定工作寄存器組,取值為0 03 3 天津理工大學聾人工學院2021-10-26314.5.2 C514.5.2 C51函數的調用與參數傳遞函數的調用與參數傳遞 v 主調函數要向被調函數傳遞所需的參數主調函數要向被調函數傳遞所需的參數v 傳遞給被調函數的數據稱為實際參數,即實參傳遞給被調函數的數據稱為實際參數,即實參v 實參向形參的傳遞是單向的實參向形參的傳遞是單向的v 參數傳遞可以參數傳遞可以采用寄存器采用寄存器、固定存儲器位置方式、固定存儲器位置方式 v參數傳遞參數傳遞v寄存器參數傳遞寄存器參數傳遞傳遞的參數傳遞的參數char、1
31、字節(jié)指針字節(jié)指針int、2字節(jié)指針字節(jié)指針long、float一般指針一般指針參數參數1R7R6、R7R4R7R1、R2、R3參數參數2R5R4、R5R4R7R1、R2、R3參數參數3R3R2、R3R1、R2、R3天津理工大學聾人工學院2021-10-2632vSMALLSMALL模式下,在內部模式下,在內部RAMRAM中完成中完成 vCOMPACTCOMPACT模式下,在外部模式下,在外部RAMRAM中完成中完成vLARGERLARGER模式下,在外部模式下,在外部RAMRAM中完成中完成v固定存儲器位置參數傳遞固定存儲器位置參數傳遞 80C51單片機不采用堆棧傳遞參數。但C51提供一種模擬
32、堆棧,從而支持可重入函數的遞歸調用。 4.5.3 C514.5.3 C51的庫函數的庫函數常用的C51庫函數參見附錄B.2 天津理工大學聾人工學院2021-10-26334.6 C51編程實例編程實例 4.6.1 80C514.6.1 80C51內部資源的編程內部資源的編程 v 中斷服務函數示例中斷服務函數示例中斷函數的定義形式中斷函數的定義形式void void 函數名(函數名(voidvoid)interrupt interrupt n n using m using m 函數體函數體 中斷源中斷源外中斷外中斷0定時器定時器0外中斷外中斷1定時器定時器1串行口串行口中斷號中斷號01234天
33、津理工大學聾人工學院2021-10-2634【例例10-110-1】單片機應用系統(tǒng)中,外中斷單片機應用系統(tǒng)中,外中斷0 0引腳接一個開關,并引腳接一個開關,并行口線行口線P1.0P1.0接一個發(fā)光二級管。要求:開關閉合一次,發(fā)光二接一個發(fā)光二級管。要求:開關閉合一次,發(fā)光二極管的狀態(tài)改變一次。試編寫程序極管的狀態(tài)改變一次。試編寫程序 #include “reg51.h”#include “intrins.h” sbit P10=P10; void delay(void)int a = 5000; while(a - - )_nop_( );void int_srv(void)interrupt
34、 0 delay( ); if(INT0 = =0)P10 = ! P10;while(INT0 = =0); void mainvoid main()() P10 = 0 P10 = 0; EA = 1EA = 1; EX0 = 1EX0 = 1;whilewhile(1 1);); 天津理工大學聾人工學院2021-10-2635v定時計數器編程示例定時計數器編程示例【例例10-210-2】 利用定時利用定時/ /計數器計數器T0T0的方式的方式1 1,產生,產生10ms10ms的定時,的定時,并使并使P1.0P1.0引腳上輸出周期為引腳上輸出周期為20ms20ms的方波,采用中斷方式,設系
35、的方波,采用中斷方式,設系統(tǒng)時鐘頻率為統(tǒng)時鐘頻率為12 MHz12 MHz。1 1、計算計數初值、計算計數初值X X: N Nt/ Tcy t/ Tcy 101010-3/110-3/110-610-61000010000計數器初值應為計數器初值應為-10000-10000。即應將。即應將 - -(10000/25610000/256)送入)送入TH0TH0中,中,- -(10000%25610000%256)送入)送入TL0TL0中。中。 2 2、求、求T0T0的方式控制字的方式控制字TMODTMOD:M1M0=01M1M0=01,GATE=0GATE=0,C/T=0C/T=0,可取方式控制
36、字為,可取方式控制字為01H01H 3 3、程序清單(見下頁)、程序清單(見下頁) 天津理工大學聾人工學院2021-10-2636#include #include “reg51.hreg51.h”sbit P10 = P10sbit P10 = P10;void timer0(void)interrupt void timer0(void)interrupt 1 1 P10 = ! P10 P10 = ! P10; TH0 = -TH0 = -(10000/25610000/256);); TL0 = -TL0 = -(10000%25610000%256);); void mainvoid
37、 main(voidvoid) TMOD = 0 x01TMOD = 0 x01;P10 = 0P10 = 0;TH0 = -TH0 = -(10000/25610000/256););TL0 = -TL0 = -(10000%25610000%256););EA = 1EA = 1;ET0 = 1ET0 = 1;TR0 = 1TR0 = 1;whilewhile(1 1);); 天津理工大學聾人工學院2021-10-26374.6.2 80C514.6.2 80C51擴展資源的編程擴展資源的編程 v 通用并行口編程示例通用并行口編程示例 【例例10-310-3】用用81C5581C55作為微
38、型打印機與單片機間的接口電路。作為微型打印機與單片機間的接口電路。 天津理工大學聾人工學院2021-10-2638#include #include “reg51.hreg51.h”#include #include “absacc.habsacc.h” / /* *含有對含有對XBYTEXBYTE等絕對地址訪問宏的定義等絕對地址訪問宏的定義* */ /#define uchar unsigned char#define uchar unsigned char#define COMD8155 XBYTE0 x7f00#define COMD8155 XBYTE0 x7f00#define PA
39、8155 XBYTE0 x7f01#define PA8155 XBYTE0 x7f01#define PB8155 XBYTE0 x7f02#define PB8155 XBYTE0 x7f02#define PC8155 XBYTE0 x7f03#define PC8155 XBYTE0 x7f03sbit BUSY = P33sbit BUSY = P33; 天津理工大學聾人工學院2021-10-2639uchar code tab17 = 0 xb80 xb8,0 xdf0 xdf,0 xbd0 xbd,0 xcc0 xcc,0 x200 x20, 0 xb30 xb3,0 xf60
40、xf6,0 xb00 xb0,0 xe60 xe6,0 xc90 xc9,0 xe70 xe7,0 x200 x20, 0 x320 x32,0 x300 x30,0 x300 x30,0 x380 x38,0 x0a0 x0a ;/ /* *高教高教 出版社出版社 20082008* */ / uchar t1 = 17;void ptrvoid ptr(uchar duchar d) / /* *打印字符函數打印字符函數* */ / PA8155 = d PA8155 = d; PC8155 = 0 x00PC8155 = 0 x00; / /* *產生選通脈沖產生選通脈沖* */ / PC8155 = 0 x01 PC8155 = 0 x01; whilewhile(BUSYBUSY);); 天津理工大學聾人工學院2021-10-2640void mai
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度安全生產標準化咨詢服務及現場指導合同3篇
- 2024生物質鍋爐余熱回收利用項目合作協(xié)議3篇
- 2025年度大理石地暖系統(tǒng)設計與施工合同3篇
- 2024軟件系統(tǒng)銷售合同系統(tǒng)購買合同
- 2024物業(yè)企業(yè)服務能力提升與市場拓展合作協(xié)議3篇
- 敦煌壁畫與文創(chuàng)知到智慧樹章節(jié)測試課后答案2024年秋酒泉職業(yè)技術學院
- 森林防火施工員聘用協(xié)議
- 建筑工程節(jié)能改造合同
- 別墅鋅鋼欄桿安裝施工協(xié)議
- 健身中心圍墻施工協(xié)議
- 置業(yè)顧問考核方案
- 吉林市2024-2025學年度高三第一次模擬測試 (一模)數學試卷(含答案解析)
- 自考《英語二》高等教育自學考試試題與參考答案(2024年)
- 應急物資智能調配系統(tǒng)解決方案
- 2025年公務員考試時政專項測驗100題及答案
- 《春秋》導讀學習通超星期末考試答案章節(jié)答案2024年
- 2024電力安全工作規(guī)程電力線路部分
- 2024年小學四年級科學考試練習試卷(試卷版)
- 《工業(yè)園區(qū)節(jié)水管理技術規(guī)范(征求意見稿)》編制說明
- GB/T 44186-2024固定式壓縮空氣泡沫滅火系統(tǒng)
- 2024秋七年級數學上冊 第一章 有理數1.8 有理數的乘法 1有理數的乘法教案(新版)冀教版
評論
0/150
提交評論