|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
这是一段Microblaze的程序,其功能是对8个LED进行控制,引脚我已经锁定好了;
可是程序下载以后,并没有预料的结果;
我想问的是:
1.XGpio_mSetDataReg(BaseAddress, 1, 0x55);
这个函数中BaseAddress是LED的基地址,
1表示通道,0x55表示写给输出端口的数据;
那么这个通道是怎么确定,我如何知道这个我所约定的那些引脚
正好对准这个通道呢?
2.我下载以后为什么就是没有预料的结果呢?
3.Microblaze应该使用什么复位电平呢?
麻烦各位知情的帮我分析一下!谢谢!
void WriteToGPOutput(Xuint32 BaseAddress, int gpio_width)
{
int i=0;
volatile int delay=0;
XGpio_mSetDataDirection(BaseAddress, 1, 0x00000000); /* Set as outputs */
while (1)
{
for(i=0; i<(gpio_width-1); i++)
{
XGpio_mSetDataReg(BaseAddress, 1, 0x55);
for (delay=0; delay<1000000; delay++);
}
for(i=0; i<(gpio_width-1); i++)
{
XGpio_mSetDataReg(BaseAddress, 1, 0x55);
for (delay=0; delay<1000000; delay++);
}
}
}
int main (void) {
WriteToGPOutput(XPAR_LEDS_BASEADDR, 8);
return 0;
}
|
|