一、学习路径
万丈高楼平地起,不管多优秀的工程师都是从小白开始的。一条清晰合理的学习路线能帮助小白们高效率的完成基础知识的储备工作,注意这里是知识的储备过程,而经验是从实践中得到的。学习路径是多种多样的,不同能力和不同基础的人有不太相同的路径,这里分享我自己的学习路径,供大家参考。
1了解计算机原理, *** 作系统基础知识。了解硬盘,内存和CPU的关系,程序是如何加载到内存运行的,了解 *** 作系统进程切换和时间片的概念。
2学习C语言,掌握编译器基本知识,能编写简单的程序。学习硬件相关知识。
3购买洞洞板或者面包板,配合stm32等单片机核心板及相应教材,实践IO *** 作,中断,定时器,ADC,UART通信,IIC通信,SPI通信,CAN通信等基本功能。在此过程中不断巩固提升C语言编程水平。
4掌握了某一种单片机的基本编程和控制后,可以进军嵌入式 *** 作系统的学习。在此期间可以继续使用STM32核心板,加购LCD串口液晶显示屏,不需要买带字库的显示屏,简单实用的串口显示屏就可以。然后可以从FreeRTOS开始学习,这个 *** 作系统代码少,概念清晰,易于学习 *** 作系统的原理,也易于移植,基本上可以参考官网以及网络上的资料顺利的将 *** 作系统移植到STM32核心板。通过FreeRTOS,可以学习嵌入式 *** 作系统的基本原理,并可以编写LCD驱动程序来感受硬件驱动程序的概念。
5学习嵌入式Linux *** 作系统,购买ARM9或以上版本的主控的开发板,要求开发板上至少有串口和网口。学习板级支持包的开发,交叉编译,GDB调试,UBOOT移植,内核移植,根文件系统制作,设备树,驱动程序编写,网络编程相关知识。
6学习物联网相关模块的使用,可以购买ESP32核心板进行wifi,蓝牙的模块控制学习,购买其他模块实现其他小项目的练习。
通过上面的一番闭关修炼,你已经学习了嵌入式开发的主要知识架构,接下来就要多做小项目,多练习排错,才能不断积累经验。
二、学习方法
1先整再零:
对于一个实例项目,先从整体出发,保证调通,能正常运行,出现预期结果。遇到模糊的问题先跳过,整体有了一定认识后再对个别细节进行深入了解,但不能跳过深入了解细节的环节。
2边学边练:
开发是一类实践性很强的技能,嵌入式开发要与硬件打交道,就需要更多的动手 *** 作和观察。
学习某一方向的嵌入式开发知识时,需要给自己的学习进行必要的“投资”,购买面包板、洞洞板、万用表、调温烙铁套装、各种器件、芯片,以至开发板。以上材料不需要一次性都买齐,可以按照当前学习的内容分阶段购买,经济条件有限的同学也不用担心,以上材料的开销除开发板之外都不贵,可网络购买。对于开发板,可以买学长学姐的二手板卡,能过测试就证明板卡是OK的。
有了学习材料,就要学以致用,例如今天学习了三极管做开关,就可以自己动手画画电路图,然后在洞洞板上实践一下,通过实际 *** 作,加深印象的同时,也能验证自己的设计方案。
3勤于思考和提问,网络如此发达,提问的能力和技巧我就不再赘述了。
三、技能提升建议
如果你进入的是一家规模较小的公司,那么你可能有机会接触各类技术。这是绝佳的锻炼机会,要注意不要特别深入某一方向而不关注其他技术,要知道大牛需要的是多方位的技能。
大公司的话,往往分工比较细致而明确,那就需要在完成自己工作的同时多关注项目组中其他同事遇到的问题,能协助解决最好,不能解决的要关注解决的情况和方法,多蹭经验。帮助别人的同时就是在帮助自己提高,多花时间处理实际问题是难得的经验。
不管在哪种场合工作,一定注意经验的积累,好记不如带墨,要用文字将经验记录下来,将遇到的问题详细描述清楚,没事的时候翻看一下,工作时间长了,你会发现这是一笔难得的财富。
限于篇幅,这里就不再多讲技术的细节了,希望各位读者在技术成长的过程当中都能有自己清晰的学习路径,安排好自己的学习计划,稳扎稳打!
TencentOS tiny 提供业界最精简的RTOS内核,最少资源占用为RAM 06 KB,ROM 18 KB。对于复杂的任务管理、实时调度、时间管理、中断管理、内存管理、异常处理等功能,TencentOS tiny都可支持。腾讯 科技 讯 9月18日消息,腾讯宣布将开源自主研发的轻量级物联网实时 *** 作系统TencentOS tiny。相比市场上其它系统,腾讯TencentOS tiny在资源占用、设备成本、功耗管理以及安全稳定等层面极具竞争力。该系统的开源可大幅降低物联网应用开发成本,提升开发效率,同时支持一键上云,对接云端海量资源。
据权威资料显示,全球物联网市场规模发展迅猛,2018年,仅国内物联网市场容量已经超过1万亿,预计2020年国内物联网市场容量可望超过15万亿。作为物联网整个产业链重要一环,终端侧物联网 *** 作系统由于直接对接底层物联网设备,已经成为构建整个物联网生态的关键。
腾讯物联网团队表示:“将腾讯自主研发的物联网 *** 作系统TencentOS Tiny开源,不仅可以将腾讯在物联网领域的技术和经验和全球开发者分享,还能够汲取全球物联网领域的优秀成果和创新理念,最终推动整体物联网生态的繁荣以及万物智联时代的到来。”
腾讯云构筑起全链条IoT云开发能力
在全面上云的背景下,物联网设备也不例外。借助TencentOS tiny提供的更简单的软件接口,亿级物联网设备上云的门槛降降进一步降低,从而帮助物联网开发者能够更便捷的使用云端海量的计算、存储资源,以及先进的AI和大数据算法模型,有效支撑众多前沿物联网技术在智慧城市、智能家居、智能穿戴、车联网等行业的加速落地。
同时,随着TencentOS tiny的开源,结合腾讯云物联网开发平台IoT Explorer,加上之前已经建设完成的国内最大规模LoRa网络,腾讯云物联网已经彻底打通从芯片通讯开发、网络支撑服务,物理设备定义管理,数据分析和多场景应用开发等一站式、全链条IoT云开发服务能力,物联网开发将变得更为简单、高效。
近年来,腾讯在开源上的步伐不断加快,截至9月,腾讯自主开源项目已达84个,Star数超过24万。在物联网领域,腾讯不仅通过开源和开放持续构建良性的物联网生态体系,在产品易用性和开发效率上,腾讯物联网团队也都做了许多针对性优化。
体积
最小仅18KB
、功耗
最低2微安
TencentOS tiny 提供业界最精简的RTOS内核,最少资源占用为RAM 06 KB,ROM 18 KB。在类似烟感和红外等实际场景下,TencentOS tiny 的资源占用仅为:RAM 269 KB、ROM 1238 KB,极大地降低硬件资源占用。同时,看似“麻雀虽小”,却“五脏俱全”。对于复杂的任务管理、实时调度、时间管理、中断管理、内存管理、异常处理等功能,TencentOS tiny都可支持。
在功耗上,TencentOS tiny还应用了高效功耗管理框架,可以针对不同场景降低功耗。比如TencentOS tiny内部的定时机制在发现业务没有运行的时候,会自动启动休眠状态,有效降低功耗。根据实测的数据显示,TencentOS tiny最低的休眠功耗仅有2微安。开发者也可以根据业务场景选择可参考的低功耗方案,降低设备耗电,延长设备寿命。
独具创意的调试功能,助力开发者快速排障
由于很多物联网的终端设备在实际场景下,位于荒郊野外或者很远的地方,出现问题的时候非常难定位。为了能够减少这个问题,当终端出现问题的时候,TencentOS tiny会把一些故障信息记录下来,当它再重启的时候首先把错误数据上报云端,这个功能极大的方便了开发者查找故障原因。从而远在千里之外,就可以快速排除故障。
另外,TencentOS tiny的内核以及其上层的物联网组件框架,都做了高度解耦,保证和其它模块之间连接的适配。同时,TencentOS tiny 还提供多种编译器快速移植指南和移植工具,帮助开发者向新硬件开发板的一键移植,省时省力,有效提升开发效率。
目前,TencentOS tiny已支持意法半导体、恩智浦、华大半导体、瑞兴恒方、国民技术等主流厂商多种芯片和模组。目前市场上的物联网 *** 作系统有十数种,分两条技术路线:
一是嵌入式 *** 作系统,称之为Linux系列。主要有Google Brillo,华为LiteOS、微软Win10 IOT、苹果Embedded Apple iOS等。二是实时 *** 作系统,可称为RTOS系列。代表有ARM Mbed OS、上海庆科MICO,Nucleus RTOS、WindRiver VxWorks,Green Hills Integrity。
哪个更好的话,还真不好说。
由于物联网产业处在发展初期,碎片化特点必将导致物联网时代对软件的多样性需求。一种 *** 作系统和开发工具很难支持物联网系统中的所有设备,短时间内,物联网 *** 作系统很难形成像智能手机中Android和iOS两家独占市场的局面。物联网 *** 作系统市场是一个增量市场。目前并没有一款成熟产品能够完全适应物联网应用。以安全性和集成化为代表的物联网新需要给传统嵌入式软件带来挑战,也给以互联网企业为代表的产业新人带来机遇。可以说当前物联网 *** 作系统发展现状,犹如智能手机 *** 作系统的7年混战时期,各霸一方,独自为营。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)