1 / 37
文档名称:

模块化编程的分层设计经验.docx

格式:docx   页数:37
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

模块化编程的分层设计经验.docx

上传人:翩仙妙玉 2012/10/21 文件大小:0 KB

下载得到文件列表

模块化编程的分层设计经验.docx

文档介绍

文档介绍:模块化编程的分层设计经验
操作要点:
1、每一层直接对下一层操作,尽量避免交叉调用或越级调用
2、某些器件会把硬件驱动层合并成一个文件时,则归于较高的层
3、相同功能的外部函数尽量一致,尽量保证通用性
4、对于初次编程的模块,要严格保证中间各层的正确性好处:
1、对于后期维护扩展,只需修改应用层和物理层,根据需要扩展功能层
2、一个新项目只需把要用到的文件加入工程,简单修改调试就出来了
3、随着模块的不断积累,新的项目将越来越容易完成,后期的维护扩展也变得非常简单了
4、对于C语言编程,只需简单修改物理层就可完成不同单片机间的移植一般分为以下几层:
   ---应用层--面向用户
软|     ↓
件|---协议层--现成的协议栈、软件包、标准库,大多是移植,不自己写,如FAT、TCPIP、OS、GAME等
相|     ↓
关|     ↓
   ---功能层--实现器件无关性,实现器件的各种功能扩展和器件通用性处理,如LCD的线、圆、矩形等功能,如EEPROM的块写,自己的print
硬|     ↓     
件|---器件层--实现硬件无关性,保证IO无关性,只提供器件的基本功能,如字节读写、点
驱|     ↓
动---物理层--IO相关,直接操作硬件,实现硬件连接的多种方案
对应文件举例1:
   ---应用层--面向用户的主程序
软|     ↓
件|---协议层--如FAT、TCPIP、OS等现成的协议栈、算法、游戏等
相|     ↓
关|     ↓
   ---功能层--;;;;;;;引出LCD的线、圆、矩形、填充等功能
硬|     ↓             ↓
件|---器件层--;;;;;;;;,引出基本的初始化、定位、写点、写字节函数
驱|     ↓             ↓
动---物理层--;;引出器件的基本读写函数
对应文件应用举例2:
   ---应用层--面向用户的主程序
软|     ↓
件|---协议层--如FAT、TCPIP、OS等现成的协议栈、算法、游戏等
相|     ↓
关|     ↓
   ---功能层--;;;;;;;如EEPROM的块写统一化
硬|     ↓                         ↓
件|---器件层--;;;;;;等
驱|     ↓             ↓
动---物理层--;
一个大的单片机程序往往包含很多模块,我是这样组织的
1。每一个C源文件都要建立一个与之名字一样的H文件,里面仅仅包括该C文件的函数的声明,其他的什么也不会有,比如变量的定义啊等等不应该有。
2。建立一个所有的文件都要共同使用的头文件,里面当然就是单片机的管脚使用的定义,还有里面放那些需要的KEIL系统的头文件,比如#include<>,#include<.h>等等,,

3,每个C源文件应该包含自己的头文件以及那个共同的使用的头文件,里面还放自己本文件内部使用的全局变量或者以extern定义的全局变量
4。,,也可以直接放在文件的开头部分声明就可以了,
5。对于那些贯穿整个工程的变量,可以放在那个共同的使用的头文件里面,也可以用extern关键字在某个C源文件里面定义,哪个文件要使用就重复定义一下
,只要把C源文件加到工程中,把H文件直接放到相应的目录下面就可以了,不需要加到工程里。
单片机系统模块化编程的一些想法
51核类型单片机是目前应用较为广泛的一款MCU,编写单片机程序常常成为嵌入式软件开发软件入门级的训练。一般而言,51程序代码量少,考虑模块化程序相对较少。一种常规做法就是主程序采用while循环,再者通过中断中设置一些标志位;笔者在51单

最近更新

2025年三亚城市职业学院单招职业倾向性测试题.. 40页

2025年上海中医药大学单招综合素质考试模拟测.. 38页

2025年上海第二工业大学单招职业技能测试模拟.. 39页

2025年中山职业技术学院单招综合素质考试模拟.. 41页

2025年云南交通职业技术学院单招职业倾向性测.. 41页

2025年云南外事外语职业学院单招职业技能测试.. 40页

2025年云南省昭通地区单招职业适应性考试模拟.. 40页

2025年亳州职业技术学院单招综合素质考试题库.. 40页

2025年兰州石化职业技术大学单招职业适应性测.. 42页

2025年兴安职业技术学院单招职业适应性考试模.. 42页

2025年内蒙古化工职业学院单招综合素质考试模.. 39页

2025年内蒙古电子信息职业技术学院单招职业技.. 40页

2025年博尔塔拉职业技术学院单招职业适应性测.. 40页

2025年厦门工学院单招职业适应性测试模拟测试.. 39页

2025年哈尔滨科学技术职业学院单招职业技能考.. 42页

2025年四川文化产业职业学院单招职业技能测试.. 39页

2025年大庆职业学院单招职业倾向性测试模拟测.. 41页

2025年大连装备制造职业技术学院单招职业适应.. 41页

2025年天津商务职业学院单招职业技能测试模拟.. 40页

2025年天津渤海职业技术学院单招职业倾向性考.. 41页

ZR-003 建设单位法人授权书 1页

玩具购销合同通用6篇 10页

2023年四川省凉山州数学中考真题试卷【含答案.. 32页

卫生院医疗质量、医疗安全工作责任书 11页

2025年二手车经理工作总结模板 25页

青岛市电梯安全运行服务规范 20页

急性特发性生理盲点扩大综合征一例 8页

川机管函〔2016〕313号 2页

提升机设备点检登记表 4页

殊胜佛名——现世就获供养超百亿佛功德的佛号.. 19页