BSP 系统的设计与实现分析论文

2020-06-17实用文

  1 BSP 系统设计的意义

  前置机通信板使用ARM 微处理器,通过两路以太网口利用安全通信协议实现与联锁机的通信,通过两路CAN 总线实现与电子执行单元的通信,提供8 个LED 灯位来实时显示各种工作状态,利用上电初始化时读取背板地址来动态设置两通道的IP 地址,并能够以主备方式工作。

  2 系统的设计与实现

  2.1 VxWorks 系统的主要性能特点

  VxWorks 系统所需要的存储空间最小要8KB(ROM),具有极好的可伸缩性;支持中断驱动的优先级抢占式调度和时间片轮转调度,并具有确定的、快速的上下文切换能力;支持信号灯、消息队列、管道、信号和套接字等进程间通信和互斥手段;支持诸如Ring、buffer、linklist 等共享内存技术;确定的微秒级的中断响应时间;支持使用于多种物理介质的TCP/IP 协议簇和几乎所有常用的基于TCP/IP 的应用层协议;快速灵活的I/O 系统;支持多种文件系统。

  2.2 BSP 开发流程

  BSP 的开发需要一个与目标板硬件环境相近的参考BSP 和相关代码模板,从而本文中的目标板是在公司已有的联锁机三取二主板的BSP 基础上,进行的二次开发。开发环境的建立,主要是以目标板BSP 文件为模版在Tornado 安装的target config 目录下创建用户BSP 目录bspname,把Tornado target config 下文件和BSP模版文件拷贝到该目录下。根据目标板的不同功能对配置文件、寄存器和引脚、内存地址映射、makefile 文件和相关驱动程序等进行配置和修改。根据具体需要在命令行环境下利用Makefile 创建各种镜像,也可以在Tornado 集成环境下Build 菜单中选择Build Boot Rom来创建各种类型的Boot Rom 镜像。

  3 镜像和驱动程序调试

  初级阶段,主要指bootrom 的调试。bootrom 的开发是VxWorks BSP 开发的起点,目标机没有提供任何服务,使用ADS 中的AXD 工具,通过JTAG 口将编译好的bootrom 文件加载到目标机中。在串口初始化后可以使用串口向电脑打印相关信息,观察bootrom 的运行状态。高级阶段,主要是指最小系统调试完毕后。这时串口驱动完成,在程序中调试相关函数可以轻松实现控制台串口的信息答应,并且串口可以作为开发主机与目标机之间的WDB 通道通信,WDB 连接上后就可以使用Tornado开发环境中提供的工具进行调试。

  3.1 调试环境

  开发主机操作系统为Windows XP,BSP 应用编程基于VxWorks 嵌入式实时操作系统,并在Tornado 集成开发环境下开发调试。开发主机与目标板之间通过ARMmulti-ICE 仿真器连接,开发主机利用该仿真器调试用于目标板的bootrom_uncmp 镜像和VxWorks 镜像。为了更好的调试,需要查看目标板BSP 的运行过程等信息,然而本目标板不具备VGA 接口,只能通过其自带的串口来输出调试信息。目标板通过自带的串口接9 针串口线与工控机(本设计中的开发主机只带有1 个串口)的COM1 相连,在工控机上利用超级终端来输出打印信息。在串口调试成功后,开始调试网口,目标板利用网口来启动VxWorks,这时目标板需要从开发主机上的TFTP来下载VxWorks。目标板镜像bootrom_uncmp 和VxWorks调试成功后,便可去掉开发主机与目标板之间的ARMmulti-ICE 仿真器,接上J-link 烧写工具,开发主机利用该工具把bootrom_uncmp.bin 烧写到目标板的ROM中。

  3.2 target server 的配置以及J-link 烧写工具为了能够实现正常连接,需要对target server 作相应的配置。并用J-link 把bootrom_cmp.bin 镜像烧到ROM 中。

  3.3 超级终端

  由于目标板硬件上没有VGA 接口,为了便于调试BSP 镜像和相关硬件驱动程序,用USART 下的Debug 口来输出调试信息。

  3.4 其它调试

  通过网络设备来启动VxWorks 系统时,需要通过TFTP 来下载bootrom_cmp 镜像和VxWorks镜像。在DebugMode 下,用串口、网口、TrueFFS 均能成功启动VxWorks后,便可改动启动模式为内部启动,即在BOOT Mode 下编译BSP,并重新生成boot image 镜像和VxWorks 镜像。

  3.5 驱动程序的调试

  Debug Mode 和Boot Mode 都能正常启动后,说明镜像是正确的。这时需要调试CAN 控制器SJA1000 的发送、接收功能,LED 灯光的设置和显示,动态电路的`切换,背板地址的读取,网络地址的自动判定,模式开关的读取。

  4 结论

  在本次设计,本人参阅了大量的文献资料,了解了VxWorks 实时嵌入式操作系统中板卡支持包BSP 的概念和作用,熟悉了ARM CPU 结构,掌握了基于ARM 平台的VxWorks 操作系统BSP 开发的技术难点和重点,完成了VxWorks 操作系统在ARM9 芯片AT91RM9200 上的BSP 设计与调试,实现了CAN 控制器SJA1000 的驱动、0~9档的模式开关选择、LED 状态灯的读取和控制、主备切换的动态电路以及板卡背板地址和网络地址的读取。

  参考文献

  [1] 李勇.基于ARM9 的VxWorks BSP 的设计与实现[D].湖南:湖南大学,2009.

【BSP 系统的设计与实现分析论文】相关文章:

1.统一协作系统的设计实现论文

2.图书馆图书管理系统的设计与实现分析论文

3.关于网络主动防御系统的设计与实现的分析论文

4.无线通信SCADA系统的实现与应用论文

5.解析科技竞赛赛务系统的设计与实现论文

6.实时双向交互式远程教学系统的设计与实现论文

7.商务会馆管理系统的设计与实现论文

8.关于多媒体开锁系统的设计与实现的论文

上一篇:统一协作系统的设计实现论文下一篇:开封木板年画的价值与传承意义论文