当前位置:首页 > 嵌入式软件
[导读]

http://一、嵌入式系统简介
  1、 嵌入式系统的基本特征
(1) 专用的嵌入式cpu
   该cpu具有高效率、低功耗、体积小和集成度高等特点,能够把通用cpu中许多由板卡完成的任务集成在芯片内部完成,有利于嵌入式系统设计趋于小型化,移动能力增强,与网络耦合紧密。
(2) 专用性和算法的唯一性
  设计成完成某一特定任务,和相应具体任务有机结合在一起,具有较长的生命周期。
(3) 多种技术的结合体
  计算机技术、半导体技术以及电子技术和各行业的具体应用紧密结合在一起的系统。
(4) 软硬件紧密的相互依赖性
  专用性决定了设计目标是单一的,硬件和软件的依赖性强,用利于版权的保护。
(5) 系统对用户透明提供各类arm开发板/开发工具http://edmarket.com.cn/plist-3-855.html  用户使用只是按照预定方式使用,不需要用户编程和修改。
(6) 大多具有实时性
  如工业仪表、控制装置、数控系统、信息家电等。
(7) 系统资源有限
  速度和存储容量以及扩展接口有限。
(8) 多为分布式系统
  更易于保证硬实时要求、更便宜和更易于实现。
2、嵌入式软件的特点
(1) 多具有实时性
  指操作系统内核采用了一种算法,使tc(context swich)和ts(system call)尽可能小、尽可能是常量和可确定。所谓可确定是指tc和ts有一个上限,而不是一个统计的结果,即不会出现峰值,不会随系统任务的增多而增多提供各类arm开发板/开发工具http://edmarket.com.cn/plist-3-855.html。
(2) 有并发处理能力
  能并发处理各个事件驱动,采用多任务运行机制。
(3) 具有快速启动、出错处理和自动复位能力
  能从只读存储器中快速启动,具有高容错机制,在系统出现死机前自动重启。
(4) 应用软件和操作系统一体化设计
    硬件和软件一起设计,以解决特定的问题,不同的系统有不同的配置。
(5) 交叉开发环境提供各类arm开发板/开发工具http://edmarket.com.cn/plist-3-855.html
二、嵌入式系统软件开发流程
1、需求分析
2、设计思路  (1) 概要设计  (2) 详细设计  (3) 详细写出测试项目(包括测试类别、测试过程、测试预测结果)
3、编码
  (1) 各芯片代码模块化,有利于移植  (2) 需要注意一些小问题(如边界条件、内存越界访问、空指针等)ⅰtypedef struct{……ushort wtr;uchar delay;uchar mode;} setlogicsubnetreqstruct;void oam_setlogicsubnet_req(uchar* pmsg){datagramhead *pdatagramhead;uchar *pdata;提供各类arm开发板/开发工具http://edmarket.com.cn/plist-3-855.htmlsetlogicsubnetreqstruct *psetlogicsubnetreq;ulong i, count;ushort subnet_id, e_from_tsn1, e_to_tsn1, w_from_tsn1, w_to_tsn1,e_from_tsn2, e_to_tsn2, w_from_tsn2, w_to_tsn2, e_s_b_tsn, e_p_b_tsn, w_s_b_tsn, w_p_b_tsn;uchar selfid, num, e_id, w_id, delay, mode;uchar wtr;……wtr = psetlogicsubnetreq->wtr;……}ⅱstatus syscpmenetaddrget(int unit,uint8 *addr){char *buff = null;#ifdef include_nvramgetcpmmacaddr(buff, max_adr_size);……}
4、测试提供各类arm开发板/开发工具http://edmarket.com.cn/plist-3-855.html
  (1) 单元测试(在单机上测试)  (2) 联调(主要测试接口)  (3) 系统调试(测试功能)
三、vxworks嵌入式实时操作系统
  1、bsp(board support package)的概念

换一批

延伸阅读

[小麦大叔] 一文教你快速学会分析运算放大器电路

一文教你快速学会分析运算放大器电路

1 运算放大器(OPAMP) 集成运算放大器有同向输入端和反向输入端,具体如下图所示; 输出电压 满足关系,集成运放最终放大的是差模信号,在没有引入反馈的情况下,电压的放大倍数为差模开环放大倍数,这里记作,因此当运放...

关键字: 嵌入式 运算放大器

[C语言与CPP编程] 代码防御性编程的十条技巧

代码防御性编程的十条技巧

 什么是防御性编程?  顾名思义,防御性编程是一种细致、谨慎的编程方法。为了开发可靠的软件,我们要设计系统中的每个组件,以使其尽可能的”保护”自己。我们通过明确地在代码中对设想进行检查,这是一种努力,防...

关键字: 嵌入式 C语言

[embed linux share] c语言也能用模板方法模式?

c语言也能用模板方法模式?

 模式动机  在嵌入式的应用场景中,管理资源(例如文件、内存)是一件非常麻烦、非常容易出错的事情。因为在分配资源后,还必须释放资源。例如fopen()打开文件后,必须要使用fclose()来关闭文件,而...

关键字: 嵌入式 C语言

[程序喵大人] 面试系列之指针和引用的使用场景

面试系列之指针和引用的使用场景

先抛出两个问题: ◆ 指针和引用有什么区别? ◆ 什么时候应该使用指针?什么时候应该使用引用? 01  指针和引用的区别 首先看一段代码: 指针其实就是一个存放内存地址...

关键字: 嵌入式 C语言

[wenzi嵌入式软件] 关于 extern 你容易忽视的用法

关于 extern 你容易忽视的用法

extern 的含义 首先看到 extern 的出现,我们应该明白其含义是全局的意思。其次当看到 extern 修饰一个变量时,我们应该能够区分这是对于一个变量的声明,相应的,有了对于变量的声明,那么就应该具备变量的定义。关于变量...

关键字: 嵌入式 extern

嵌入式软件

15476 篇文章

关注

发布文章

技术子站

关闭