先说一下目前状态:
EBOOT可以进入main函数中了,点灯正常!可是串口无法打印,见下面的程序
void BootloaderMain (void)
{
ROMHDR *pRomHdr = NULL; // pTOC for NK image. MUST COPY IT OR CLEANBOOT may erase it
DWORD dwAction, dwpToc;
DWORD dwImageStart = 0, dwImageLength = 0, dwLaunchAddr = 0;
// relocate globals to RAM
if (!KernelRelocate (pTOC)) {
// spin forever
;此处加入OEMWriteDebugLED(0,1); 绿灯是不亮的,说明没有进入
SPIN_FOREVER;
}
;此处加入OEMWriteDebugLED(0,1); 绿灯是亮的,说明可以运行到此处
// (1) Init debug support. We can use OEMWriteDebugString afterward.
if (!OEMDebugInit ()) {
// spin forever
SPIN_FOREVER;
}
// output banner
EdbgOutputDebugString (NKSignon, CURRENT_VERSION_MAJOR, CURRENT_VERSION_MINOR);
;此处加入OEMWriteDebugLED(0,1); 绿灯是亮的,说明可以运行到此处
;可是为什么不能打印出EdbgOutputDebugString 函数里的内容
// (3) initialize platform (clock, drivers, transports, etc)
if (!OEMPlatformInit ()) {
// spin forever
SPIN_FOREVER;
}
// system ready, preparing for download
EdbgOutputDebugString ("System ready!\r\nPreparing for download...\r\n");
OEMWriteDebugLED(0,1); ;此处灯是亮的,说明可以运行至此,为什么不能打印
我的问题是:1.EdbgOutputDebugString函数在什么地方,找了好久没找到
2.串口的打通是否要写串口的驱动程序,还是像单片机一样设置串口相关的寄存器这些,改如何进行下一步 |