功能机驱动开发步骤

一、搭建开发环境

1.确认是在windows系统还是在linux系统,然后确认版本,找到系统镜像安装操作系统;

2.安装基本软件,如:解压软件、虚拟光驱、比较工具、代码编辑软件、版本管理软件等;

3.安装编译工具,如:Perl,RVCT,VS2008,Office2010,多核编译等;

4.编译器测试,如:从 SVN 服务器检出你需要的源代码,看代码能否正常拉下来,然后进行编译,看编译器是否会出现错误,解决出现的错误,直到可以正常拉代码和编译软件。

二、确定项目芯片平台

因为后续需要对项目进行开发调试,所以需要先明确自己项目中用的哪些平台的芯片,然后进入平台官网学习相关的知识。

最好是能拉一个分支代码下来,然后按照官网的平台规格书对应着学习,这一步主要是了解不同平台代码的架构。如:项目.mk文件在什么地方,里面是怎么写的,都控制了什么功能;还有各个模块的相关代码都在哪些路径,相关的控制函数有哪些,底层是怎样把这个功能调通的,最终是哪里调用了的......

三、参与项目调试

对于新人要积极参与项目调试,可以查看拉下来的代码中有哪些项目,拿到机器进行软件下载烧录,查看前辈的提交记录,看看项目中遇到的问题,以及最后是如何解决的,熟悉项目各模块的代码。

有了机器,也有代码,可以按模块尝试修改一下功能了,比如:LCD模块,查看如何点亮对应型号的LCD,相关的文件有哪些,如果新兼容一个LCD需要修改哪些地方,各个函数中的作用是什么,这里面还需要LCD对应型号的IC规格书,参考规格书设置相关寄存器的值。

一台功能机中包含的模块有:LCD、按键、camera、flash、手电筒、充电、音频、FM、射频等。主要还是看有哪些功能,怎么样把这些功能调通,后续再慢慢优化。需要注意的是每个模块用的物料,对应的规格书要求,比如:手电筒的亮度和电流在实际项目中会有要求的。

对于功能机来说,首要的是配置gpio端口和点亮LCD,保证机器能正常开机和显示。gpio的配置就需要查看原理图,根据原理图中各个gpio端口的功能进行配置。

四、主导项目调试

之前我们是参与项目调试,主导项目的另有其人,当我们进行项目主导的时候就项目的各种问题就需要我们自己去把控了,当然这里的主导指的是驱动部分。

作为项目的主要负责人之一,首先需要对项目的开发流程有基本的了解。比如:一个项目的开发周期大概是多久,项目从立项到最终量产需要哪些部门进行配合,我们自己负责的那部分需要在哪些时间节点做什么工作,需要对接的工作涉及到哪些部门哪些人,是否能联系上,项目会不会卡住,哪些点被卡住了,什么时候能解决......

当作为项目主负责人时,需要把控好调试时间,在规定的时间内解决项目中的bug,与团队合作以及沟通也很重要。

在进行驱动调试时,除了软件相关的知识,我们对硬件的一些东西也是要有所了解的,最后要跟一个好师傅,或者好领导,如果有拿不定注意,或者项目陷入僵局的时候,可能他们的一句话就能让你茅塞顿开。

五、调试总结,持续充电

我们在项目调试过程中,遇到的各种问题最好记录一下,写一篇文档或者总结,人的记忆力是有限的,好记性不如烂笔头,把工作中遇到的问题记录下来,每个月进行文档输出,不但可以理清之前的问题,还能知道自己哪些地方不足,后续再自己去学习。这样做还有一个好处,就是评职称的时候不用再纠结自己没有东西写了。

相关推荐
正点原子2 天前
【正点原子Linux连载】 第十章 pinctrl和gpio子系统实验 摘自【正点原子】ATK-DLRK3568嵌入式Linux驱动开发指南
linux·运维·驱动开发
星马梦缘2 天前
“零一”智能硬件开发挑战赛 宣传稿
驱动开发·智能硬件·活动·培训·科协
小此方3 天前
Re:Linux系统篇(五十四)线程篇 · 七:互斥锁的底层实现原理:从硬件上下文、原子交换指令(Swap)到并发封装实战
linux·运维·驱动开发
芯片设计-曾工5 天前
当精准脉冲遇上清晰视界——CH2205E模块与YL1621的“黄金搭档“
驱动开发·stm32·单片机·51单片机·硬件工程
平凡的小蚂蚁6 天前
Exynos4412-POP-7inLCD裸机开发完整教程(STM32 库风格)
驱动开发·stm32·单片机·嵌入式硬件·嵌入式·硬件工程
小此方6 天前
Re:Linux系统篇(五十二)线程篇 · 五:直击 Linux 内核底层:TCB 与 LWP 一体两面全解析(附自定义线程封装)
linux·运维·驱动开发
胡八一7 天前
虚拟串口com0com安装教程
驱动开发·stm32·单片机
智者知已应修善业7 天前
【三位数字显示计时定时器设计-同步方式】2025-6-30
驱动开发·经验分享·笔记·硬件架构·硬件工程
zhangfeng11337 天前
AI编程范式:从Vibe Coding(氛围编程)向SDD规范驱动开发演进全解析
人工智能·驱动开发·ai编程
JNX_SEMI7 天前
Hi5000Q/H 6.5~75V宽输入——与H5227A完全对等,无缝适配现有电源方案-聚能芯-智芯官方授权一级代理
驱动开发·单片机·嵌入式硬件·物联网·硬件工程