【野火 fireFlasher Mini 脱机烧录器】+02-初次尝试烧写STM32F407ZGT6 - RISC-V MCU技术社区 - 电子技术论坛 - 广受欢迎的专业电子论坛
分享 收藏 返回

申小林 关注 私信

【野火 fireFlasher Mini 脱机烧录器】+02-初次尝试烧写STM32F407ZGT6

有一点需要和大家说明一下,在初次安装的时候会出现以下的提示,当时觉得挺意外的,这里说一下我的解决办法,由于是使用的mini全功能版,我就先去论坛下载安装了烧录器的软件,然后就提示需要激活。
image.png

遇到上述问题我的解决方法是直接在线升级软件就可以解决这个问题。
image.png

点击 “关于->检查版本更新”,然后就会弹出更新对话框,
image.png

然后点击更新即可解决这个问题,重启软件之后就没有限制了,还是比较方便的,可能是以前为了限制其他的厂家仿制的原因。个人看法哈。

这里有一点建议,就是试用脱机烧录器的时候,我看了一下野火的烧录器,只支持SWD的协议,我觉得可以做一个转接板,第一个是试用多说的20Pin建议牛角座的封装,另一个是试用JTAG的转接板的4线SWD的烧录接口,买烧录器的直接送一个这样的板子,用户使用起来也方便得多。插拔方便,而且不容易接错线,对于量产人员的要求也低,同时也可以提高生产效率。我都想自己做一个这样的了。做出来之后大家可以一起来分享。

首先根据原理图,LED为PF8/9/10三个引脚,我们就来点三个灯,从主流的MCU入手,然后再用野火的下载器来升级。
image.png

具体代码如下:

/* Includes ------------------------------------------------------------------*/
#include "main.h"


void LED_IOInit(void)
{

    GPIO_InitTypeDef GPIO_InitStructure;
	  RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF, ENABLE);				//开启LED控制端口时钟。

		GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
		GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;
		GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
		GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL ;
		GPIO_InitStructure.GPIO_Pin =  GPIO_Pin_8| GPIO_Pin_9| GPIO_Pin_10;		//初始SF指示灯端口。
		GPIO_Init(GPIOF, &GPIO_InitStructure);		
}

void LED_Task(void *arg)		//参数配置任务。
{
	LED_IOInit();
	/*-----任务循环---*/
	while(1)
	{
		GPIO_ToggleBits(GPIOF,GPIO_Pin_8);
		GPIO_ToggleBits(GPIOF,GPIO_Pin_9);
		GPIO_ToggleBits(GPIOF,GPIO_Pin_10);
		vTaskDelay(100);
	}
}
RCC_ClocksTypeDef* RCC_Clocks;
/*****************************************************/
int main(void)
{
  xTaskCreate( LED_Task, ( signed char * ) NULL , 1024 , NULL ,5,NULL);//创建以太网配置任务。
  vTaskStartScheduler();
  /* We should never get here as control is now taken by the scheduler */
  for( ;; )
	{
		RCC_GetClocksFreq(RCC_Clocks);
	}
}
/*----------------------------------------------------------------------------*/

好了,生成Hex代码。然后存放在下载器。
image.png
我们按照野火的视屏,先连接脱机下载器,然后选择芯片型号以及相关配置,最后按照上述步骤,加载固件、填写备注、烧写固件、然后完成脱机烧录。
image.png

更多回帖

×
发帖