海康威视工程师谈嵌入式软件

笔者之前曾就职于杭州海康威视,提起这家公司,想必嵌入式领域的同学都很清楚,这是一家安防监控企业,虽然近些年来一直在说自己做人工智能,但离开嵌入式,摄像头是工作不了的。

还记得四年前的秋天,我大三那年,拿着自己卑微的简历去面试了这家公司,当时太过年少,不知道何为嵌入式,时至今日,才发觉,自己当时由于认知水平有限,错过了很多学习机会。想来后悔不已,因此,将自己对于嵌入式的认知简单谈一下吧。

一、嵌入式的领域划分

嵌入式是一个综合类的职业,总体而言,要求一个本科或者硕士毕业生要对软硬件都有所了解,特别在一些小公司,要求你都得是软硬件兼通的大佬。但在一些物联网大厂,比如海康威视,大华,宇视,华为,新华三,其实都是更加专注于分工协作的。所以在这些企业,你会的多也是好事,但更要求你精通自己的领域。

一般而言,嵌入式分嵌入式软件和嵌入式硬件,但某些产品,比如摄像头,其实光学也是一个必不可缺的角色,而且光学参数也决定着摄像头的成像等功能。

嵌入式硬件其实也分多重领域,在物联网大厂,有一部分人专注于pcb画板,叫做pcb工程师,有一部分人专注于硬件电磁兼容,叫做emc工程师,还有一部分人专注于硬件设计,虽然只需要画出原理图即可,但也要能看懂布线,不然出了问题可能就要被领导谈话了。而且嵌入式硬件是一个代价高昂的角色,要求嵌入式硬件工程师本身理解需求,一旦画错,改一次硬件pcb,需要好几周。

嵌入式软件同样也会细分,一般根据芯片大类,有开发mcu单片机的,还有基于soc开发Linux的,还有其他如rtos等系统的。以主流的Linux为例,在大厂,一般会分为bsp,也就是板级驱动层开发,数字信号处理,也就是图像信号等开发,上层应用层开发。Linux博大精深,想掌握精通不是一件容易的事情。

二、嵌入式软件学什么

嵌入式软件本身是一项对综合能力要求比较高的技术。一般而言,可以按照如下级别进行学习。

1.入门级
这个阶段主要学习C语言基础和Linux基础之类的,网络编程等等,推荐以下书籍:
C语言三剑客:《C和指针》、《C专家编程》、《C缺陷与陷阱》

在这里插入图片描述
C Primer Plus第6版中文版 c语言从入门到精通零基础自学C语言编程入门教程书籍计算机程序设计数据结构经典教材C++
在这里插入图片描述
Linux从入门到精通(第2版)

2.进阶级别
UNIX环境高级编程,UNIX网络编程
在这里插入图片描述
3.精通级别
代码大全第二版
在这里插入图片描述

三、一点建议

学习嵌入式最好的方法还是保持兴趣,保持学习的心态,因此,一定要多阅读,多学习,笔者闲暇时候经常了解一些内核书籍和驱动书籍,这本身就有助于与其他资源组沟通业务,同时,也可以自学c++,和设计模式等。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值