打印

请教STM32 USB IAP!!

[复制链接]
3857|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jeffkuang|  楼主 | 2009-8-19 13:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 jeffkuang 于 2009-8-19 14:31 编辑

我做一个HID类设备,需要加IAP功能,但是不想用做两个设备。也就是说我要用HID类设备来更新程序,不用STM的DFU。
沙发
香水城| | 2009-8-19 14:19 | 只看该作者
你需要在HID框架下定义与DFU协议相同的功能。

使用特权

评论回复
板凳
jeffkuang|  楼主 | 2009-8-19 14:29 | 只看该作者
香香,能说得明白一些吗?你说的DFU协议相同的功能是指相同的USB描述,还是完成一样的数据传输呀,AP我可以自己写的,是不是就不相同的协议了呢?

使用特权

评论回复
地板
jeffkuang|  楼主 | 2009-8-19 14:30 | 只看该作者
另外,香香
ST 的DFU中
    if (((*(vu32*)ApplicationAddress) & 0x2FFE0000 ) == 0x20000000)
    { /* Jump to user application */

      JumpAddress = *(vu32*) (ApplicationAddress + 4);
      Jump_To_Application = (pFunction) JumpAddress;
      /* Initialize user application's Stack Pointer */
      __MSR_MSP(*(vu32*) ApplicationAddress);
      Jump_To_Application();
    }
是什么意思呢?哪位大侠能说说吗?

使用特权

评论回复
5
香水城| | 2009-8-19 15:05 | 只看该作者
进行数据传输总是需要一个协议的,你可以不按照DFU协议的规定自定义协议,但最好使用DFU规定的方式做,它是一个完备的经过验证的协议。

4楼的程序片断不是有说明吗? —— Jump to user application

使用特权

评论回复
6
jeffkuang|  楼主 | 2009-8-19 15:29 | 只看该作者
那我可不以这样做,我在我的应用USB程序里如果收AP上的命令,需要更新程序时,用4楼的方式,跳到我的IAP程序里,能行吗?USB要不要重新配置呢?程序是跳过后是堆椎等是原来的,还是又重新初始化呢?

使用特权

评论回复
7
香水城| | 2009-8-19 15:54 | 只看该作者
随便你怎么做,只要能满足你的功能要求就可以。

使用特权

评论回复
8
jeffkuang|  楼主 | 2009-8-19 16:29 | 只看该作者
:$香版主,还问一个很菜的问题,我要怎样才能在HID框架下定义与DFU协议相同的功能

使用特权

评论回复
9
香水城| | 2009-8-19 17:23 | 只看该作者
1)参考HID协议,了解HID是如何定义操作协议。
2)参考DFU协议,了解DFU都有哪些功能。

对不起,我无法详细说明,因为这等同于解释HID和DFU协议。

使用特权

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

本版积分规则

15

主题

120

帖子

0

粉丝