用类设计思想实现单片机软件的C程序模块封装.pdf
《用类设计思想实现单片机软件的C程序模块封装.pdf》由会员分享,可在线阅读,更多相关《用类设计思想实现单片机软件的C程序模块封装.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、光电子技术与信息,应用技术用类设计思想实现单片机软件 的程序模块封装采国明,李琦成都电子机械高等专科学校,四川成都摘要在分析程序和程序特点的基础 上,以单片机 系统多串口设备驱动程序的模块化设计为例,提出一种采用类设计思想,实现程序模块封装的方案,以提高程序设计质量该方法适用于嵌入式操作系统、设备驱动程序等复杂的程序设计,特别是基于单片机系统等无法使 用语言编程的驱动程序关 键 词程序设计模块封装单片机系统串口驱动程序中图分 类 号文 献 标识 码文献编号一一一一卜一,。,饰,、,一一、箕,一,一弓言随着计算机软件技术 的发展,软件设计越来越大型化、系统化。支持各种大型软件设计的高级语言和工具
2、有多种,如十、等,其中程序由于有较好的设计思想和较好的编译工具,为程序员最 为钟爱。但是在单 片机程序设计和嵌入式软件系统的开发 中,程序仍占据主导地位。虽然有些嵌入式 系统支持十编程,但程序设计 为了兼容大 多编译 系统,仍然采用程序编写应 用程序,以方一便移植。在进 行程序设计时,要 尽量满足程序的兼容性、可移植性等,这往往令许多开发人员望而生畏。保证兼容性、可移植性的常用方法是模块化设计,但往 往仅停留在对功能的模块化上,真正在编码时很难实现模块 化,各程序 间仍然错综复杂,关 系凌乱。如果在编写程序时不对函数及变量合理组织,将会 出现全局变量、全局 函数太多,以致于还得花费许多精力在命
3、名上,以防止重名在程序设计过程中,收稿日期修改日期一光电子技术与信息还要在使用某些变量时用声明,却不知道对该变量或函数的具体描述和 实现位置,带来了诸多不便,大大降低 程序的可读性,在可移植性方面也体现不 出优势。在经过对、等开发语言和编译工具的一定应用后,进行了另一种尝试,用类设计的思想,尽量 使程序能够达到十的效果。现在有一些嵌入式 系统的驱动程序也 采用类似 的方法,以达到 程序封装的效果。类与结构分析的类结构 与程序中的结构设计相似,但又有很大的优势 即的类结构 不仅有成员属性,而且 还有函数方法、继 承、派 生等性能,因此具有较好 的封装性,为大型程序设计打下 了很好的基础。由于程序
4、和编译器的特点,很难实现继承和派生等功能,如果能够使程序也将属性和方法封装在每个模块中,则可以达到类最 主要的封装功能。的构架和编程 风格与程序的最大区别在于在定义类结构 时,除 了可以声明成员变量外,还 可以声 明成员函数方法,而 且成员函数和成员变量还有公共和私有之分。但程序在定义结构时,只能定义变量,无公共变量和 私有变量之分程序封装 的目的是为了使程序结构明晰,与其他模块的接口简单、明了,调用各个模块的程序无需知道内部实现方法,模块内部和外部的变量与函数的相 互关系是松散关 系。程序设计引人类封装方法的实现把类 的成员变量和成员函数 概念 引人程序 中,当程序的结构具有了成员变量和成员
5、函数属性后,在访问封装模块的变量和函数之前必须与特定的结构联 系起来,这样可以防止变量的重名等错误,从而增 加程序可读性和可 移植性并且模块内部的具体实现与其他模块能够较好地 隔离,达到封装效果。以下分析 的示例代码为 某单片机应用系统 的串口设备通 讯模块的封装及调用方法。经过封装后 的串口驱动程序 可以编译 成目标代码文件或库文件,供应用软件开发人员调用,该模块适用于所有同一种单片机 的软件系统,可移植性较强。即使要将该模块移植到其 他单片机系统,只需在现有框架下,对特别底层的代码做修 改即可。模块封装及初始化将每 个模块作 为一个类 来看 待,声明为一个编译器 能识别 的结构,如以下结构
6、的定义每个模块 需要 的变量均放入该结构 中,其他模块如果需要调用该模块内的变量,则需要 引用该结构名,达到变量的封装。每个模块内部的功能函数也需要放入该结构 中,但各功能函数均定义为函数指针,真正的函数实体在结构之外,并且为局部函数,达到函数的封装。七一一一厂一串口号的主频,适应不 同主频 的单片机波特率一一发送缓冲区大小一一接收缓冲区大 小一一民发送缓冲区首地址上,份接收缓 冲区首地址,发送一个字符“”,接收一个 字符光电子技术与信息,一,发送字串幸双出飞清除接收仔、,清除发送仔忍接收不允许允许接收,检查是否接收到数据,月,、,汀检查是否有数据待发送模块实体创建规则如示例 程序、,、。、,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 设计 思想 实现 单片机 软件 程序 模块 封装
限制150内