1.通过对I/O流驱动的开发,在初始化XXX_Init()函数中对寄存器进行设置后,开发板启动后,LED灯是否应该是根据自己写的寄存器状态来显示的?
从PDF来看GPM0~3是LED灯的4个I/O口。寄存器GPMCON设置为OUT、GMPPUD设置为上拉、GPMDAT设置为00001(应该是亮一个灯是吗?)
以下是我初始化的代码,望高人指点迷津:
#include <bsp.h>
#include "Led.h"
#include "s3c6410_gpio.h"
#include "s3c6410_base_regs.h"
//GPIO Virtual Address
volatile S3C6410_GPIO_REG *v_pIOPregs = NULL;
DWORD LED_Init(LPCTSTR PContext, LPCVOID lpvBuscontext)
{
PHYSICAL_ADDRESS ioPhysicalBase = {0,0};
ioPhysicalBase.LowPart = S3C6410_BASE_REG_PA_GPIO;
// 得到GPIO 寄存器的地址
v_pIOPregs = (S3C6410_GPIO_REG *)MmMapIoSpace(ioPhysicalBase, sizeof(S3C6410_GPIO_REG), FALSE);
if (v_pIOPregs == NULL)
{
return FALSE;
}
v_pIOPregs->GPMCON = (v_pIOPregs->GPMCON | 0x00111111);
v_pIOPregs->GPMPUD = (v_pIOPregs->GPMPUD | 0x000002aa);
v_pIOPregs->GPMDAT = ~(v_pIOPregs->GPMDAT & 0xfffffffe);
return 1;
}
15 个解决方案
#1
楼主说的开发板启动是指什么状态,是上电后开启的过程中,还是说已经出现桌面了。
首先,看你的驱动是否是自动加载的,还是说需要你自己手动加载的,根据这个不同,可能LED显示出你要的效果的时间也不同;
其次,注意硬件电路的设计和在bsp中是否有其他地方使用了该IO端口,如果有的话可能会影响你的显示结果。
首先,看你的驱动是否是自动加载的,还是说需要你自己手动加载的,根据这个不同,可能LED显示出你要的效果的时间也不同;
其次,注意硬件电路的设计和在bsp中是否有其他地方使用了该IO端口,如果有的话可能会影响你的显示结果。
#2
wince系统启动的时候,NK加载设备管理器device.dll
device.dll会加载总线驱动,然后到注册表BuiltIn下枚举系统注册的流驱动。
如果你自己编写的流驱动已经配置好,包括注册表。
那系统就会进入你的XXX_Init函数,从而设置IO寄存器,LED灯应该根据你寄存器的设置亮灭。
你可以在这个函数里面加串口信息,看看系统启动的时候是否进入到了XXX_Init函数。
device.dll会加载总线驱动,然后到注册表BuiltIn下枚举系统注册的流驱动。
如果你自己编写的流驱动已经配置好,包括注册表。
那系统就会进入你的XXX_Init函数,从而设置IO寄存器,LED灯应该根据你寄存器的设置亮灭。
你可以在这个函数里面加串口信息,看看系统启动的时候是否进入到了XXX_Init函数。
#3
这段代码看不出什么问题。。。
lz可以通过串口打印调试信息,看看驱动是否加载,初始化是否执行
lz可以通过串口打印调试信息,看看驱动是否加载,初始化是否执行
#4
#5
看下你的电路图,高电平点亮还是低电平点亮....
#6
启动是指已经进入系统了,看到WINCE的界面了。
我的理解是首先要先开发BSP中的流驱动,然后编译一个带流驱动的镜像,烧录到开发版中。
我这里写的代码是指已经通过BSP编译,然后通过BSP再生成的系统镜像烧录到开发板中。在INIT中的初始化后似乎灯始终没反应。 不知道该如何判断是否加载成功。
#7
启动是指已经进入系统了,看到WINCE的界面了。
我是个新手,想请教下串口信息如果加入以及可以在哪里可以看到。
#8
连接你的串口到PC的串口,在简单设置下
超级终端...串口调试助手
#9
通过串口,在超级终端中打印显示
主要是修改debug.c文件,可以参考以下两篇文章
http://blog.csdn.net/androidfan/article/details/5805945
http://gxzx99.blog.163.com/blog/static/12655671620101219531180/
主要是修改debug.c文件,可以参考以下两篇文章
http://blog.csdn.net/androidfan/article/details/5805945
http://gxzx99.blog.163.com/blog/static/12655671620101219531180/
#10
楼上说的对,不过一般debug的函数应该已经提供了的,楼主看一下自己的bsp内容就知道了。用串口查看就像你烧写nk的时候那样,可以从串口看到很多调试信息的,如果楼主没有,我可以给你一份pdf资料,里面会有一些介绍的。
#11
那麻烦您发我一份 dingqi_jiang@hotmail.com 谢谢
#12
非常感谢,我试下,您是否以前做过FPGA连接ARM的数据传输?
#13
已经发送了,其实很多开发板都会带这种使用资料的,里面有关于dnw的使用,你会看到下载bootloader或者nk等都会有很多调试信息从串口中输出的。
#14
楼主可否给我也发一份如何打印调试信息的资料,我最近也在弄一个中断触发arm和fpga通信的问题 也比较不清楚 希望能加好友一起交流 qq:563748383
#15
#1
楼主说的开发板启动是指什么状态,是上电后开启的过程中,还是说已经出现桌面了。
首先,看你的驱动是否是自动加载的,还是说需要你自己手动加载的,根据这个不同,可能LED显示出你要的效果的时间也不同;
其次,注意硬件电路的设计和在bsp中是否有其他地方使用了该IO端口,如果有的话可能会影响你的显示结果。
首先,看你的驱动是否是自动加载的,还是说需要你自己手动加载的,根据这个不同,可能LED显示出你要的效果的时间也不同;
其次,注意硬件电路的设计和在bsp中是否有其他地方使用了该IO端口,如果有的话可能会影响你的显示结果。
#2
wince系统启动的时候,NK加载设备管理器device.dll
device.dll会加载总线驱动,然后到注册表BuiltIn下枚举系统注册的流驱动。
如果你自己编写的流驱动已经配置好,包括注册表。
那系统就会进入你的XXX_Init函数,从而设置IO寄存器,LED灯应该根据你寄存器的设置亮灭。
你可以在这个函数里面加串口信息,看看系统启动的时候是否进入到了XXX_Init函数。
device.dll会加载总线驱动,然后到注册表BuiltIn下枚举系统注册的流驱动。
如果你自己编写的流驱动已经配置好,包括注册表。
那系统就会进入你的XXX_Init函数,从而设置IO寄存器,LED灯应该根据你寄存器的设置亮灭。
你可以在这个函数里面加串口信息,看看系统启动的时候是否进入到了XXX_Init函数。
#3
这段代码看不出什么问题。。。
lz可以通过串口打印调试信息,看看驱动是否加载,初始化是否执行
lz可以通过串口打印调试信息,看看驱动是否加载,初始化是否执行
#4
#5
看下你的电路图,高电平点亮还是低电平点亮....
#6
启动是指已经进入系统了,看到WINCE的界面了。
我的理解是首先要先开发BSP中的流驱动,然后编译一个带流驱动的镜像,烧录到开发版中。
我这里写的代码是指已经通过BSP编译,然后通过BSP再生成的系统镜像烧录到开发板中。在INIT中的初始化后似乎灯始终没反应。 不知道该如何判断是否加载成功。
#7
启动是指已经进入系统了,看到WINCE的界面了。
我是个新手,想请教下串口信息如果加入以及可以在哪里可以看到。
#8
连接你的串口到PC的串口,在简单设置下
超级终端...串口调试助手
#9
通过串口,在超级终端中打印显示
主要是修改debug.c文件,可以参考以下两篇文章
http://blog.csdn.net/androidfan/article/details/5805945
http://gxzx99.blog.163.com/blog/static/12655671620101219531180/
主要是修改debug.c文件,可以参考以下两篇文章
http://blog.csdn.net/androidfan/article/details/5805945
http://gxzx99.blog.163.com/blog/static/12655671620101219531180/
#10
楼上说的对,不过一般debug的函数应该已经提供了的,楼主看一下自己的bsp内容就知道了。用串口查看就像你烧写nk的时候那样,可以从串口看到很多调试信息的,如果楼主没有,我可以给你一份pdf资料,里面会有一些介绍的。
#11
那麻烦您发我一份 dingqi_jiang@hotmail.com 谢谢
#12
非常感谢,我试下,您是否以前做过FPGA连接ARM的数据传输?
#13
已经发送了,其实很多开发板都会带这种使用资料的,里面有关于dnw的使用,你会看到下载bootloader或者nk等都会有很多调试信息从串口中输出的。
#14
楼主可否给我也发一份如何打印调试信息的资料,我最近也在弄一个中断触发arm和fpga通信的问题 也比较不清楚 希望能加好友一起交流 qq:563748383