共有2条回答
北辰剑心
回答于 2019-04-07 10:15:59
谢邀,我是剑心,我来回答。
对于嵌入式驱动开发,个人理解可以主要分为三个层次,初级为自己熟悉模块的工作原理和寄存器操作有深入的认识,可以自己独立开发模块驱动;中级为对整体驱动和SDK的设计有清楚的认知,并能理解设计原理;高级为硬件内核、总线设计、系统内存管理以及嵌入式操作系统有整体认识。
初级阶段:独立模块的原理和寄存器操作
作为一名嵌入式初级从业人员,需要对寄存器操作很清楚,知道如何设置、读取和清除比特位。了解自己负责模块的工作原理,并且能够根据原理图和设计方案,编写模块驱动,对外提供API接口。
中级阶段:熟悉驱动总体架构和SDK设计
在初级阶段工作一段时间,对于每个模块熟悉以后,需要对模块的总体架构设计有所了解,并清楚底层的驱动API到HAL层,并且到APP层的SDK封装设计原理。
高级阶段:清楚内核、总线、内存和操作系统
到了高级阶段,你需要了解的就是ARM的内核结构设计,AHB和APB等总线设计,以及时钟分频。对内存管理的LMA和VMA有深入了解,知道bin文件如何装载运行。
对于嵌入式操作系统如Freertos或者Ucos有一定了解,清楚进程和线程,对系统和IO外围协同工作原理很清楚。
总结
以上就是个人对于题主嵌入式驱动开发的建议,希望对你有所帮助。
如果您喜欢我的回答,请关注点赞哦,也欢迎您的评论,谢谢!
闲人老卢
回答于 2019-04-07 12:51:51
最高境界的嵌入式开发者应该能通过对硬件的特性的分析和精巧的底层驱动代码来帮助团队实现产品的差异化和低成本。
这并不局限于是否为arm处理器或51处理器,也不局限于系统是跑Linux,rtos甚至是裸奔。个别需要甚至是跑Android。
举例,用处理器A为核心开发的产品,如果竞争对手也用此处理器开发了竞品,那么你们靠什么打赢竞品?是靠市场宣传还是靠产品性能和功能?或是靠降低售价?
因此,嵌入式开发者必须做到对硬件原件的底层完全理解,并能根据最终产品的形态重写标准的原厂驱动以便形成差异性。同时,精巧的底层软件还可以减少外部元器件的使用,帮助降低总体成本。
登录后才能进行回答
交通相关知识:
- 下一篇:骑行去西藏走哪条线好海拔差不是特别大路上风景好?
- 上一篇:早上浇花好,还是晚上好?
相关问题推荐
桃树主干型修剪管理技术方案有哪些?
2018-11-20
宇宙中星球是水平分布的,还是上下左右都有分布?
2019-04-18
有没有教学笛子的视频、网站或软件?对此你有什么好的推荐?
2018-08-23
微信运动可以自动点赞吗?
2020-03-25
你最喜欢听的歌曲,存了几部新手机现在还听着,你记得吗?
2019-03-15
对于一个大学生来说,1000到2000块的手机有什么选择?
2021-09-07
诱蜂箱现在放出去是不是还早?
2019-03-20
博越16款智联日间行车灯晚上怎么开启?
2019-12-25
有没有做医美代理的同行,你们平时群发商品介绍有什么快捷方式吗?
2020-05-01
保险公司所谓的带病投保,他们的统计口径是什么?以什么为准?小诊所里检测的有记录吗?
2017-09-20
最新文章
巴恩的短剑
2023-12-11
魏怀亮
2023-12-11
平章纶阁
2023-12-11
明弘治黄地青花折枝花果纹盘
2023-12-11
寻梦者
2023-12-11
简明日本外交史
2023-12-11
温情永远
2023-12-11
黑麒麟
2023-12-11
长干行
2023-12-11
一本万利贺新年
2023-12-11
生化前线-僵尸来袭
2023-08-13
恐怖猛鬼校园
2023-08-13
一冲到底
2023-08-13
梦回白玉京
2023-08-13
战场攻防大乱斗
2023-08-13
决胜时刻冒险
2023-08-13
恐龙抗狼大挑战
2023-08-13
荒野冲突大乱斗
2023-08-13
恐龙城市摧毁
2023-08-13
非常普通鹿哥模拟器
2023-08-13