×
嵌入式开发 > 详情

基于SEP3203处理器的BSP的实现探讨

发布时间:2020-07-06 发布时间:
|

1、引言

BSP是Board Support Package的缩写。该术语通常用于嵌入式领域,主要指在开发嵌人式应用时系统开发商提供的各种支持库。由于每个嵌人式系统提供商都根据自己的操作系统而提出对BSP的不同理解,因此,在涉及到BSP的具体涵义时,必须基于具体的嵌入式系统。本文将以基于SEP3203的无线通讯产品为例,说明其BSP 的内容及实现。该无线通讯产品硬件结构如(图一 无线通讯产品硬件结构图),SEP3203外接了Nor flash和SDRAM,并通过串口与无线模块和仪表通讯。软件执行流程图如(图二无线通讯产品软件流程图)。该无线通讯产品的BSP将提供给应用程序开发者一个与硬件无关的开发平台。

2、概要设计

2.1、无线通信平台BSP的内容

根据无线数据终端的硬件平台,BSP的内容应包括EMI (存储器接口)的配置、PMU(电源管理模块)的配置、代码的搬运和串口的驱动程序。

2.2、整体框架

为了完成BSP的内容,上电后,首先应配置EMI,PMU,这是因为EMI 决定了内存的地址分配,而PMU 是配置其它硬件的前提。然后,考虑到代码执行效率,将代码搬运到内存中执行,并进行指针的重新定位。最后,在主程序中完成对串口的配置如(图三 BSP流程)。从上电开始到Remap操作结束运行的这段代码即为无线通信平台的启动代码。

3、启动代码的设计

3.1、启动代码的编写

上电后,pc指针指向地址0x00000000,而此时地址0x00000000与NOR FLASH 首地址重合, 这时NOR FLASH 同时拥有两个地址:0x00000000和0x20000000。因此,pc指针实际指向了NOR FALSH 的首地址,即为启动代码的起始地址。启动代码编写如下:

//配置PMU与EMI

ldr r1, =0x1000100c //配置内部模块时钟源供给的控制寄存器

ldr r2, =0x0ffff;

str r2,[r1]

ldr r1, =0x10001014 //配置芯片工作模式寄存器

ldr r2, =0x1

str r2,[r1]

……

ldr r1, =0x11000000 //配置存储器参数配置寄存器

ldr r2, =0xB91331FF

str r2, [ r1 ]

ldr r1, =0x11000014 //配置SDRAM 时序配置寄存器

ldr r2, =0x01004077

str r2, [ r1 ]



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
基于嵌入式系统的CAN总线网络通信流程设计