现在高校都在教授ARM架构应用开发,但是往往学生本科毕业只是学了皮毛,来到工作岗位往往需要再培训的过程。
那么这个时候也可以说是ARM的初学者而已,他们该选择哪个具体的架构上手呢?
首先说明基于ARM7内核的芯片现在已经很少了,大部分公司都陆续停产了。而且价格没有优势,主频也不高,只能跑UCOS或者Uclinux系统。
CORTEX-M3内核的芯片是目前用量比较大的32位ARM芯片,主频约70MHz到120MHz之间,比如STM32F103、LPC1768等型号。CORTEX-M4内核的芯片支持DSP指令功能,主频100MHz到200MHz之间,比如STM32F4等型号。这两种内核的芯片可以基于库函数进行编写程序,或者基于寄存器直接编写程序,可以跑轻量级的操作系统,比如UCOS等。
ARM9内核的芯片,是目前市场上运行嵌入式操作系统(linux、wince)主流的32位ARM芯片,主频约180MHz到500MHz之间。
CORTEX-A8和CORTEX-A9内核的芯片,可以运行多种嵌入式操作系统(linux、wince、android)。Cortex-A8处理器的速率可以在600MHz到超过1GHz的范围内调节,能够满足那些需要工作在300mW以下的功耗优化的移动设备的要求。Cortex-A9处理器的速率可以到1GHz以上,支持多核。
如果是初学者,学习库函数编程的或者寄存器编程的,建议学习CORTEX-M3内核的芯片;如果是学习linux的嵌入式软件编程,建议学习ARM9内核的芯片;如果是学习Android的嵌入式软件编程,建议学习CORTEX-A8和CORTEX-A9内核的芯片.