嵌入式系统设计——初识(1)

一、嵌入式系统设计课程内容目标
1、了解嵌入式技术;
2、掌握嵌入式Linux操作的使用; (命令)
3、掌握嵌入式Linux开发工具的使用; (gcc、 gbd、 make、 shell)
4、掌握嵌入式Linux应用开发; (文件、 多任务、网络) (数据库)
5、了解嵌入式产品开发流程; (硬件–软件–系统)
6、了解嵌入式系统移植; (u-boot、 内核、文件系统)
7、了解嵌入式底层软件开发; (驱动开发)
二、嵌入式开发概述
1、嵌入式技术是什么?

刚开始的时候我认为嵌入式技术是利用软硬件技术结合来实现控制功能,和单片机比起来应该只是相对来说高级些。
那么要回答这个问题首先要解决这几个问题。
嵌入式软件与非嵌入式软件的区别?
嵌入式开发与单片机开发的区别?
嵌入式开发的优缺点?

在“嵌入式”技术之前,工程人员多用单片机来实现简单的控制,单片机的技术相对传统,相较于10年前来说,它的大方向技术并没有改变,仍然采用的传统的软硬件结合的方法,现在各大高校开设单片机课程,更多的是让学生熟悉硬件开发。但正是只涉及了软硬件两方面,就涉及到了耦合度的问题,即该软件只能适用于该硬件,假如硬件进行了升级换代,或者由不同公司开发了不同型号的硬件,之前所编写的整个软件系统就必须更换,基本上需要重现编写。就比如最基本的流水灯问题,假如两块板高低电平点亮不同,串口不同,都是需要更新软件的。这在时间就是金钱的信息科技时代是必然会被淘汰掉的。
总结下传统开发的缺点
软件移植性差(适配平台能力差);
开发人员能力要求高(软硬通吃);
为了解决这一突出问题,人们开发了操作系统,用来提高软件的移植性跨平台移植的便捷性。
操作系统的作用:管理资源(软件资源、硬件资源) ==管家
操作系统的优点:
使软件实现跨平台移植;
把软件和硬件“分离”,降低对工作人员要求;
提供了开源的软件、工具和库;
实现了多任务多进程机制;
提供了丰富的网络协议;
最后根据这三方面,可以对嵌入式进行一个总结。
嵌入式:在已有的硬件上移植操作系统;在操作系统之上做上层应用开发,在操作系统之下做底层开发;
所以可以移植(代码开源、提供可移值接口)的操作系統称之为嵌入式操作系統。
当然有利必有弊,由于中间加了操作系统,就对硬件有了较高的要求,就好比单片机无法去跑windows系统,需要具备足够内存的硬件在可以被移植上操作系统,也只有这一硬件的处理性能达到一定高度,才能让操作系统正常运行,以支撑起整个软硬件系统的正常工作,这无形之中会增加产品开发的成本。
操作系统的缺点:
成本高,不适合小型产品;
2、嵌入式开发方向
根据刚才对嵌入式的总结,在嵌入式的开发也就分为了三个方向:
嵌入式上层应用软件开发
a.精通一门语言;
b.熟悉-款操作系统;(会看说明书)
C.数据结构/算法;
嵌入式底层系统软件开发
a.精通C语言;(所有的操作系统内核都是由c+汇编开发的)
b.理解操作系统的实现;(会使用,也会添加/修改功能)
c.熟悉硬件的工作原理;
d.熟悉汇编;
嵌入式系统工程师
此处讲一些问题:
嵌入式系统课程学习储备知识?
C语言(累计代码:3w)+单片机(熟悉硬件)
为什么选择C语言?
C语言能够直接访问硬件,有良好的移植性,运行效率高。
为什么C语言能直接访问硬件?
C语言有指针数据类型。
什么时候选择用汇编语言,什么时候用C语言?
硬件初始化的时候用汇编,对硬件进行复杂操作时使用C语言。
硬件配置及常见外设?
CPU:stm32+64位。
外设:SPI,IIC,蓝牙,wifi,物联网,摄像头等。
操作系统衡量指标?
实时性(软件、硬件) :规定的时间内完成规定的动作
其中vxworks:实时性强
Linux:无实时性,运行效率稳定
RT-Linux,openwrt: 具备实时性
安卓:实时性较差
此上就是我对嵌入式的初步认识。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值