书签 分享 收藏 举报 版权申诉 / 19
上传文档赚钱

类型C语言设计规范课件.pptx

  • 上传人(卖家):三亚风情
  • 文档编号:2493803
  • 上传时间:2022-04-25
  • 格式:PPTX
  • 页数:19
  • 大小:1.13MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《C语言设计规范课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    语言 设计规范 课件
    资源描述:

    1、单片机程序设计规范单片机程序设计规范内部培训内部培训培训内容:单片机程序设计规范培训目的:让员工培养好的编程习惯,了解、掌握编程规范;统一部门编程风格,保证程序编写质量,提高程序的可移植性和维护性单片机程序设计规范一、程序质量的评估 程序的优劣可以从两个方面进行评估,定量指标和定性指标。 (1)定量指标包括: 1) 程序代码执行效率; 2) 程序占用资源多少。 2022-4-25单片机程序设计规范(2)定性指标包括: 1) 可调试性,即是否方便排除程序语法错误; 2) 可测试性,即是否方便验证程序功能的正确性; 3) 可维护性,即是否方便程序的修改和升级; 4) 可移植性; 5) 可读性。 2

    2、022-4-25二、程序架构 应用层、 界面层和底层驱动层1) 底层驱动层主要包含直接和硬件相关的驱动程序,如数码管显示、按键、峰鸣器、继电器和电机控制等。底层的各个模块间要保持各自的独立性,不产生直接的数据交互,底层也不直接访问应用层,如果有需要,都要通过界面层进行数据交互2) 界面层主要提供数据交互,为应用层和底层驱动之间以及底层驱动层各模块之间提供数据的交互。 3) 应用层主要完成具体功能的实现,它要通过界面层控制底层驱动层各模块来完成所需功能,而不能越过界面层直接访问底层驱动层。所有的用户接口要在应用层来实现. 2022-4-25三、设计基本原则 1) 尽量减少各个子程序功能模块间的耦

    3、合度(耦合度是指一个程序的执行对另一个程序的影响力),保证各自的独立性。一般情况下,建议子程序模块功能的划分要尽可能细化,功能尽量单一,减少子程序模块间的数据交互。 2) 在满足功能需求的情况下,可适当牺牲代码的执行速度,以保证程序的透明度。 3) 主要子程序模块间的交互,要通过特定的界面跟应用层进行沟通,可使用 FIFO(Firstin,Firstout)或是Buffer两种方式。每种子程序模块都可以有自己的FIFO。例如:就按键来说,一般有Key buffer、Key FIFO或直接进入AP FIFO 三种设计方式2022-4-254) 每个子程序模块只能有唯一一个程序入口地址在程序的首部

    4、,只能有唯一一个程序出口地址在程序的尾部。 5) 上电复位时要对所有的RAM 空间进行初始化(建议用户寄存器清零,系统寄存器进行必要设定),不要使用未经初始化的变量。RAM 未经过完整的初始化,容易导致程序执行的不确定性,这一不良现象往往在批量生产中有所体现。( 这点是工程师经常犯错的地方,须特别注意) 6) 系统中如果需要等待一些未知的应答信号,如通信或等待输入信号时,必须进行超时或异常处理,以防止程序进入“死等”状态。2022-4-257) 通过对系统数据结构的划分与组织的改进,以及对程序算法的优化来提高空间效率。这种方式是解决软件空间效率的根本办法。8) 保证循环体内的工作量最小化。应仔

    5、细考虑循环体内的语句是否可以放在循环体之外,使循环体内工作量最小,从而提高程序的执行效率。9) 在多重循环中,应将最忙的循环放在最内层。2022-4-2510) 中断处理程序应尽量短。有效的作法为:在中断中进行标记,在主程序中进行处理。但一些实时性要求较高的程序例外。此外,进入中断时应该保存涉及到的变量和寄存器。 11) 看门狗的正确使用。看门狗主要用于微控制器死机时的时间溢出复位,需要程序适时清除。正确的处理方式为:整个系统程序中尽量保证只有一处清看门狗位置,而且应处在主循环的主干位置。切记不可在定时中断中清狗,因为微控制器有时只是在主循环中死掉。2022-4-25四、排版风格1、 程序采用

    6、缩进风格编写,缩进为1个Tab键,1个Tab键定义为8个空格位。 2、 程序中的标号要从第一列开始书写。以“.”开头的预编译命令也要从第一列开始书写,其他预编译命令采用缩进风格编写。 3、定义变量或常量时,变量名或常量名与命令符之间使用2个Tab键(相当于16个空格位)分开,命令符与后面的操作数用1个Tab键(相当于8个空格位)分开。4、程序语句后面若有注释,所有的注释要遵守上下对齐的原则。 2022-4-25五、注释1. 程序应该包括两个部分注释,说明部分和语句注释。一般情况下,源程序有效注释量必须在30以上。 2. 说明部分: 1) 源文件说明部分位于每个源文件的最前面,主要描述:文件名、

    7、作者、生成日期、联络方式、功能描述、版本号、软硬件平台、版权说明、修改记录等的简要说明,以英文书写。2) 子程序说明部分位于每个子程序的最前面,主要描述:子程序名称、功能、设计原理、所用变量、入口条件、出口信息、调用模块、堆栈层数、影响资源、算法简述、使用说明和修改记录等。2022-4-253. 边写代码边注释,修改代码的同时修改相应注释,以保证注释与代码的一致性。不再有用的注释要删除。 4. 要避免在注释中使用缩写,特别是非常用缩写。 5. 程序在必要的地方必须有注释,注释要准确、易懂、简洁。注释要有意义,如果有需要,还要详细描述相关含义。6. 注释格式尽量统一,对多行注释建议使用 “/*

    8、*/”,对单行的注释建议使用 “;” 7. 对有含义的变量、常量,如果其命名不是充分自注释的,在声明时都必须加以注释,说明其含义。2022-4-25六、命名规则1. 变量的名称要采用有意义的英文单词或缩写,如key、buffer2. 局部无特殊含义变量i,j,k等3. 临时变量tem、tmp等开头,长度、计数采用len、num、count等4. 在定义部分要加入注释来说明变量的含义。5. 函数名用小写字母命名,每个词的第一个字母大写,并将模块标识加在最前面。 2022-4-25七、函数设计规范(1)函数的基本要求: 正确性:程序要实现设计要求的功能。 稳定性和安全性:程序运行稳定、可靠、安全。

    9、 可测试性:程序便于测试和评价。 规范可读性:程序书写风格、命名规则等符合规范。 扩展性:代码为下一次升级扩展留有空间和接口。 全局效率:软件系统的整体效率高。 局部效率:某个模块子模块/函数的本身效率高。 2022-4-25(2)编制函数的基本原则: 单个函数的规模尽量限制在200 行以内(不包括注释和空行)。一个 函数只完成一个功能。 函数局部变量的数目一般不超过510 个。 函数内部局部变量定义区和功能实现区 (包含变量初始化)之间空一行。 函数名应准确描述函数的功能。通常使用动宾词组为执行某操作的函数命名。 函数的返回值要清楚明了,尤其是出错返回值的意义要准确无误。 不要把与函数返回值

    10、类型不同的变量,以编译系统默认的转换方式或强制的转换方式作为返回值返回。 减少函数本身或函数间的递归调用。 2022-4-25八、模块化编程规范简介模块化编程主要实现方法:宏定义、函数、文件1)宏定义是C语音的一种预处理的方法,可以通过宏定义实现简单的模块预处理2)利用函数形式实现某个基础功能。通过形参、实参、返回值等实现调用3)文件即是一个.c 文件和一个.h 文件的结合,头文件(.h)中是对于该模块接口的声明;这一条概括了模块化的实现方法和实质:将一个功能模块的代码单独编写成一个.c 文件,然后把该模块的接口函数放在.h 文件中.2022-4-25(1)模块化编程设计步骤 1) 、创建头文

    11、件 在模块化编程中,往往会有多个C 文件,而且每个C 文件的作用不尽相同。在我们的C 文件中,由于需要对外提供接口,因此还必须有一些函数或者是变量提供给外部其它文件进行调用。对于每一个模块都有相应的.c 文件和.h 文件,为了阅读调试方便,原则上.c 文件和.h 文件同名,如delay.c 和delay.h头文件的作用可以称其为一份接口描述文件。2022-4-252)代码封装 将需要模块化的进行代码封装,如:串口通信模块,将串口初始化、数据接收、数据发送函数进行封装3)编译、调试、测试4)使用源文件(将文件加到工程之中) 将.c 文件添加到工程之中,同时在需要调用.h 文件中的宏或函数的.c 文件中将.h 文件包含进去(.h 文件中的宏和函数可以在.c 文件中自由调用)。 2022-4-25 (2 )模块化设计注意事项 1)某模块提供给其它模块调用的外部函数及数据需在.h 中文件中冠以extern 关键字声明; 2) 模块内的函数和全局变量需在.c 文件开头冠以static 关键字声明; 3) 永远不要在.h 文件中定义变量!2022-4-25

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:C语言设计规范课件.pptx
    链接地址:https://www.163wenku.com/p-2493803.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库