单片机C语言(模块一)

单片机C语言(模块一)

ID:40723486

大小:2.62 MB

页数:40页

时间:2019-08-06

单片机C语言(模块一)_第1页
单片机C语言(模块一)_第2页
单片机C语言(模块一)_第3页
单片机C语言(模块一)_第4页
单片机C语言(模块一)_第5页
资源描述:

《单片机C语言(模块一)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、《单片机原理及应用(二)》模块一C51程序设计基础任务1:实例导航第二章C与80512.18051的编程语言1、8051的编程语言(四种):(1)BASIC语言(2)PL/MÖ(3)汇编语言Ö(4)C语言目前,汇编语言和C语言是广泛使用的两种单片机编程语言。在未来的一段时间内,汇编语言和C语言还将同时存在,但从发展趋势看,C语言有逐渐取代汇编语言的可能。最好的单片机编程者应是具有汇编语言基础,又精通C语言的。2、C语言的优点(与汇编语言相比):(P41)(1)对单片机的指令系统不要求了解,仅要求对8051的存储

2、器结构有所了解(2)寄存器的分配、不同存储器的寻址及数据类型等细节由编译器管理(3)程序有规范的结构,由不同的函数组成,这种方式可使程序结构化(4)编程及程序调试时间显著缩短,从而提高效率(5)提供库函数,具有较强的数据处理能力403、8051单片机C语言(单片机C51语言)了解一下单片机的种类:(查资料)2.2Cx51编译器编译:C语言源程序转换成机器语言目标程序的过程,叫做编译。编译器:能自动完成编译过程的一种计算机软件。(1)C语言编译器(标准C)(2)C51编译器(经典8051单片机)(3)Cx51编译

3、器(经典8051单片机及派生产品)Cx51编译器完全遵照ANSIC语言标准,支持C语言的所有标准特征。另外,还增加了可以直接支持8051结构的特征。典型产品:KILE套装工具软件----------uVision2集成开发环境的使用(P302)例2-1:用uVision2软件编译调试一个C51程序(HELLO.C)基本步骤:(1)创建一个新项目(建在一个新文件夹下)并为项目选择一个CPU(此时会自动加入启动文件)(2)创建新程序文件(或打开旧程序文件)此例中,打开c:kilec51exampleshel

4、lo(3)将源文件添加到项目中40此时还可修改工具选项(1)编译和链接项目(BuildTarget命令):翻译和链接源文件,并生成一个可以载入到uvision2调试器进行调试的绝对目标模块。(2)调试项目printf(“helloworld!”);它是C语言的库函数,功能是用于程序的输出(显示在屏幕上),对于单片机来说,则必须通过其串行接口才能输出到屏幕上显示。2.5Cx51程序结构(53页)(一)Cx51程序结构特点一个Cx51程序由函数构成,是一个函数定义的集合。Cx51程序由主函数(main)、库函数

5、(如sqrt,scanf,printf等)、用户定义函数组成。(1)主函数:在一个C51程序中,仅有一个名为main的函数(主函数).主函数既是程序的入口,也是程序的出口。也就是说,程序的执行起始于主函数,并且最终结束于主函数。在主函数执行过程中可调用其他函数。(2)库函数:是C51在库文件中已定义的函数,其函数说明在相关的头文件中。这类函数,用户在编程时只要用#include预处理指令将头文件包含在用户文件中,直接调用即可。40例:#includemain(){………..printf("He

6、lloWorld");}(3)用户定义函数:使用前需要用户自己定义。类型函数名(数据类型形式参数,数据类型形式参数,…….){数据说明部分;执行语句部分;}函数体写在一对{}中。例:(P51)unsignedintfetch_rate(){uintcount;do{}while(!FLAG1);FLAG1=0;count=TH1*256+TL1;TH1=0;40TL1=0;Dtime=Btime;return(count/time);}(二)C51程序的编程要点(P53)(1)一个C程序总是从main函数开

7、始执行的,而不论main函数在整个程序中的位置如何,且最终结束于main函数。(2)C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上,每个语句和数据定义的最后必须有一个分号;分号是C语句结束符。(3)可以用/*…*/或//……对C程序中的任何部分作注释。(三)Cx51程序的书写格式(P52)Cx51源程序是一个ASCII码文件,可以用任何标准的ASCII码文本编辑器编写,例如:记事本、写字板等。(1)一般情况下,每个语句占用一行(2)不同结构层次的语句,从不同的起始位置开始,即在同一结构层次中

8、的语句,缩进同样的字数(3)表示结构层次的大括号通常写在该结构语句第一个字母的下方,与结构化语句对齐,并占用一行40例:voidT0Int()interrupt1{C100us--;if(C100us==0){C100us=Tick;//100us计数器为0,重置计数器初值Second++;if(Second==60){Second=0;Minute++;if(Minute==60){

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。