欢迎来到天天文库
浏览记录
ID:36876465
大小:330.00 KB
页数:48页
时间:2019-05-10
《MCS-51单片机C语言程序设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、--以MCS-51单片机为例讲解通信工程学院自动化系主讲人:张志成单片机原理及应用2021/8/23吉林大学通信工程学院Page2课程安排第一章MCS-51单片机概述第二章MCS-51单片机的硬件结构第三章单片机C语言程序设计第四章MCS-51单片机的中断系统第五章MCS-51单片机的定时器/计数器第六章MCS-51单片机的串行通信第七章MCS-51单片机的外围器件及扩展2021/8/23吉林大学通信工程学院Page3第三章单片机C语言程序设计3.1C语言与MCS-51单片机3.2C51的数据类型与运算3.3C51流程控制语句3.4C51构造数据类型3.5C51函数3.6
2、模块化程序设计2021/8/23吉林大学通信工程学院Page43.1C语言与MCS-51单片机一、MCS-51的编程语言四种语言支持MCS-51单片机:BASIC、PL/M、汇编语言和C语言。汇编语言:用汇编程序设计MCS–51系列单片机应用程序时,必须要考虑其存储器结构,尤其必须考虑其片内数据存储器与特殊功能寄存器正确、合理的使用以及按实际地址处理端口数据。C语言:C语言是一种源于编写UNIX操作系统的语言,是一种结构化语言,可产生紧凑代码。2021/8/23吉林大学通信工程学院Page5与汇编语言相比,C语言有如下优点:对单片机指令系统不要求了解,仅要求对8051存储
3、器结构有初步了解;寄存器的分配,不同存储器的寻址及数据类型等细节可由编译器管理;程序有规范的结构,分为不同的函数,使程序结构化;更符合人们的思考习惯;改善了程序的可读性;编程及程序调试时间显著缩短,从而提高效率;提供的库包含许多标准子程序,具有较强数据处理能力;很好的结构性和模块化更容易阅读和维护,而且由于有更好的可移植性很多处理器支持C编译器。2021/8/23吉林大学通信工程学院Page6二、C51编译器用C语言编写的应用程序必须经单片机的C语言编译器(简称C51),转换生成单片机可执行的代码程序。支持MCS–51系列单片机的C语言编译器有很多种。如:American
4、AutomationIARAvocetDunfieldSharewareBso/TaskingKEIL/Franklin2021/8/23吉林大学通信工程学院Page7三、C51程序结构C51源程序大体上是一个函数定义的集合,集合中仅有一个名为main的主函数。主函数是程序的入口,主函数中所有语句执行完毕,则程序执行完成。2021/8/23吉林大学通信工程学院Page8函数定义由类型,函数名,参数表和函数体组成。格式如下:类型函数名(参数表)参数说明;{数据说明部分;执行语句部分;}2021/8/23吉林大学通信工程学院Page9C51程序结构说明:1)C语言是由函数构成
5、的。一个C源程序至少包含一个函数,也可以包含一个main函数和若干其他函数。函数是C程序的基本单位。2)函数分为2大类:一类是库函数,一类是用户自定义函数。库函数是C51在库文件中已定义的函数,其函数说明在其头文件中。用户函数是用户自己定义,自己调用的一类函数。2021/8/23吉林大学通信工程学院Page103)函数由2部分组成:函数说明部分:它包括函数名,函数类型,函数属性,函数参数名和形式参数类型。一个函数名后面必须跟一个(),函数参数可以没有。函数体部分:函数说明部分下面的大括号内的内容。函数体一般包括:变量定义和执行部分(由若干语句组成)2021/8/23吉林大
6、学通信工程学院Page114)一个C51程序总是从main函数开始执行的,而不论main函数在整个程序中的位置如何。5)每个语句和数据定义的最后必须有一个分号。6)C语言本身没有输入/输出语句,输入和输出操作是有库函数scanf和printf等函数来完成的。7)可以用/*~~~*/对C程序中的任何部分作注释。2021/8/23吉林大学通信工程学院Page12C51程序开发过程C51源程序是一个ASCII文件,可以用任何标准的ASCII文件编辑器来编写,如:写字板,记事本等。C51程序机构与一般C语言没有什么差别,程序的书写格式自由度高,灵活性强,有较大的任意性。2021/
7、8/23吉林大学通信工程学院Page13要点如下:1)一般情况下,每个语句占用一行。2)不同结构层次的语句,从不同的起始位置开始,即在同一结构层次中的语句,缩进同样的字数。3)表示结构层次的大括号通常写在该结构语句第一字母的下方,与机构化语句对齐,并占用一行。2021/8/23吉林大学通信工程学院Page14系统库C51源程序C51编译器EPROM编程器链接列表文件浮动目标码模块绝对定位目标码文件用户库硬件仿真器映像文件2021/8/23吉林大学通信工程学院Page15C51与标准C语言的区别C51的语法规定、程序结构及程序设
此文档下载收益归作者所有