rtos编程技巧
如何学习嵌入式?
如何学习嵌入式?
嵌入式系统的定义为:以应用为中心,以计算机技术为基础、软硬件可裁剪、适用于应用系统,对功能、可靠性、成本、体积、功耗严格要求的计算机系统。
bootloader了解Bootloader的结构和启动过程,在大多数的嵌入式系统中,Bootloader是上电后执行的第一个程序。了解UBoot的配置、编译、连接过程,了解常用命令如下载文件到内存,擦除、读写Flash、运行内存、NOR Flash、NAND Flash中的程序等等。
kernel内核管理的核心代码,了解内核的启动过程,一般分为两部分:架构/开发板相关的引导过程、后续的通用启动过程。了解内核源码结构及Makefile分析。编译烧写启动内核。
rootfs根文件系统,了解根文件系统下各目录的作用,掌握构建根文件系统的方法,移植Busy box,构造各个目录文件等。掌握制作yaffs.jffs2文件系统映像文件的方法。
app了解几种嵌入式GUI得特点,学习C语言,C 语言,学习简单开发自己的QT GUI程序的编写方法,掌握x86主机上模拟、调试嵌入式GUI程序。
综上所述,嵌入式入门很难,需要学会改造Bootloader,钻研内核,为新硬件编写驱动程序,看得懂电路原理图,看的懂芯片数据手册,上层应用会绘制GUI。
推荐韦东山老师的嵌入式Linux应用开发书,适合嵌入式Linux的初学者学习。
支付宝iot事业部怎么样?
答:不错。
事业部主要负责:
1、负责与芯片/模组商/硬件厂商等合作伙伴共同实现IoT产品的开发;
2、负责蚂蚁IOT协议制定和各个端包括Android/各类RTOS等的移植实现;
3、负责IoT某些核心能力,如SAL,fs,fota等等实现 ;
职位要求
1、精通C/C 语言编程,熟悉嵌入式开发,具有良好的编程风格和文档编制习惯 ,三年以上开发经验。
2、精通嵌入式操作系统,熟练掌握操作系统原理/网络协议/文件系统实现原理,有freertos、UCOS、nucleus,linux等系统开发经验者优先。
3、精通各类网络通讯协议,如:LoRa、NB-IoT、eMTC、WiFi/BLE、CoAP、MQTT等,有物联网开发经验优先;
4、乐观开朗、乐于接受挑战,对技术和产品有热情,持续学习,有较好的沟通能力,有团队协作精神;