您的位置:首页 > 其它

嵌入式arm学习总结(十)--嵌入式项目知识点总结--杂烩

2013-11-28 16:44 309 查看
1.什么叫项目:为完成某一独特的产品和服务所做的一次性努力

特点:一次性、独特性

三要素:时间,成本,质量

时间和成本的制约:增加采购次数、时间的长短与研发人员数量的投入、专职开发与闲时开发。

成本和质量的制约

时间和质量的制约

2.嵌入式项目中常用的通讯方式及特点:

RS232、最大15米

RS485、可达1500米

WG26/34、50米以内

USB、 1米

TCP/IP、(网线从路由器出来一般距离范围在50—100米间)

GPRS、 可收发 非常远

GPS、 只可收 非常远

CANBUS、最大几十米

ABA(台湾)、

红外、一般15米以内

蓝牙、一般在8--30米,大功率型可达80--100米

Zigbee、几十米 Zigbee模块较贵一个达100块

WYFI、看功率大小,传输距离不一样 常用几十米 距离太远速度会较慢

无线模块:一般可达到几公里

IIC 最大十几米

IIS 最大十几米

SPI 最大十几米

3.一些知识点

1)用户模式和系统模式共用一个堆栈,它们的寄存器也是共用的

2)查找快捷键:ctrl+c,ctrl+f,f3

3)ZI段也叫BSS段;在ARM里面叫ZI,在linux里面叫BASS

4)s3c2440采用满递减堆栈存储方式

5)mrs r0,cpsr cpsr值读出送给r0

msr cpsr_cxsf,r1 将r1写入cpsr_cxsf

6)堆:程序控制,动态分配,人为控制不了,程序运行时自动分配

栈:人为控制,人为分配一个大小确定,并返回栈起始地址的内存空间

7)指令集:

Cotex系列使用ThumbII指令集

早些年由于硬件成本比较贵,使用Thumb指令集比较多,现在ARM系列多用ARM指令集

8)协处理器:DMA,MMU,CACE(指令、数据)

特点:本身不能独立做事,只能协助CPU做事,CPU给它们分配任务之后,还要监督运行结果,是否运行完等

9)多核CPU:有一个主CPU,只是告诉其他CPU负责完成哪些任务,之后就不用再管了

10)伪指令:ARM的伪指令它本身要执行先要转成相应的ARM指令

11)文字池:分多步跨越(跳转)空间,每次大小不变

12).inc是汇编的头文件 .h是C语言的头文件

4.编程注意点

项目里文件比较多时,少用全局变量,直接利用函数调用形式

单个文件: static char i; 定义静态变量,防止别的文件对变量值的意外修改。

char fun(void)



return(i);



直接使用外部调用全局变量形式:extern int i; 这样的缺点是存在隐患,当文件较多时很可能出现全局的变量重名的问题,这时候要修改的话可能较麻烦。

尽量避免在头函数.h文件里面进行变量的定义
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息