|
手头有一个安富莱的STM32F103ZE的开发板,在上面移植了STM32 Radio相关代码,目前有如下问题,请教一下大家。
目前LCD驱动程序、DM9000已经移植成功。但是有些问题没有解决,现象如下:
LCD:
1. 调用STM32 Radio中的画线函数,清屏函数都可以正确反应,运行STM32 Radio程序可以在LCD上显示一个 “网络图标”。
2. 其他就没有任何反应了,那个播放器的界面没有出现。
疑问:这个时候没有播放器的界面是否是属于正常现象?(我目前的J-link 无法跟踪全部代码,总是跟踪一些代码之后就会出现R5或者R6寄存器错误,退出)
USB:
1. 通过Finsh命令 输入USB_cable,STM32 Radio通过Finsh反馈如下信息,但是没有调用void USB_cable(void)函数,从而没有建立msc_thread_entry进程
msc_thread = rt_thread_create("msc_thread",
msc_thread_entry, RT_NULL,
1024, RT_THREAD_PRIORITY_MAX-1,1);
-----------------------------------------------------------------------------------------------------------
Finsh反馈:
finsh>>USB_cable
134256369, 0x080096f1
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>USB_cable
134256369, 0x080096f1
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
finsh>>
这里发送一个Finsh命令,但是反馈很多 Finsh>>字符上来,不知道是否是正常反应?
------------------------------------------------------------------------------
2. 通过其他方法调用void USB_cable(void)函数,建立msc_thread_entry进程,但是程序卡在如下语句:
while( test_unit_ready_last == test_unit_ready_start )
{
rt_thread_delay( RT_TICK_PER_SECOND );
}
找遍了整个工程文件的.c .h文件,test_unit_ready_start 变量只是通过如下语句初始化了一下,再没有改变过了,
unsigned long test_unit_ready_start = rt_tick_get();//在此处初始化test_unit_ready_start变量
test_unit_ready_last = test_unit_ready_start;//在此处初始化test_unit_ready_last变量
疑问:
怎么才能让Finis 正确响应,调用void USB_cable(void)函数,建立msc_thread_entry进程? 怎么才能改变test_unit_ready_start变量的值?
(我从SVN上同步更新了Radio 项目的代码,应该没有漏掉其他源文件没有下载) |
阿莫论坛20周年了!感谢大家的支持与爱护!!
一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
|