本帖最后由 红色飓风 于 2010-5-6 20:54 编辑
<试用>
学习使用SDK
通过学习XPS的使用,自己建立一个Microblaze系统,
可再通过ug729_sp605_software.pdf文档,
学习在SDK下建立软件工程的方法.
使用起来其实与Nios IDE差不多,都是Eclipse改过来的.
流程如下图
简单叙述一下:
1>. 打开EDK下面的SDK,选择workspace,
根据以前的习惯,在工程目录下,新建了一个SW的文件夹,作为workspace.
2>. 回到XPS下,选择Export Hardware Design to SDK,并选择Include BMM文件.这歩会产生.XML(hardware description)文件和BMM(BlockRAM Memory Map)文件
3>. 选择XML文件
4>. 新建 Software Platform, 类似Nios IDE下面的syslib
5>. 新建 Managed Make C Application Project, 即实际的软件工程.
6>. 选择HelloWorld模版,所有的工程在建立后都自动编译.
7>. 在Tool下面选择Program FPGA,即下载硬件程序.
8>. 在工程上右键,选择Run as…运行软件
在XPS下定制的系统有DDR3,UART,LED_PIO等,
写一个测试LED的程序,
修改HelloWorld如下
/*
helloworld.c: simple test application
*/
#include <stdio.h>
#include
"platform.h"
#include
"xparameters.h"
#include
"xgpio.h"
int main()
{ XGpio led;
unsigned
char i=0x01;
int temp=100000;
init_platform();
XGpio_Initialize(&led,XPAR_LEDS_4BIT_DEVICE_ID); XGpio_SetDataDirection(&led, 1, 0x0 ); print("Hello World\n\r");
while(1)
{ XGpio_DiscreteWrite(&led,1,i); while(temp--); i<<=1; if(i==0x10) i=0x01; temp=100000; }
cleanup_platform();
return 0;
}
SDK每保存便自动编译,听说可以设置,还没有找到.
经测试all OK.
但是软件似乎有个毛病,有时不能下载,需重新打开一次,才OK.
先写到这里,把自建的测试工程也传上来,供大家参考…
笔记里有不当,不对之处还请拍砖~
|