- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第8章 单片机C程序设计及应用 8.1 单片机C51程序设计8.1.1 单片机C程序的基本概念 目前仍在使用的单片机开发设计语言大致有两类:汇编语言和C语言。C语言由于其结构化、移植性好和高效性的特点,是进行单片机开发的一种利器。C语言是一种源于编写UNIX操作系统的语言,与汇编语言相比,有以下优点: (1) 不需要了解51单片机的指令系统,仅仅要求初步了解存储器结构。 (2) 程序有规范的结构,可分为不同的函数,使程序结构化。 (3) 程序可读性好。 (4) 提供很多标准库函数,数据处理能力强。 (5) 程序易于做到模块化,移植性好。 8.1.2 单片机C程序的基本结构 C语言是一种通用性很强的结构化程序设计语言。从程序流程的角度来看,单片机C程序可以分为3种基本结构:顺序结构、选择结构和循环结构。这3种基本结构可以组成各种复杂程序。 1.顺序结构 顺序结构程序是仅包含一个main( )函数的简单程序,适当运用表达式语句就能设计出具有某特定功能的顺序结构C51程序。这是一种最简单的基本结构,程序只由低地址向高地址顺序执行指令代码,如图8-1所示。虽然该程序设计方法简单,但在具体运用中的算法仍然采用自顶向下逐步求精的方法进行设计。 图8-1 顺序结构 2.选择结构 使单片机具有决策能力的是选择结构,这种结构也称为分支结构,如图8-2(a)所示。选择结构中包含一个判断框,执行流程根据判断条件P的成立与否,选择执行其中的一路分支。图8-2(b)所示的是特殊的选择结构,即一路为空的选择结构。这种选择结构中,当P条件成立时,执行A操作,然后脱离选择结构;如果P条件不成立,则直接脱离选择结构。它包括if语句结构和switch语句结构两种。 图8-2 选择结构 1) ?if语句结构 C语言的if语句有3种形式:基本if形式、if-else形式、if-else-if形式。 基本if形式语法结构如下: if(表达式) 处理程序; 处理机理是:如果表达式的值为“真”,则执行“处理程序”的语句内容,否则不执行该语句内容。例如: void main( ) { uchar sp0=0, buffer0[2]={0, 0}; if (sp0 == 0) buffer0[sp0]=RXBUF0; //接收串口数据 } if-else形式语法结构如下: if(表达式) 处理程序1; else 处理程序2; 处理机理是:如果if表达式的值为“真”,则执行“处理程序1”的语句内容,否则执行“处理程序2”语句内容。例如: void main( ) { uchar end,rev_flag; if (end == 1) rev_flag0=1; else rev_flag0=0; } if-else-if形式语法结构如下: if(表达式1) 处理程序1; else if (表达式2) 处理程序2; … else (表达式n) 处理程序n; 处理机理是:如果表达式1的值为“真”,则执行与之相对应的“处理程序1”的语句内容;如果表达式2的值为“真”,则执行与之相对应的“处理程序2”的语句内容,依次判断表达式“x”是否为“真”,如果为“真”则执行与之相对应的“处理程序x”语句内容。例如: void main( ) { uchar sp0=0, rev_byte0, buffer0[2]={0, 0}, receive_frame[10]; if (sp0 == 0) { buffer0[sp0]=RXBUF0; //接收串口数据 if (buffer0[0] == 0xEB ) sp0++; } /* 判断第二个字节 */ else if (sp0 == 1) { buffer0[sp0]=RXBUF0;
您可能关注的文档
最近下载
- SY_T 7494-2020 油气田用起泡剂实验评价方法.pdf VIP
- 人机工程学函授真题201307.doc VIP
- 人机工程学复习题人机工程学复习题.doc VIP
- 海信模块机-Hi-Mod模块化空气源热泵(冷水)机组低温强热系列.pdf VIP
- 猪大肠杆菌病病原学研究进展.docx VIP
- WABO CRETE Ⅱ弹性混凝土在桥面铺装层维修中的应用.pdf VIP
- BS EN 12516-2-2014 工业用阀门 外壳设计强度 第2部分:钢制阀壳的计算方法(中文版).pdf
- 人机工程学应用 自考课程大纲.pdf VIP
- 前台接待流程.pptx VIP
- 综合医院中医药工作专项推进行动方案.pdf VIP
文档评论(0)