嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,大概分3个阶段:
1、嵌入式Linux上层应用,包括QT的GUI开发
2、嵌入式Linux系统开发
3、嵌入式Linux驱动
Linux是开源免费的,而且其源代码是开放的,更加适合学习嵌入式。
(1) C语言是所有编程语言中的强者,因此必须非常熟练的掌握。
(2) Linux操作系统就是用C语言编写的,所以也应该先学习下Linux方面的编程,只有会应用了,才能近一步去了解其内核的精髓。
(4) 了解ARM的架构,原理,以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。
(5) 系统移植的时候,就需要你从最下层的bootloader开始,然后内核移植,文件系统移植等。
(6) 驱动开发
linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。
以上是大概的框架,
推荐学习平台:
iTOP-4412开发板涵盖嵌入式技术热点,支持linux,android,QT,Ubuntu系统
核心板参数
尺寸:50mm*60mm
高度:连同连接器在内0.26cm
CPU:Exynos4412,四核Cortex-A9,主频为1.4GHz-1.6GHz
内存:1GB 双通道 DDR3(2GB 可选)
存储4GB EMMC(16GB 可选)
电源管理:低功耗动态三星S5M8767电源管理,最优架构!
工作电压:2.65V--5.5V (推荐4.0V)
系统支持:Linux-QT/Android4.2/Ubuntu操作系统
USB HOST:板载USB3503,引出高性能HSIC,实现2路USB HOST输出
引角扩展:引出脚多达320个,满足用户各类扩展需求
运行温度:-25度至+80度区间,设备工作正常,运行良好!
底板参数
尺寸:110mm*190mm
SWITCH:电源接口
RESET:1个复位按键
POWER:电直流电源输入接口,5V/2A电源输入
TF Card:1个标准TF卡接口
USB Host:2路USB Host,支持USB2.0协议
USB OTG:1路USB OTG 2.0
以太网口:10M/100M自适应网口
PHONE:支持耳机输出
MIC:支持MIC输入
串口:2路串口
A/D:1路
User Key:5个功能按键
DIP SWITCH:1个
GPIO:20PIN(电源和地)
CAMERA接口:1个(可支持200万和500万摄像头)
WIFI接口:1个
HDMI接口:标准HDMI v1.4,1080p高清分辨率输出
LCD接口:共3个,2个LVDS接口,1个RGB接口
LCD电源开关:1个
MIPI接口:1个
实时时钟:内部实时时钟,带有后备锂电池座,断电后系统时间不丢失
BUZZER:1个蜂鸣器
JTAG接口:1个
串口、矩阵键盘、GPS接口:1个