- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
研究生单片机应用
单片机C语言构造数据类型 数组(也可以理解为矢量)[下标从0开始] 一维数组 int a[3]={0, 1, 2} 二维数组 int a[2][3]={1, 2, 3, 2, 4, 6} 字符数组 char g[8]={‘E’, ‘A’…} 数组与储存空间,过大数组产生编译错 字符/整型/长整或浮点数组元素: 1/2/4字节, 注意Target选项卡中Memory Model的设定 单片机C语言构造数据类型 指针,把变量的地址放到另一个变量(称作指针)中,通过对这个特殊的变量进行操作,实现特殊的操作。 变量的指针——该变量的地址 指向变量的指针变量——存放别的变量的地址的专门变量,简称指针变量 3. 指针变量的定义 例5.2 指针变量基类型变化的影响 P1 单片机C语言构造数据类型 例5.3 指针变量基类型变化的影响 P2 4. 指针变量的引用——只存放地址 例5.4 通过指针变量访问整型变量 Point1 int *Point1, *Point2 定义整型指针变量 Point1=a; Point2=b; 指定指针变量地址 (*Point1)++相当于a++ *Point1++ 相当于指向下一地址 单片机C语言构造数据类型 例5.5 区分热启动和冷启动。热启动,内部RAM数据值不变,将保存内存特定区域数据,回存相应的变量中;冷启动,内部RAM数据是随机值,要从外部EEPROM读取上次断电时保存的数据,回存相应变量中。 STARTUP . A51 (略) 单片机C语言构造数据类型 Keil C51指针 a.基于存储器,由C语言代码中存储器类型决定,以存储器的类型为参量,编译时才被确定,高效地访问对象,只需1~2字节。 idata*, data*, pdata* 1字节 xdata*, code* 2字节 单片机C语言构造数据类型 b. 一般指针 3个字节 单片机C语言构造数据类型 例,指向地址1678H的xdata数据类型的一般指针 单片机C语言构造数据类型 存储器地址 单片机C语言构造数据类型 结构——不同类型的数据组成整体 例,公交票价3个分量,起点、终点和价格 struct busprice { unsigned char begin; unsigned char end; unsigned int price; }; 单片机C语言构造数据类型 先定义结构类型,再定义变量 定义结构类型同时定义变量 直接定义结构类型变量 单片机C语言构造数据类型 结构不能作为整体赋值、存取、运算函数的参数和返回值。可以“”取地址或“.”引用成员 只有最低一级成员能够赋值、存取、运算。高级引用“?”,最后级引用“.” 结构类型变量的成员可以象普通变量进行各种运算。 单片机C语言构造数据类型 共用体(union)——变量共用内存,空间为最大成员的空间,任意时刻最多存放一个成员的数据,节省内存空间。 好像餐厅一样,不同时间可以为很多人服务,同一时间只提供有限的服务空间 例5.6 浮点数存储 union 单片机C语言构造数据类型 枚举——enum,指定整型变量取值,罗列所有的可取值。 enum day{Sun, Mon, Tue, Wed, Thu, Fri, Sat}d1,d2; 或 enum day{Sun, Mon, Tue, Wed, Thu, Fri, Sat}; enum day d1, d2; 枚举的定义 单片机C语言构造数据类型 枚举列表中每项代表一个整数,默认第1项为0,然后按自然数递增,也可人为初始化某项为一整数,其后依然自然数递增。 enum wuxing{gold, wood, water=6, fire, clay}; 例5.7 红、绿、蓝3色球全排列。 Enum 枚举变量取值 单片机C语言构造数据类型 设置参数,定义共用体变量,当中分量用枚举先到取值,同时表达清楚含义,方便编程和调试。 union Para{ unsigned int Par[6]; unsigned char WrPar[12]; }Set, Coun; enum{T1, T2, R1, R2, R3, C1}Par; 单片机C语言构造数据类型 Typedef 定义类型,声明新类型代替已有类型名。——类型换名而已。 仅声明,不定义变量; 在编译时处理,#define
原创力文档


文档评论(0)