[MCU] 【雅特力AT-START-F437评测】3. 通过HTTP给设备升级

caizhiwei   2023-6-4 09:37 楼主

       AT-START-F437带有一个以太网口,如何利用起来呢?正好官方sdk历程中有一个模板:在\utilities\at32f437_emac_iap_demo\source_code\bootloader\iar_v9.3路径下,于是就捣鼓了一番。

        历程中使用的设置ip地址,我本人嫌麻烦,就改成了dhcp方式自动获取IP, 如何查看ip地址呢?在dhcp.c中打一个断点,从而可以看到局部变量的ip了。

1. 修改宏定义使能:

1685841841002.png

2. 断点中查看ip,并用电脑cmd命令ping一下哦

aac7734f51848810bb3fd787d8014e7.png

3.准备一下app的bin文件,由于sdk中提供的闪灯和bootloader一样,无法区分开app是否运行,于是,我自己整了一个freertos的app。

app需要注意的地方说明:

image.png

image.png

main函数进来,记得也要改中断向量偏移地址哦:

  nvic_vector_table_set(NVIC_VECTTAB_FLASH , (uint32_t)0x10000); // offset = 64kb

  nvic_priority_group_config(NVIC_PRIORITY_GROUP_4);

   编译生成bin文件,用于app升级。

 bootloader程序启动方式:按住user按键,再复位一下mcu,即可进入bootloader。

4. 登录浏览器,输入ip地址:192.168.0.105

84925ad1c5355d8e31dbc5be2bb0f13.png 再选择bin文件:

338e30f15f9fa7855736924ccfa7496.png  点击upload:

升级成功后,点击reset MCU

b1f98edd4ceda90ab8f20a56a761a56.png  

至此,整个升级已经完成,app正常运行。

点评:此demo可以作为具有以太网需求的项目上,感谢原厂提供如此好的demo,让开发者非常方便就能改造并实施在自己的项目中了。

 

 

cef5ea4fbbae68d58d4e1dc59f3f2ca4

 

 

 

gitee/casy

回复评论 (5)

不错,楼主新发现。感谢分享

点赞  2023-6-4 11:03

在dhcp.c中打一个断点,从而可以看到局部变量的ip了。妙哉!

点赞  2023-6-6 07:46

非常不错,这个是跑系统还是不跑系统的呢?

点赞  2023-6-14 09:20
这个就非常牛的操作了。
点赞  2023-7-4 09:11
引用: 申小林 发表于 2023-6-14 09:20 非常不错,这个是跑系统还是不跑系统的呢?

跑了系统的呢,源码在gitee上

gitee/casy
点赞  2023-7-7 23:08
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复