§8.第八次课81基于ARM的嵌入式程序设计1章节幻灯片.pptVIP

§8.第八次课81基于ARM的嵌入式程序设计1章节幻灯片.ppt

  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文档。上传文档
查看更多
宏定义 宏定义伪指令分为:简单宏、参数宏、条件宏、预定义宏及宏释放。 简单宏: # define宏标识符 宏体 参数宏:# define宏标识符(形式参数表) 宏体 条件宏定义: #ifdef 宏标识符 #ifndef 宏标识符 #undef 宏标识符 #define 宏标识符 宏体 #define 宏标识符 宏体 #else #else #undef 宏标识符 #define 宏标识符 宏体 #define 宏标识符 宏体 #endif #endif 条件编译 条件编译伪指令是写给编译器的,指示编译器在满足某一条件时仅编译源文件中与之相应的部分。其格式如右框中所示: #if(条件表达式1) … #elif(条件表达式2) … #elif(条件表达式n) … #else … #endif 5.3.2嵌入式程序设计中的函数及函数库 函数是C语言程序设计的核心。一个较大的C语言程序一般是由一个主函数和若干个子函数组成,每个函数完成一个特定的功能。函数之间也可以相互调用。 函数的格式: 定义性说明格式 : [存储类说明符] 类型说明符 [修饰符] 标识符 (参数表) {函数体} 原型说明格式 : extern 类型说明符[修饰符] 标识符(参数表){函数体} 嵌入式程序设计中的函数及函数库 函数库是为了减少编程工作量,将一些常用的功能的函数放在函数库中供公共使用. 它包括C的标准库函数,也包括一些用户自己编写非标准库。 例如, 44blib.h 是根据基于S3C44B0X处理器的开发板及其功能模块编写的一个C语言函数库。它不属于C语言的标准库。 5.3.3嵌入式程序设计中常用的C语言语句 C语言语句格式为: [标号:] 语句[;] C语言语句很多,常用到的有以下几种: 条件语句 swith语句 循环语句 5.3.4 嵌入式程序设计中C语言的变量、 数组、结构、联合 变量 [存储类型] 类型说明符 [修饰符] 标识符 [=初值] [,标识符[=初值]]…; 数组 一维数组: 类型说明符 标识符 [常量表达式][={初值,初值,…}]; char 标识符[ ] =“字符串”; 二维数组: 类型说明符 标识符[m][n] [={{初值表},{初值表}…}]; 指针数组和数组指针 类型说明符 *标志符 [常量表达式] [={地址,地址,…}]; 类型说明符 (*标志符)[ ][=数组标识符]; 结构说明 [存储类说明符] struct [结构原型名] { 类型说明标识符[,标识符…]; 类型说明标识符[,标识符…]; … }标识符[={初值表} [,标识符[={初值表}]…]; 联合说明 [存储类说明符] union[联合原型名] {类型说明符 标识符[,标识符…]; 类型说明符 标识符[,标识符…]; … }标识符 ={初值表}[,标识符[={初值表}]…]; 5.4 嵌入式C语言程序设计实例 5.4.1 嵌入式C语言程序编写的简单构架 5.4.2 Flash测试代码介绍 程序源代码介绍 整个测试程序主文件main.c的代码构成图如下图所示,由BootLoader启动程序进入C语言主函数main()入口。 5.4.2嵌入式C语言程序编写的简单构架 #include预编译指令 个C语言代码,一般要用#include编译指令将所需要的头文件加到该程序中,这是很有必要的,尤其是对编写较大的程序代码时。随后是定义一些外部变量,并对程序中的函数进行声明。 主函数main()的编写; 在每一个C语言代码中,一定要有一个main()函数,在该函数中完成该程序文件所要完成的各个功能,一般是通过调用各个子函数来完成。当然,它也可以调用其他文件中的函数。 完成相应功能的各个功能函数的编写。 各个函数之间可以相互调用。 5.4.3 Flash测试代码介绍 下面给出功能测试程序中Flash测试程序的代码结构图: 5.5 嵌入式C语言程序设计技巧 5.5.1 变量定义 5.5.2 参数传递 5.5.3 循环条件 5.5.1变量定义 在变量声明的时候,最好把所有相同类型的变量放在一起定义,这样可以优化存储器布局。由下例可以看出: 对于局部变量类型的定义,使用short或char来定义变量并不是总能节省存储空间。有时使用32位int或unsinged int局部变量更有效率一些,如下图所示: 变量定义中,为了精简程序,程序员总是竭力避免使用冗余

文档评论(0)

精品课件 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档