国产九九热视频-国产九九精品视频-国产精自产拍久久久久久蜜-国产精自产拍久久久久久-国产精在线-国产精亚洲视频

以文本方式查看主題

-  曙海教育集團(tuán)論壇  (http://www.hkzrsy.com/bbs/index.asp)
--  VxWorks BSP開發(fā)  (http://www.hkzrsy.com/bbs/list.asp?boardid=37)
----  基于ARM7核處理器VxWorks系統(tǒng)BSP設(shè)計(jì)  (http://www.hkzrsy.com/bbs/dispbbs.asp?boardid=37&id=1941)

--  作者:wangxinxin
--  發(fā)布時(shí)間:2010-12-1 10:44:44
--  基于ARM7核處理器VxWorks系統(tǒng)BSP設(shè)計(jì)
摘要:該文主要介紹了SAMSUNG公司的基于ARM7TDMI核S3C4510B微處理器,并詳細(xì)介紹了利用該處理器所設(shè)計(jì)的嵌入式系統(tǒng)以及VxWorks操作系統(tǒng)下BSP(Board Supported Package)的開發(fā)。

關(guān)鍵詞:ARM7TDMI S3C4510B VxWorks BSP

1 介紹

S3C4510B是三星公司推出的針對(duì)嵌入式應(yīng)用的16/32 位嵌入式處理器,該微控制器專為以太網(wǎng)通信系統(tǒng)的集線器和路由器而設(shè)計(jì),具有低成本和高性能的特點(diǎn), S3C4510B中內(nèi)置了設(shè)計(jì)的16/32位ARM7TDMI處理器, 可以執(zhí)行32位的ARM指令,也可執(zhí)行16位的THUMB指令, 并集成了多種外圍部件,主要有

● 時(shí)鐘頻率50MHz

● 內(nèi)核/IO電壓3.3V

● 8KB的Cache/SRAM

● 一個(gè)10/100Mbps 以太網(wǎng)控制器,MII接口

● 兩個(gè)HDLC通道,每個(gè)通道可支持10Mbps

● 兩個(gè)UART通道

● 兩個(gè)DMA通道

● 兩個(gè)32位定時(shí)/計(jì)數(shù)器

● 18個(gè)可編程I/O口

● 中斷控制器,支持21個(gè)中斷源,包括4個(gè)外部中斷

● 支持SDRAM,EDO DRAM,SRAM,F(xiàn)lash等

● 具有擴(kuò)展外部總線

● JTAG接口,支持軟件開發(fā) ,硬件調(diào)試

S3C4510B支持目前常用的嵌入式操作系統(tǒng),如VxWorks、pSoS、ucLinux等,本文將主要介紹VxWorks操作系統(tǒng)下的軟件開發(fā)。

ARM7TDMI是ARM家族通用的一款32位微處理器,它主要為用戶提供了高性能、低價(jià)格解決方案。

ARM7TDMI具有三級(jí)流水線的32位RISC處理器,處理器結(jié)構(gòu)為馮·諾依曼Load/Store。該CPU具有兩種指令集,即ARM和Thumb指令集。ARM指令集是32位,它可以利用CPU最大性能;而Thumb指令集則是16位指令集。

ARM7TDMI內(nèi)核方塊圖如圖1所示。

2 系統(tǒng)硬件圖

該系統(tǒng)主要以S3C4510B為核心,外圍集成了以太網(wǎng)卡、SDRAM、FLASH、UART以及HDLC等。圖2是以S3C4510B為核心的最小系統(tǒng)設(shè)計(jì)圖。

SDRAM選用HY57V653220(8Mbyte)、兩片F(xiàn)LASH分別為AM29F040(存放bootrom)和T28F160BT(作為文件系統(tǒng)用)。

3 VxWorks操作系統(tǒng)下BSP構(gòu)建

在完成板上基本硬件的測(cè)試后,下面我就開始對(duì)vxWorks操作系統(tǒng)下BSP進(jìn)行開發(fā),開發(fā)前需要做一些準(zhǔn)備工作,如準(zhǔn)備開發(fā)工具等。

① 開發(fā)工具用的是Tornado2.2 for ARM;

② 參考資料有BSP Kit、S3C4510B DataSheet;

③ 參考Tornado2.2 for ARM下自帶的wrSBCArm7 BSP;

④ 燒寫程序采用編程器。

通常在開發(fā)BSP的時(shí)候,我們需要在Tornado原帶BSP目錄下找一個(gè)與我們所用的處理器相同或相近。與BSP相關(guān)的文件有:romInit.s、sysAlib.s、bootInit.c、bootConfig.c、sysLib.c、config.h、configNet.h、makefile以及與我們硬件相關(guān)的,如串口sysSerial.c等。由于篇幅所限,具體的文件作用在此就不說了。下面主要根據(jù)S3C4510B來闡述一下BSP開發(fā)步驟。

(1)拷貝BSP

將wrSBCArm7 BSP拷貝一份并命名為4510BSP,接下來的工作就是修改該目錄下的文件,從而得到自己的BSP。

(2)修改MakeFile文件

修改4510BSP目錄下的makefile文件,修改如下幾行

TARGET_DIR = 4510BSP # changed by caiyang

VENDOR = CAI # changed by caiyang

BOARD = MyArmBoard # changed by caiyang

ROM_TEXT_ADRS = 01000000 # ROM entry address

ROM_WARM_ADRS = 01000004 # ROM warm entry address

ROM_SIZE = 00080000 # number of bytes of ROM space

RAM_LOW_ADRS = 00006000 # RAM text/data address (bootrom)

RAM_HIGH_ADRS = 00486000 # RAM text/data address (bootrom)

MACH_EXTRA =

注解:ROM_TEXT_ADRS:BOOT ROM的入口地址。對(duì)大多數(shù)板來說,這就是ROM地址區(qū)的首地址,然而也有的硬件配置使用ROM起始的一部分地址區(qū)作為復(fù)位向量,因此需要根據(jù)此設(shè)置偏移量作為它的地址。這個(gè)偏移量因CPU結(jié)構(gòu)而定。

ROM_WARM_ADRS:BOOT ROM熱啟動(dòng)入口


主站蜘蛛池模板: 鄂托克旗| 蒲城县| 永丰县| 澜沧| 阳信县| 连江县| 华安县| 通城县| 璧山县| 正镶白旗| 抚州市| 定安县| 德格县| 石阡县| 松潘县| 龙里县| 安阳市| 安达市| 沙雅县| 石首市| 曲阜市| 五常市| 永仁县| 呼玛县| 武汉市| 黑山县| 顺平县| 公安县| 会东县| 金塔县| 洮南市| 抚远县| 大宁县| 青铜峡市| 射阳县| 汉源县| 云梦县| 兴业县| 金溪县| 方山县| 安丘市|