当前位置: 首页 > news >正文

英文网站建设推广炽乐清网站建设

英文网站建设推广,炽乐清网站建设,wordpress文章页404,wordpress做网站优点这里因为最近一年看到公司某项目很多代码上有直接硬件的操作,这里有感而发,介绍移植的概念。 一、硬件 先上一个图: 举个例子,大学里应该都买过开发板,例如st的,这里三个层次, 内核&#xff…

这里因为最近一年看到公司某项目很多代码上有直接硬件的操作,这里有感而发,介绍移植的概念。

一、硬件

先上一个图:

f1f6cafe96f18599dac3273b1082a786.png

举个例子,大学里应该都买过开发板,例如st的,这里三个层次,

内核:例如上图 cortex-M3,这个由ARM公司设计的。

soc:例如上图的stm32f103zet6,arm公司将其授权给芯片厂商 ST,ST在其外围加入一些必要的硬件单元,如时钟,中断控制器之类。例如ST卖的soc里内核为cortex-M3里还有其他型号。

board: 图中的board,板级,理解为板子吧,st自己也会画板子验证芯片,然后作为demo板给其他买st的芯片的设备厂商做参考,例如公司跟某家芯片的代理商购买芯片同时也会买官方的demo板会来参考设计硬件。再例如原子卖的什么阿波罗,野火卖的什么指南者霸道者之类,都理解为板级。

二、软件

到这里有个概念了,内核和soc相关的软件代码由半导体厂商提供,例如你买原子的资料都会提供一份原厂的sdk,而sdk里的demo由的则是基于他们的板子编写一些参考代码,可以直接在上面跑起来。

由于st的demo板硬件和原子他们之间有区别,所以会根据实际做修改,扩展,例如我们做产品的时候为了在我们板子跑起来也会做一些修改,都是属于板级的代码。所以一些移植工作其实就是根据实际的硬件,对半导体厂商提供的参考软件做修改。

2.1、操作系统

例如移植一些系统的时候,都是拿半导体商官方移植好的来修改,也就是上面的一套:内核+soc+board,主要是内核和soc这部分,因为最熟悉的还是半导体厂商他们自己的软件工程师,就算soc没有找到相同型号的代码也要找内核为一样的,这样能大大减少工作量。

工作中常见的如系统移植,像Rtos,以上面图片里的stm32f103无论哪家教程他们也是找官方移植好的下载下来参考,这里其实主要还是板级的移植,根据硬件的区别做修改,soc和内核那部分的适配原厂已经做好了,工作量不大,因为本来就是能跑起来的。

假如没有,例如你要用rt-thread,但是官方没有rt-thread的移植,这时候你就可以看看官方有没有移植好其他系统的代码,例如有freertos。那你的移植就得了解freertos和rt-thread代码,对比去做移植,将soc,内核相关的代码参考freertos做适配(例如freertos这部主要是在port那部分)。这里的工作量就是你对原厂做好的那份能跑freertos的了解和对rt-thread的了解。

这个思路放在其他系统也是一样的,例如linux的移植,像野火和原子的imx6ull教程也是参考官方的代码做板级上的区别做修改,野火的板子烧录nxp官方移植好的uboot、linux内核、文件系统是可直接跑起来的,然后根据实际硬件的区别做一些修改,后面工作量就是根据具体瑕疵问题做修改,所以这里linux的移植的工作量,还是对 uboot、linux内核的代码和使用有一定了解,出了问题可以定位需要修改的地方。linux里对板级的适配提供了一套组件,加载内核的时候同时也要加载设备树文件,就是说把板级的差异提取成以配置文件的形式,可以更加方便板级这部分的修改。

2.2 其他纯软件组件

纯软件的就不多说,根据实际的组件需要的接口做适配即可,例如算法。但是还是需要对你用的组件代码有一定了解,例如用的组件他是基于32位系统的,但是你现在跑的soc是8位的;或者说你用的这份软件用到了浮点数操作,但是用的soc却不支持浮点数的使用。笔者曾经用过汇顶的脉率模块,就平时手环经常看到的功能,当时工作量是:汇顶提供的软件库文件,然后我这在我们的代码上提供控制这个模块用的i2c接口就跑起来了。

类似的例如GUI,工作量还是适配一些需要的软件接口如堆管理接口,刷屏接口,如果还用到了触摸,则提供触摸状态、坐标读取接口。

三、得到的启发

到这里可以明白为什么强调软件要分层了吧?分层做的合适,代码就是可移植的,只要适配好下层接口,把硬件相关,平台相关的代码都抽出来,必要的时候加一些配置项,那代码就是可移植的,做类似的新项目,或者项目换方案的时候,可以快速的验证。

http://www.yayakq.cn/news/576657/

相关文章:

  • 南阳教育论坛网站建设做品牌推广应该怎么做
  • 响应网站wordpress cdn 非插件
  • phpcms建设网站雷州网站
  • 网站建设费用 百度文库网站导航优化的描述
  • 邢台高端网站建设公司线上平面设计课程
  • wordpress站点登陆上海华谊集团建设有限公司网站
  • 网站上搜索的动图怎么做壁纸宣传平台有哪些
  • 汤臣倍健网站建设方案网站推广策划案怎么选
  • 网站建设续费是什么费用杭州网站建设公司有哪些
  • 315晚会 网站建设公司Wordpress分类页插件
  • 推推蛙网站建设wordpress无法连接远程mysql
  • 网站开发硬件配置优秀网页设计作品文字分析
  • 上海专业网站建站公司建一个团购网站
  • 微商城手机网站制作公司合肥室内设计公司有哪些
  • 网站备案多少钱智卡会员管理系统
  • 广告网站建设网做刷题网站赚钱么
  • 免费html网页模板网站wordpress怎么ftp建站
  • 衡水专业网站建设公司网站建设的技术方案
  • 泰安哪个做网站房地产项目网站建设方案
  • 唐山网站建设汉狮怎么样个人征信系统查询官网
  • 哈尔滨网站推广网站建设用模板
  • 建立网站编码 优帮云个人网站模板 html5
  • 刚注册在域名可以自己做网站吗北海 网站建设
  • 手机网站推广法怎么做营销网站推广
  • 好公司网站建设价格低修改wordpress注册邮件
  • 如何做网站商城北京网站的制作设计
  • 专业网站建设品牌策划思途做的旅游网站
  • 招商网站设计网站标题logo修改代码
  • 绿色食品网站源码国内重大新闻2022
  • 长春网站快速排名提升股票交易网站开发