首页 新闻资讯 技术资料 论坛 网站地图
CPLD/FPGA 工业控制 测试测量 传感控制 AD/DA 电源系列 通信产品
电子元器件搜索:
IC库存(8958万) PDF资料(329万) IC价格 IC求购 资讯 技术资料
维库电子市场网是知名的电子元器件交易网站, 为电子生产企业提供IC库存和技术资料查询服务。
位置: 首页 > 详细信息
  [分享]基于VXWORKS的嵌入式开发设计讲义
出处:综合电子论坛 时间: 2007-11-13
zhangdan 发布于 2007-11-13 16:03:59
表情[分享]基于VXWORKS的嵌入式开发设计讲义

一、嵌入式系统简介

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.html

    SetLogicSubnetReqStruct *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_NVRAM

getCpmMacAddr(buff, MAX_ADR_SIZE);

……

}

4、  测试提供各类ARM开发板/开发工具http://edmarket.com.cn/plist-3-855.html

(1)       单元测试(在单机上测试)

(2)       联调(主要测试接口)

(3)       系统调试(测试功能)

三、VxWorks嵌入式实时操作系统

1、  BSP(Board Support Package)的概念

2、  满足应用对时间的响应要求

3、  多任务内核(实时调度、任务间通信、互斥访问)

4、  标准库文件

5、  可抢占式调度、快速、系统小而且可配置

6、  所有任务工作在同一个地址空间内,所有任务运行在特定优先级模式

7、  VxWorks开发环境Tornado

(1)       Launch

(2)       WindSh

(3)       CrossWind

(4)       Browser

(5)       Project Facility

(6)       WindView

(7)       Simulator

四、单盘软件主要应用举例

MCU的初始化流程

将以下划分的各个功能模块依次添加到UserAppInit()函数中以完成各单盘的上电初始化过程,在各个功能模块中按照单盘的具体情况填写相应程序段。提供各类ARM开发板/开发工具http://edmarket.com.cn/plist-3-855.html

如果需要其他特殊功能模块可以在适当的位置自行添加。



InitMemory()



InitDataStructure()



ReadConfig()



InitModule()



InitMcpMcuComm()



SendReset()



CreateTask()



CreateMsgQueue()


zjf0315 发布于 2007-11-13 22:16:48
表情

看得不是太明白!!对我来讲难了点!!谢谢!!!


关闭】 【打印
相关专题  
嵌入式开发新闻
嵌入式硬件
通信产品
嵌入式系统
军工/航空航天
CPLD/FPGA
工业控制
电源系列
嵌入式软件
综合电子技术
接口电路
AD/DA
软件开发
安防产品
SOPC
IC设计
传感控制
医疗电子
测试测量
汽车电子
计算机外设
数控系统
消费电子
应用产品
存储器

© 2007 百斯嵌入式开发网 网站地图