请教STM32 USB IAP!!

[复制链接]
4538|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();
    }
是什么意思呢?哪位大侠能说说吗?
香水城 发表于 2009-8-19 15:05 | 显示全部楼层
进行数据传输总是需要一个协议的,你可以不按照DFU协议的规定自定义协议,但最好使用DFU规定的方式做,它是一个完备的经过验证的协议。

4楼的程序片断不是有说明吗? —— Jump to user application
 楼主| jeffkuang 发表于 2009-8-19 15:29 | 显示全部楼层
那我可不以这样做,我在我的应用USB程序里如果收AP上的命令,需要更新程序时,用4楼的方式,跳到我的IAP程序里,能行吗?USB要不要重新配置呢?程序是跳过后是堆椎等是原来的,还是又重新初始化呢?
香水城 发表于 2009-8-19 15:54 | 显示全部楼层
随便你怎么做,只要能满足你的功能要求就可以。
 楼主| jeffkuang 发表于 2009-8-19 16:29 | 显示全部楼层
:$香版主,还问一个很菜的问题,我要怎样才能在HID框架下定义与DFU协议相同的功能
香水城 发表于 2009-8-19 17:23 | 显示全部楼层
1)参考HID协议,了解HID是如何定义操作协议。
2)参考DFU协议,了解DFU都有哪些功能。

对不起,我无法详细说明,因为这等同于解释HID和DFU协议。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

120

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部