GNU make 指南
2013-02-15 18
译者按: 本文是一篇介绍 GNU Make 的文章,读完后读者应该基本掌握了 make 的用法。而 make 是所有想在 Unix (当然也包括 Linux )系统上编程的用户必须掌握的工具。如果你写的程序中没有用到 make ,则说明你写的程序只是个人的练习程序,不具有任何实用的价值。也许这么说有点 儿偏激,但 make 实在是应该用在任何稍具规 .. [查看全文]
C语言中可变参数的用法
2013-02-02 kevintz 81
我们在C语言编程中会遇到一些参数个数可变的函数,例如printf()这个函数,它的定义是这样的:int printf( const char* format, ...);它除了有一个参数format固定以外,后面跟的参数的个数和类型是可变的,例如我们可以有以下不同的调用方法:printf("%d",i);printf("%s",s);printf("the number is %d ,string is:%s", i, s);究竟 .. [查看全文]
C语言实现循环移位
2012-12-20 10
首先声明:我学习单片机C语言还不到半年,所以我还是菜鸟,我贴出的东西或许你们都知道,但我只想把我学习的经历给记录下来,希望你能找到你所想要的. 我记得做学单片机做的第一个实验就是做循环彩灯的实验,如果用汇编RL和RR很容易实现循环移位,但是C语言编程的移位指指令不能循环,移了后以0填充。 如果用C实现循环移位呢? 我 .. [查看全文]
嵌入式C语言的0x8本“经书”
2012-11-21 embeddedsoft 13
在这公布这几本关于C的“经书”,让更多人实习之,练就一身绝世的嵌入式C语言好功夫。 在当今嵌入式“武林”中,流传着几本人人都想偷学几招的C语言的武功秘籍。这些秘籍都是旷世武学奇才耗尽毕生精力所著,部分秘籍流经数十载仍经久不衰,让它的无数实习者受益匪浅。 今天,承蒙武林大会所拖,在这公布 .. [查看全文]
ARM嵌入式系统C语言编程
2012-11-02 姜换新 13
摘要 本文详细介绍了嵌入式平台上用C 语言编写系统软件和应用软件的方法。虽然是针对ARM平台介绍的,但基本经验和算法也适 合于其他嵌入式平台的软件设计。 1引言 无操作系统支持的嵌入式软件包括系统引导(BOOT) 、外围驱动程序、存储管理、系统IPO、通信、应用程序等方面,需要结合采用汇编语言(约占10 %) 和C 语言(约占90 % .. [查看全文]
“安全第一”的C语言编程规范
2012-09-14 陈萌萌 邵贝贝 90
编者按: C语言是开发嵌入式应用的主要工具,然而C语言并非是专门为嵌入式系统设计,相当多的嵌入式系统较一般计算机系统对软件安全性有更苛刻的要求。1998年,MISRA指出,一些在C看来可以接受,却存在安全隐患的地方有127处之多。2004年,MISRA对C的限制增加到141条。嵌入式系统应用工程师借用计算机专家创建的C语言 .. [查看全文]
C语言嵌入式系统编程修炼(背景篇)
2012-07-26 宋宝华 11
不同于一般形式的软件编程,嵌入式系统编程建立在特定的硬件平台上,势必要求其编程语言具备较强的硬件直接操作能力。无疑,汇编语言具备这样的特质。但是,归因于汇编语言开发过程的复杂性,它并不是嵌入式系统开发的一般选择。而与之相比,C语言--一种"高级的低级"语言,则成为嵌入式系统开发的最佳选择。笔者 .. [查看全文]
C语言嵌入式系统编程修炼(内存操作)
2012-07-26 宋宝华 16
数据指针在嵌入式系统的编程中,常常要求在特定的内存单元读写内容,汇编有对应的MOV指令,而除C/C++以外的其它编程语言基本没有直接访问绝对地址的能力。在嵌入式系统的实际调试中,多借助C语言指针所具有的对绝对地址单元内容的读写能力。以指针直接操作内存多发生在如下几种情况:(1) 某I/O芯片被定位在CPU的存储空间 .. [查看全文]
C语言嵌入式系统编程修炼(性能优化)
2012-07-26 宋宝华 20
使用宏定义在C语言中,宏是产生内嵌代码的唯一方法。对于嵌入式系统而言,为了能达到性能要求,宏是一种很好的代替函数的方法。写一个"标准"宏MIN ,这个宏输入两个参数并返回较小的一个:错误做法:#define MIN(A,B)( A <= B ? A : B )正确做法:#define MIN(A,B) ((A)<= (B) ? (A) : (B) )对于宏,我们需要知道三 .. [查看全文]
C语言嵌入式系统编程修炼(键盘操作)
2012-06-25 宋宝华 8
处理功能键功能键的问题在于,用户界面并非固定的,用户功能键的选择将使屏幕画面处于不同的显示状态下。例如,主画面如图1: 图1 主画面当用户在设置XX上按下Enter键之后,画面就切换到了设置XX的界面,如图2: 图2 切换到设置XX画面程序如何判断用户处于哪一画面,并在该画面的程序状态下调用对应的功能键处理函数,而且 .. [查看全文]
防脉冲干扰移动平均值法数字滤波器的C语言算法及其实现
2012-06-22 25
在许多的数据采集系统中,现场的强电设备较多,不可避免地会产生尖脉冲干扰,这种干扰一般持续时间短,峰值大,对这样的数据进行数字滤波处理时,仅仅采用算术平均或移动平均滤波时,尽管对脉冲干扰进行了1/n的处理,但其剩余值仍然较大。这种场合最好的策略是:将被认为是受干扰的信号数据去掉,这就是防脉冲干扰平均值滤波 .. [查看全文]
C语言嵌入式系统编程修炼(软件架构篇)
2012-06-11 宋宝华 12
软件结构是软件的灵魂!结构混乱的程序面目可憎,调试、测试、维护、升级都极度困难。 一个高尚的程序员应该是写出如艺术作品般程序的程序员。 模块划分 模块划分的"划"是规划的意思,意指怎样合理的将一个很大的软件划分为一系列功能独立的部分合作完成系统的需求。C语言作为一种结构化的程序设计语言,在模块的划 .. [查看全文]

推荐文章
最新文章
热门文章
本站简介 | 意见建议 | 免责声明 | 版权声明 | 联系我们
CopyRight@2024-2039 嵌入式资源网
蜀ICP备2021025729号