- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机的C语言编程研讨
int FindMax(int a,int b); int FindMin(int a,int b); main() { int nVar1,nVar2,nMax,nMin; nVar1=3; nVar2=5; nMax=FindMax(3,5); //调用求最大值函数 nMin=FindMin(3,5); //调用求最小值函数 while(1); } int FindMax(int a,int b) //求最大值函数体 { return ab ? a:b; } int FindMin(int a,int b) //求最小值函数体 { return ab ? a:b; } Data char var Char code MSG[]=“PARAMETER” Unsigned long xdata array[100]; Float idata x,y ,z Bit lock Unsigned int pdata sion Unsigned char xdata vertor[10][4][4] Sfr P0=0x80; Char bdata flags; Sbit flag0=flags^0; 4.4 指针 注:指针的声明包括3个部分: 目标变量的数据类型 目标变量的存储类型 指针变量自身的存储类型(此指针放在哪里) 指针变量本身的数据类型(8位/16位/32位,根据被指的变量存储类型来决定) 4.7 函 数 函数调用方式:3种 1 把被调函数名作为一个语句 2 被调函数作为表达式的运算对象 resule=2*get(a,b) 3 被调函数作为另一个数的实际参数 m=max(a,get(a,b)) 4.8 C语言编程实例 #includeabsacc.h main() { char c; for(;;) { c=XBYTE[14]; XBYTE[14]=XBYTE[15]; XBYTE[15]=c; } } 循环语句: 1 while(判断句式){} 2 do{语句}while(判断句式) 3 for(表达式1;表达式2;表达式3){语句} 分支程序 1if(表达式){语句} 2 if (表达式){语句}else{语句} 3 switch(表达式){case 常量表达式1:{语句}break; case 常量表达式2:{语句}break; …….. } #include reg51.h Main(){ P2=1; #pragma asm MOV R7,#10; DEL:MOV R6,#20; DJNZ R6,$ //R6-1操作,不为零,跳转到自己本身 DJNZ R7,DEL;//R7-1操作,不为零,跳转到DEL #pragma endasm P2=0; #includereg51.h #define uchar unsigned char sbit P1_1=P1^1; extern void delay4ms(); main() { //unsigned char i; for(;;) { P1_1=0; delay4ms(); P1_1=1; delay4ms() ; } } #includereg51.h #define uchar unsigned char sbit P1_0=P1^0; extern delay1ms(uchar x); void delay4ms(void) { P1_0=0; delay1ms(2); P1_0=1; delay1ms(2); } PUBLIC _DELAY1MS ; DE SEGMENT CODE ; RSEG DE; _DELAY1MS: NOP DELA: MOV R1,#0F8H; LOP1: NOP NOP DJNZ R1,LOP1 DJNZ R7,DELA EXIT: RET END * 第4章 单片机C语言程序设计 第4章 单片机C语言程序设计 4.1.1 C语言的特点及程序结构 一.C语言的特点 1.无须考虑寻址问题和数据类型问题 2.模块化结构 3.丰富的子程序 4.可以与汇编交叉使用 5.可以直接对计算机硬件进行操作。 6.生
文档评论(0)