如果从应用层的应用开发出发,建议先熟悉api函数,推荐《unix环境高程》,现在应该是第3版了,如果从应用层的界面开发出发,则建议学习 qt , wince 或 android 等。但真实的嵌入式开发,熟悉以上还是远远不够的,建议如下学习曲线:
第一节段 熟练使用linux操作系统
学习linux操作系统的概念和安装方法,理解linux下的基本命令、管理配置和编辑器,包括vi编辑器,gcc编译器,gdb调试器和 make 项目管理工具等知识。
第二阶段 精通linux下c语言
通过大量编程实例重点学习c语言的高级编程知识,包括函数与程序结构、指针、数组、常用算法、库函数的使用等知识,另外,还要学习数据结构的基础内容,包括链表、队列、栈、树、哈希表、图等内容。
第三阶段 嵌入式linux应用编程
精通嵌入式linux下的程序设计,精通嵌入式linux开发环境,强化对linux应用开发的理解和编码调试的能力,包括系统编程、文件i/o、多进程和多线程、网络编程、gui图形界面编程、数据库。
第四阶段 嵌入式入门阶段-arm体系结构
arm处理器体系结构、编程环境、指令集、寻址方式、调试、汇编和混合编程。arm的常用接口开发及硬件电路设计基础(包括io、串口、看门狗、实时时钟、spi、iic、扫描键盘、flash操作等),为以后的设备驱动的学习打好基础。
第五阶段 嵌入式高级阶段-linux内核和驱动开发
深入内核细节,了解linux相关运行机理,为后面的驱动开发打好理论基础,内容包括内核源码结构、内存管理、进程管理、中断管理、系统调用、内核同步、时钟和定时器管理、信号、调度、进程间通信、文件系统和i/o设备管理等方面的内容。
第六阶段 嵌入式硬件开发
学软件的可以不学,但了解硬件对学嵌入式软件有更深入的了解,尤其对系统的理解更深入。内容包括单片机的学习,电路分析和电路的原理,pcb设计,主要包括altium designed,电子设计基础知识,原理图初步设计,进阶,提高,深入,pcb库的设计,集成库的作用和制作,pcb设计初步,pcb设计提高,pcb深入,对fpga和cpld系统的相关基础概念等。
第七阶段 嵌入式深入阶段
变成高手,你还要进一步学习内核和系统,内容包括计算机系统结构和汇编,linux内核编程,linux内核的基础知识,汇编及保护模式,linux内核体系结构,linux引导程序分析,linux内核代码分析,linux块设备驱动程序分析等。
第八阶段 实践阶段
其实就是循序渐进,先学好基础理论知识,然后动手试验,最后总结试验结果,验证所学知识并积累经验
希望对你有帮助,加油!
谷歌发布针对Android2.2操作系统的软件开发工具包Fr
今年手机出货量或是十年来最低水平
吉林师范大学选购我司HS-100C高低温试验箱
MAX13054A CAN收发器的特性及使用介绍
分体型激光器的特点_分体型激光器的优势
嵌入式应用层开发学习曲线
通用自动驾驶都隐藏了哪些坑?
信号完整性之哪来的串扰?
新加坡交通物流企业访问团探访宏景智驾,共谋智能驾驶合作机会
基板材料制备工艺
2018新款廉价版iPhone采用最坚硬的玻璃,更抗摔!
三星S8真机曝光:Home键真的取消了,屏占比非常高
日本争相为超高速5G服务建设基站,实现5G全国覆盖还需要几年时间
中国移动与SOHO中国将共同推进5G合作加速5G时代的到来
共享电单车有了“大脑”!小遛共享首发AI视觉停车“黑科技”
中国科技巨头华为一高管被指控窃取商业机密数据存储机密!
人工智能突破应用与广泛渗透的拐点 将从2019年进入到应用红利兑现年
嵌入式Linux入门(三、Linux Shell及常用命令说明)
华为云数据库GaussDB:数字化转型的可信之选
关于PCB抄板反推原理解说