单片机原理及应用Principleand applicationof MCUvoid delay02s(void)/一般函数定义5unsigned char i, j, k;for (i=20; i>0; i--)for (j=20; j>0; j--)for (k=230; k>0; k--);7void delayo2s(unsigned char n)带参数传递的函数(unsigned char i, j, k,for (i=n; i>0; i--)for (j=20; j>0; j--)for (k=230; k>0; k--);7int max(int x, int y)/带参数传递和有返回值的函数(int z;z=x>y? x:yireturn z;7
单片机原理及应用 Principle and application of MCU void delay02s(void) //一般函数定义 { unsigned char i, j, k; for (i=20; i>0; i-) for (j=20; j>0; j-) for (k=230; k>0; k-); } void delay02s(unsigned char n) //带参数传递的函数 { unsigned char i, j, k; for (i=n; i>0; i-) for (j=20; j>0; j-) for (k=230; k>0; k-); } int max(int x, int y) //带参数传递和有返回值的函数 { int z; z=x>y? x:y; return z; }
单片机原理及应用Principleand applicationof MCUreentrantunsigned int fac (unsignedint n)/递归调用必须设置为重置函数1unsignedint resultif(n==0)result=1;C51elseresult=n*fac(n-1))return (result);特有1void TIMERO_isr()interrupt 0 using1//中断函数(count++;if(count==20)(count=O;//时间到反转电平P2 _0=~P2_0;7
单片机原理及应用 Principle and application of MCU unsigned int fac(unsigned int n) reentrant //递归调用必须设置为重置函数 { unsigned int result; if(n==0) result=1; else result=n*fac(n-1); return (result); } void TIMER0_isr() interrupt 0 using 1 //中断函数 { count++; if(count==20) { count=0; P2_0=~P2_0; //时间到反转电平 } } C51 特有
单片机原理及应用Principle and application of MCU三、变量的定义1.一般变量的格式变量名数据类型[存储种类][存储器类型]存储地址(标准C)存储空间(C51特有)数据格式(C51扩充)作用范围(标准C)注意:“方括号项可以缺省
单片机原理及应用 Principle and application of MCU 注意:方括号项——可以缺省 [存储种类] 数据类型 [存储器类型] 变量名 存储地址(标准C) 作用范围(标准C) 存储空间 (C51特有) 数据格式 (C51扩充) 三、变量的定义 1.一般变量的格式
单片机原理及应用Principleand applicationof MCUdatavar = 0;autounsigned char初值为零变量名为var位于片内RAM区无符号字符型自动型该变量位于/定义var为无符号字符型自动变量,data区中且初值为0此部分需要关注与标准C不同的地方
单片机原理及应用 Principle and application of MCU auto unsigned char data var = 0; //定义var为无符号字符型自动变量,该变量位于 data区中且初值为0。 无符号字符型 位于片内RAM区 变量名为var 初值为零 自动型 此部分需要关注与标准C不同的地方!
单片机原理及应用Principleand application of MCU变量名数据类型[存储种类][存储器类型]自动变量在函数内部定义的变量,退出函数(auto)后,分配给该变量的存储单元即自行消失(局部变量)。②外部变量(extern)一一在函数外部定义的变量,可始终保持变量的数值(全局变量)。【强调】一个外部变量只能被定义一次,在定义文件之外的地方使用时需用extern进行声明。静态变量(static)一一静态局部变量/静态全局变量寄存器变量(register)一一以寄存器为存储空间的变量若省略存储种类选项,则变量默认为自动变量
单片机原理及应用 Principle and application of MCU [存储种类] 数据类型 [存储器类型] 变量名 ① 自动变量(auto)——在函数内部定义的变量,退出函数 后,分配给该变量的存储单元即自行消失(局部变量)。 ② 外部变量(extern)——在函数外部定义的变量,可始终 保持变量的数值(全局变量)。 【强调】一个外部变量只能被定义一次,在定义文件之外的 地方使用时需用extern进行声明。 ③ 静态变量(static)——静态局部变量/静态全局变量 ④ 寄存器变量(register)——以寄存器为存储空间的变量 若省略存储种类选项,则变量默认为自动变量