打印

玩转icp但带usb下载的isp固件不对

[复制链接]
2271|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hotpower|  楼主 | 2010-10-23 17:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
配置从ldrom启动,若无isp固件脱机不能运行程序,否则可以。说明是有固件的。但是在ldrom装载了三种不同的固件版本(1.08,1.10,1.20),isp应用程序都不能识别设备。在aprom的程序照常运行。难道俺辛苦抢到的开发板是坏的?还是usb坏了?望斑竹指点江山!否则要出人命了…哈哈,先谢谢了!

相关帖子

沙发
X-Hawk| | 2010-10-23 20:42 | 只看该作者
本帖最后由 X-Hawk 于 2010-10-23 20:48 编辑

ldrom中的isp固件大概是这个伪代码:

if(pb15拉底)
{
     usb_init();
     uart_init();

     while(1)
     {
         if(usb_event)
             do_usb_event();
         if(uart_event)
             do_uart_event();
     }
}
else
{
    run_aprom();
}
所以一定要pb15拉低

使用特权

评论回复
板凳
hotpower|  楼主 | 2010-10-23 20:49 | 只看该作者
谢谢斑竹,晕开始板子没考虑isp的问题,所有线都外接了,估计是面积或设计没考虑的问题。。

使用特权

评论回复
地板
X-Hawk| | 2010-10-23 20:56 | 只看该作者
不客气。送的NuTiny板子,真的是朝着最简化的方式去考虑的。要测试isp, 需要手动接一下这个gpio。

使用特权

评论回复
5
hotpower|  楼主 | 2010-10-23 21:12 | 只看该作者
本帖最后由 hotpower 于 2010-10-24 10:25 编辑

再请教斑竹:根据伪代码,开机或复位后,由配置决定是否从ldrom或aprom运行动。假若从ldrom运行且pb.15=0,即进入isp状态。假若无usb或uart接入,此时程序走向?由于isp应用程序内有链接按钮,按键肯定有个间隙,那么应用程序一直轮询usb或uart的接入?没有超时处理?因为此时可能pb.15=1。所有超时处理,可能会防止误入isp的发生。或isp应用程序是否加个键或选择以断开isp的链接回到aprom运行。

使用特权

评论回复
6
hotpower|  楼主 | 2010-10-24 09:23 | 只看该作者
估计这个问题还需继续请教斑竹。

使用特权

评论回复
7
hotpower|  楼主 | 2010-10-27 07:42 | 只看该作者
对二楼斑竹isp伪代码的疑虑:
首先俺认为isp固件中应该将usb和uart分离。做成两个版本。
因为几乎没人硬件设计为两种方式的下载。
假若设计为usb下载,那么txd和rxd肯定做其他串口或控制io,那么isp固件就可能无法使用。
假若设计为uart下载,那么为何不借助于pc串口端的dtr和rts控制nuc1xx的reset和pb.15呢?

使用特权

评论回复
8
tg.liu| | 2010-10-27 08:15 | 只看该作者
7# hotpower

hotpower研究的比较深.

使用特权

评论回复
9
hotpower|  楼主 | 2010-10-27 09:35 | 只看该作者
主要从应用考虑,确实不实用,而且可能带来麻烦。
假若管脚不够,txd和rxd都被设计为非门驱动后的输入,isp固件初始化uart结果会如何?实际上链接总会失败的。
再者双路isp固件的空间也会增大,给以后的固件升级就有的余地也会减少。
俺认为分开是设计者早晚的事。
不过能将两者压缩在4K的空间里确实够牛的!

使用特权

评论回复
10
静默| | 2010-10-27 17:30 | 只看该作者
假若设计为usb下载,那么txd和rxd肯定做其他串口或控制io,那么isp固件就可能无法使用。
假若设计为uart下载,那么为何不借助于pc串口端的dtr和rts控制nuc1xx的reset和pb.15呢?

ISP中支持双模式升级(usb和uart)与单uart或单usb模式, 没多大关系,除非设计者想用LDROM中的剩余空间。

使用特权

评论回复
11
hotpower|  楼主 | 2010-10-27 17:55 | 只看该作者
这个理解绝对不是这样的,假若已设计用usb下载程序,uart肯定留做它用。
如gps或gprs等串口输入的模块。
伪代码初始化了uart,这个问题不大。
但若txd被用户做为输入,可能问题就就可能发生。仔细想吧。

使用特权

评论回复
12
tg.liu| | 2010-10-27 23:36 | 只看该作者
是啊, 如果IO存在冲突, 芯片可以运行异常.

使用特权

评论回复
13
新唐| | 2010-10-28 15:36 | 只看该作者
UART和USB两个一同放到4k是比较难,去掉一个应该易如反掌。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1538

主题

21697

帖子

506

粉丝