
嵌入式
BeckZZ
这个作者很懒,什么都没留下…
展开
-
关于ARM的C语言优化
C数据类型1. C语言的程序优化与编译器和硬件系统都有关系,设置某些编译器选项是最直接最简单的优化方式。在默认的情况下,armcc是全部优化功能有效的,而GNU编译器的默认状态下优化都是关闭的。ARM C编译器中定义的char类型是8位无符号的,有别于一般流行的编译器默认的char是8位有符号的。所以循环中用char变量和条件 i ≥ 0时,就会出现死循环。为此,可以用fsigned - char(for gcc)或者-zc(for armcc)把char改成signed。 其他的变量类型如下:转载 2011-03-30 12:46:00 · 740 阅读 · 0 评论 -
嵌入式实时程序设计中C/C++代码的优化
1.Inline函数 在C++中,关键字Inline可以被加入到任何函数的声明中。这个关键字请求编译器用函数内部的代码替换所有对于指出的函数的调用。这样做在两个方面快于函数调用。这样做在两个方面快于函数调用:第一,省去了调用指令需要的执行时间;第二,省去了传递变元和传递过程需要的时间。但是使用这种方法在优化程序速度的同时,程序长度变大了,因此需要更多的ROM。使用这种优化在Inline函数频繁调用并且只包含几行代码的时候是最有效的。2.用指针代替数组 在许多种情况下,可以用指针运算代替数组索引,这样做常转载 2011-03-30 12:54:00 · 798 阅读 · 0 评论 -
实用技巧:Gdbserver远程调试的具体实现
<br />采用的是nfs目标板挂载本机目录的方法,当然首先,你得开通本机的nfs共享服务,具体步骤如下:<br /> 1、进入/etc目录,vim exports这个文件,在里面添加/home 192.168.0.*(rw,sync)保存后退出<br /> 注:/home 为要共享的文件夹的名称,192.168.0.*为本NFS服务器允许访问的客户端ip,若nfs不成功,后面参数rw ro 等标志对文件夹操作权限,sync:数据同步写入内存和硬盘,也可以使用async,此时数据会先暂存于内转载 2011-05-24 13:39:00 · 970 阅读 · 0 评论 -
SPI相关
SPI模块功能框图典型的SPI控制器由如波特率发生器、主控逻辑、收发缓冲、控制部分等几大部分组成。通常SPI通过4个管脚与外部器件相连: l MISO:主收从发管脚,仅由从设备控制;单向数据线;l MOSI:主发从收管理,仅由主设备控制;单向数据线;l SCK:串口时钟,由主设备控制,仅由主设备控制;用于时钟转载 2012-12-05 11:13:04 · 1408 阅读 · 0 评论