第4章单片机C语言2.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

4.7函数;4.6.2函数的定义

①无参函数的定义:

返回值类型函数名(){函数体语句}

如果函数没有返回值,可以将返回值类型设为void;

函数以“{”开始,以“}”结束。

②有参函数的定义:

返回值类型函数名(形式参数表列)

形式参数类型说明

{函数体语句

return(返回形参名)

}

也可以这样定义:

返回值类型函数名(类型说明形式参数表列)

{函数体语句

return(返回形参名)

}

其中形式参数表列的各项要用,隔开,通过return语句将需返回的值返回给调用函数。;Microcontroller单片机的C语言203;Microcontroller单片机的C语言204;被调函数出现在主调函数之前,可以不对被调函数说明下面以一个简单例子来说明:

intfun1(a,b)

inta,b;

{intc;

c=a+b;

return(c);

}

main()

{

intd,u=3,v=2;

d=2*fun1(u,v);

}

此例中被调函数在主调函数前,不用说明。

;4.8单片机的C语言编程实例

由于C51编译器是针对单片机的,因此ANSIC中的scanf和printf等对PC机的输入/输出语句无效,运算的数据可以通过变量置入或取出,这时C51会自动安排使用的存贮单元。也可以用户自行通过具体的内存地址置入数据或从特定地址取出数据。

C语言的上机调试和汇编程序使用同一仿真调试软件。

下面是一个C语言程序编译后生成的机器代码及对应的反汇编程序。;#includeabsacc.h

main()

{

charc;

for(;;)

{c=XBYTE[14];

XBYTE[14]=XBYTE[15];

XBYTE[15]=c;

}

}

程序中为方便反复观察,使用了死循环语句for(;;),只要用Ctrl+C即可退出死循环。;例中可见:

①一进入C语言程序,首先执行将内部RAM的0~7FH128个单元清零,然后置SP为07H(视变量多少不同,SP置不同值,依程序而定),因此如果要对内部RAM置初值,一定要在执行了一条C语言语句后??行。

②C语言程序设定的变量,C51自行安排寄存器或存贮器作参数传递区,通常在R0~R7(一组或两组,视参数多少定),因此,如果对具体地址置数据,应避开这些R0~R7的地址。

③如果不特别指定变量的存贮类型,通常被安排在内部RAM中。

;Microcontroller单片机的C语言209;可见定义为unsignedlong类型,给每个变量分配四个单元,如果定义类型不对,将得不到正确的结果。

如果未定义变量类型,默认为内部RAM,如a、b、c变量。

对于复杂的运算通常采用查表的方法。如同汇编程序设计一样,在程序存贮器建立一张表,在C语言中表格定义为数组,表内数据(元素)的偏移量表现为下标。数组的使用如同变量一样,要先进行定义:即说明数组名、维数、数据类型和存贮类型,在定义数组的同时还可以给数组各元素赋初值。通过下例说明C51数组的定义方法和用C语言编查表程序的方法。;进入while;Microcontroller单片机的C语言212;Microcontroller单片机的C语言213;Microcontroller单片机的C语言214;例:片内RAM的20H单元存放一个有符号数x,函数y与x有如下关系式:(设y存放于21H单元)

xx>0

y=

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档