1 / 29
文档名称:

嵌入式软件C语言编码规范doc - 标准名称.docx

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

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

嵌入式软件C语言编码规范doc - 标准名称.docx

上传人:cjl201702 2020/9/12 文件大小:129 KB

下载得到文件列表

嵌入式软件C语言编码规范doc - 标准名称.docx

文档介绍

文档介绍:—XXXX嵌入式软件 C语言编码规范EmbeddedSoftware CLanguageCodingSpecification“在提交反馈意见时,请将您知道的相关专利连同支持性文件一并附上”(征求意见稿)(本稿完成日期:2009-12-23)XXXX-XX-XX发布 XXXX-XX-XX实施GB/TXXXXX—XXXX前 言本标准由全国信息技术标准化技术委员会(SAC/TC28)提出并归口。本标准起草单位:中国电子技术标准化研究所、珠海南方软件产品检测中心、炬力集成电路设计有限公司本标准主要起草人:IGB/TXXXXX—XXXX引 言嵌入式系统是指以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗严格要求的专门计算机系统。嵌入式技术并不是一个独立的学科,它是伴随着微电子技术和计算机技术的发展,微控制芯片功能越来越强大,而嵌入微控制芯片的设备和系统越来越多而发展起来的。嵌入式系统几乎包括了生活中所有的电器设备,如:mp3、手机、数字电视、汽车、微波炉、数码相机、电梯、空调、自动售货机、工业自动化仪表与医疗仪器等。尽管C语言是嵌入式软件开发的主要工具,然而C语言并非是专门为嵌入式系统设计的,一是因为标准C语言编写的软件缺乏安全性;二是因为“标准C语言”太庞大了,很难操作。因此,需要制订针对嵌入式系统软件的编码格式要求。本标准是在理解标准C语言的基础上,结合嵌入式软件的开发实践以及嵌入式软件开发中常见的危险编码方式制订的,着重于软件的安全性、可读性。既可作为嵌入式软件开发中的编码要求,也可作为软件交付时验收方的验证要求。在要求条款中,“应”标示的要求是必须符合的,“宜”标示的要求是可选择符合的。IIGB/TXXXXX—XXXX嵌入式软件 C语言编码规范范围本标准规定了使用C语言编写嵌入式软件的编码格式要求。本标准也提及了软件设计人员应该注意的与编码相关的事项。本标准适用于嵌入式软件生存周期的编码阶段,主要供具有C语言编程能力的软件编码人员使用。规范性引用文件下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。GB/T15272 程序设计语言 C术语和定义GB/T15272中界定的以及下列术语和定义适用于本文件。。赋值语句、自增等操作都是典型的具有单边作用的操作。 ――熟悉芯片的各种内存、寄存器地址、中断服务、定时器、通讯接口等功能,必要时将相关信息加入程序注释中。――如指令空间大小、数据空间大小、堆栈空间大小等是否超出系统有关限制。,应明确该编译器联合体存储的细节――如联合体的末尾有多少个填充单位、联合体的各个成员如何对齐、多字节的数据类型高低字节如何排放顺序等。――在程序中宜使用芯片提供的看门狗功能实现硬件系统复位。1GB/TXXXXX—――在程序中宜利用各种硬件设备自身的特点来提高程序效率。 应注意所使用的编译器的位数,支持的C语言标准,调试程序所占用的内存,兼容性等特点。――如static局部变量将在内存数据区中生成,而非static局部变量将在堆栈中生成。 应注意程序开发调试环境和实际应用环境的区别。 应用程序宜使用操作系统驱动程序来调用硬件端口。 在使用malloc等其它函数获取内存时,应判断申请内存是否成功。 动态内存的申请与释放应配对,防止内存泄漏。应用场景主要包括:过程/函数中分配的内存,在过程/函数退出之前要释放;过程/函数中申请的(为打开文件而使用的)文件句柄,在过程/函数退出之前要关闭。错误用法示例:intexample_fun(BYTEgt_len,BYTE*gt_code){BYTE*gt_buf;gt_buf=(BYTE*)malloc(MAX_GT_LENGTH);.../*globaltitlelengtherror*/if(gt_len>MAX_GT_LENGTH){returnGT_LENGTH_ERROR;//退出之前没有释放gt_buf}... //otherprogramcode}正确用法示例:intexample_fun(BYTEgt_len,BYTE*gt_