|
本帖最后由 beirvin 于 2012-11-25 16:49 编辑
最近在学习Xilinx FPGA,遇到诸多问题,从开始在ISE下用Verilog编程,到随后转用EDK下用软硬协同尝试用C进行编程,每个过程都不是很简单。最近摸索了比较长的时间尝试导入自定义IP,IP是能够正常导入,自定义流水灯led_ip能够按照预期运行,自编代码如下:
// Located in: microblaze_0/include/xparameters.h
#include "xparameters.h"
#include "stdio.h"
#include "xstatus.h"
//====================================================
void Delay(unsigned int t);
int main(void)
{
char i = 0,k = 0;
print("-- Entering main() --\r\n");
while(1)
{
k = 0x01;
for(i = 0;i < 8;i++)
{
(*(volatile unsigned int*)0xCF400000) = k; //0xCF400000为led_ip的地址
xil_printf("Now,The led %d is runing!\r\n", i);
k = k << 1;
Delay(5000);
}
}
return 0;
}
void Delay(unsigned int t)
{
unsigned int i,j;
for(i = t;i > 0; i--)
for(j = 1000; j > 0;j--);
}
当这个把程序烧写进FPGA能够按照预想的运行,这个程序基本上没有使用Xilinx的驱动库,并不是我不想用,而是不会用。
之后想再尝试着驱动LCD12864,自定义lcd_ip并导入,这是尴尬出现了,这个突然发现不知道该如何去驱动了,看着官方例程很多都是用Xilinx驱动库来写程序的,自己编写了一个,一模一样的代码却出现错误,
查看工程设置,出了优化级别外其他设置都一样(或许很细小的地方忽略了吧),但是就是编译出错,这个问题不知道该怎么解决,希望有经验的朋友不吝赐予指导,感谢!工程截图如下:
阿莫里的好友,希望大家能够活跃交流共同进步!就像我当时学STM32一样,野火专区的朋友交流很活跃,所以大家的进步都很快,自己摸索很久的小问题,只需要花一点时间的交流就可以解决了! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|