首页 » 99链接平台 » 嵌入式关于驱动开发的一些个人见解(框架驱动软件测试开发)

嵌入式关于驱动开发的一些个人见解(框架驱动软件测试开发)

神尊大人 2024-11-02 10:45:47 0

扫一扫用手机浏览

文章目录 [+]

主要进修内容

Bootloader的工作流程、UBOOT的编译、裁剪与移植、Linux内核的编译、裁剪与移植,根文件系统的构建、BootLoader、内核和根文件系统的烧写。

重点驱动框架如:字符设备驱动、块设备驱动、LCD设备驱动、触摸屏设备驱动,总线设备驱动模型,输写子系统模型等。

嵌入式关于驱动开发的一些个人见解(框架驱动软件测试开发) 99链接平台
(图片来自网络侵删)

进修资源举荐

视频:强烈举荐华维教师!

文章相对比较长,字数比较多,大家可以先打开头像关注我,之后慢慢看,///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像左下角黑色字体加我也能领取哦。
最近比较闲,带做毕设,带学生参加省级或以上比赛///

进修建议

对照视频一点一点进修的过程中,刚初始第一遍看的话会有很多地方不明白,不要紧。
假如在查阅了一些资料后还是不明白,能够先往后放放,不用深究。
内核的许多东西一旦深究起来,越陷越深。

作为初学者,进修驱动开发主要进修驱动的框架(假如,输写子系统模型常用的一个函数

input_attach_handler()这个函数,刚初始我们只须要知道他是拿来匹配dev设备和驱动软件就能够,暂时能够不用知道这个函数内部是怎么样达到的)。
有一定根底之后,能够再去深究其中的某个点,思考他们为什么这么写。

接着前几期关于嵌入式软件框架

框架能够达到和规定非功能性需求

非功能性需求是指如性能,可靠性,可测试性,可移植性等。
这些特性能够通过框架来达到。
以下我们一一举例。

性能。
对性能的优化最忌讳的就是普遍优化。
系统的性能往往取决于一些特定的点。
假如在嵌入式系统中,对存储设备的访问是比较慢的。
假如开发者不注意这方面的问题,频繁的读写存储设备,就会造成性能下降。
假如对存储设备的读写由框架设计,二次开发者只作为数据的提供和处理者,那么就能够在框架中对读写的频次进行调节,从而到达优化性能的目标。
由于框架都是单独开发的,完成后供广泛运用,所以就有条件对重要关键的性能点进行充分的优化。

可靠性。
以上面的网络通讯程序为例,由于框架负责了连接的创建和管理,也处理了各种可能的网络错误,详细的达到者没须了解这方面的知识,也没须达到这方面错误处理的代码,就能够保证整个系统在网络通讯方面的可靠性。
以框架的方式设计在可靠性方面的最大优势就是:二次开发的代码是在框架的掌控之内运行的。
一方面框架能够将容易出错的局部达到,另一方面对二次开发的代码产生的错误也能够捕获和处理。
而库则不能代替运用者处理错误。

可测试性。
可测试性是软件架构须要考虑的一个重要方面。
下面的章节会讲到,软件的可测试性是由良好的设计来保证的。
一方面,由于框架规定了二次开发的接口,所以能够迫使二次开发者开发出便于进行单元测试的代码。
另一方面,框架也能够在系统测试的层面上提供易于达到自动化测试和回归测试的设计,例如统一提供的TL1接口。

可移植性。
假如软件的可移植性是软件设计的宗旨,框架设计者能够在设计阶段来保证这一点。
一种方式是通过跨平台的库来屏蔽系统差异,另一种可能的方式愈加极端,基于框架的二次开发能够是脚本化的。
组态软件是这方面的一个例子,在PC上组态的工程,也能够在嵌入式设备上运行。

一个框架设计的实例

根本架构

功能特点

上面是一个产品系列的架构图,其特点是硬件局部是模块化的,能够随时插拔。
不同的硬件应用于不同的通讯测试场合。
假如光通讯测试,xDSL测试,Cable Modem测试等等。
针对不同的硬件,须要开发不同的固件和软件。
固件层的功能主要是通过USB接口接管来自软件的指令,并读写相应的硬件接口,再进行一些计算后,将结果返回给软件。
软件运行在WinCE平台,除了提供一个触摸式的图形化界面外,还对外提供基于XML(SOAP)接口和TL1接口。
为了达到自动化测试,还提供了基于Lua的脚本语言接口。
整个产品系列有几十个不同的硬件模块,相应的须要开发几十套软件。
这些软件虽然效劳于不同的硬件,但是彼此之间有着高度的相似性。
所以,选择先开发一个框架,再基于框架开发详细的模块软件成了最优的选择。

分析

软件局部的构造分析如下:

系统分为软件,固件和硬件三大块。
软件和固件运行在两块独立的板子上,有各自的处理器和操作系统。
硬件则插在固件所在的板子上,是能够替换的。

对单片机感兴趣的朋友可以找我,我录制了一些关于单片机的入门教程,有需要的童鞋找我拿就像,免费的,私信我“林老师”就可以拿~点击打开我的头像就能领取。

标签:

相关文章