CoFlash 基本操作说明和Flash编程算法

 

CooCox成立于2009年初,致力于为ARM开发者提供免费和开源的嵌入式开发工具。CooCox开发了大量基于网络的组件,让嵌入式开发如搭积木般简单。CooCox希望能和所有ARM爱好者一起搭建一个贡献与分享的交流平台。

CooCox工具包括一整套的工具链CoIDE,Colink/CoLinkEx和CoFlash;高级通过管脚配置自动生成代码工具CoSmart;寄存器助手CoAssistant,以及开源的嵌入式操作系统CoOS。各部分简介如下:

1. CooCox CoIDE

基于Eclipse开发的全功能IDE,采用GCC编译器,集成了CoOS和CoAssistant。

作为一款“傻瓜组态式编程”软件,CoIDE将所有的启动代码、外围库、驱动、OS等抽象为一个个组件,其中大部分组件都有相应的例程。使用时,用户只需通过勾选组件和添加例程即可快速建立一个基本的应用。

CoIDE目前含有393个组件&327个例程,既有官方提供的,也有用户上传的。

2. CooCox Colink/CoLinkEx

两款硬件调试器,硬件信息全部公开。包括完整的电路原理图,PCB图,以及元件清单,用户可以轻易DIY。

其中Colink专用于Cortex-M3的JTAG调试,CoLinkEx用于Cortex-M3和Cortex-M0的SWD和JTAG调试。两者均可方便地应用于MDK及IAR(CooCox提供相应驱动),CoIDE和CoFlash中。

3. CooCox CoFlash 

一款Flash编程软件,可进行编程,校验,擦除,及检查选定扇区是否为空。

CoFlash具有直观的图形用户界面及命令行两种模式,支持.bin和.elf文件的编程。用户还可以方便地自定义flash编程算法以支持更多flash设备。
 

之所以写这篇文章的原因是 自己有一个DAP的下载器  平时用keil或者IAR调试程序时都是直接在编译软件上编译完程序之后直接开始下载   后来在一个偶然的机会下 只带了DAP下载器 和HEX程序,于是才想到用CoFlash进行下载,类似于  J-flash 

概述

CoFlash 是在由coocox.org开发类别 Miscellaneous Shareware 软件。

最新版本是 CoFlash 的目前未知。 它最初被添加到我们的数据库 2011/02/24 上。

CoFlash 在下列操作系统上运行: Windows/Linux。

CoFlash 已不被评为由我们用户尚未。

软件下载链接 

Download CooCox CoFlash 1.5.1Download CooCox CoFlash - Program ARM Cortex-M processors using predefined flash algorithms or write your own ones by following instructions, using a GUI or CLIhttps://www.softpedia.com/get/Programming/Other-Programming-Files/CooCox-CoFlash.shtml

下面主要概述使用CoFlash 

CooCox CoFlash是Windows下针对Cortex M系列芯片的Flash编程软件,支持大部分Cortex M系列芯片。CoFlash除了有一个直观的传统的图形用户界面外,它还支持命令行模式。CoFlash配合Colink,CoLinkEx,Nulink等调试器使用。另外,用户还能够定义自己的编程算法来支持更多的flash设备。

特征:
        免费
        支持大多数常见的Cortex M系列微处理器
        支持用户自定义的flash编程算法
        直观的图形用户界面及命令行模式
        支持编程.bin或.elf文件
        保存用户的最后一次配置
其他详情,请查看 http://www.coocox.com/CN/CoFlash_Programmer.htm

支持的调试器如图:

要使用coflash,你有至少一个调试器,需要注意的是:并不是所有的调试器,都支持左边的所有芯片。
Coflash支持图形化界面和命令行模式,两种方式,下面我主要从图形化界面来讲:
Cookie板子为例,芯片当然选择M0516ZN,调试器选择colinkex,其他的配置可以采用默认值。配置好之后进入command页面进行具体操作。

CoFlash 图形用户界面的功能:
        配置
        编程    擦除    校验    空白检测

配置
在使用CoFlash进行flash编程之前,需要进行以下配置:
1.        在MCU树形列表中选择你所使用的MCU;
2.        配置 USB调试器;
3.        添加/移除flash算法(支持多算法),非必选操作。

编程flash设备
1.        在Flash Sector Map框中选择flash算法,配置扇区;
2.        在Data File框中,选择映像文件,目前仅支持.bin或.elf文件;
3.        (可选)选择Auto Erase在编程之前擦除flash芯片;
4.        (可选)选择Auto Verify在编程之后进行验证;
5.        (可选)选择Run After Program在编程之后复位MCU;
6.        (可选)在Flash Offset中,指定数据存放的起始偏移地址;
7.        点击Program按钮。

擦除
可以擦除单个或多个扇区。
1.        在下拉选框中选择flash算法。(多个算法时)
2.        在Flash Sector Map中选择想要擦除的扇区。
3.        点击Erase按钮。

校验flash中的内容
将flash里的内容与所要烧写的文件进行比较。
1.        在Data File中,输入映像文件,只支持.bin或.elf文件。
2.        点击Verify 按钮。

下面是我修改了程序  和上次下载到芯片内的程序进行校验   检验错误


空白检测
可以检测一个或多个扇区。
1.        在下拉选框中选择flash算法。(多个算法时)
2.        在Flash sector map中选择想要检测的扇区。
3.        点击Blank Check 按钮。

 下面描述一下什么是Flash算法

 flash编程算法就是一小段代码,它用来把程序写入到flash存储器中,并处理一些设备信息

程序运行时将执行以下步骤:
1.        CoFlash将flash引导程序下载到目标板的RAM中。
2.        CoFlash读取应用程序代码,并把它们写入到RAM中(映像数据的缓冲区)。
3.        CoFlash开始执行flash驱动程序。
4.        Flash驱动程序把RAM里的映像数据烧写到flash存储器中。
5.        Flash编程结束。

设置使用自己的flash编程算法
        命令行模式:通过”--driver=FILE”选项。
        图形用户界面模式:在Config选项卡的Flash Driver框中指定自定义的算法文件。

程序结构

编译自定义的flash引导程序

1.        安装ARMGCC编译器。
2.        复制CoFlash\FlashAlgorithm\source\template文件夹,然后重命名它。
3.        编写自定义的FlashInit, FlashUnInit, FlashEraseChip, FlashEraseSector, FlashProgramPage, FlashVerify函数。
4.        在gccProject/makefile文件中修改FLASH_CHIP的值为目标算法的文件名。
5.        通过命令行进入gccProject目录,然后在命令行运行make命令,这时自定义的算法文件将会出现在FlashAlgorithm目录下面。

flash编程算法的API

Flash设备描述符的结构体:

### 回答1: Coflash是一种可以支持STM32L4微控制器的工具。STM32L4是STMicroelectronics(意法半导体)推出的一款低功耗微控制器系列,主要用于嵌入式应用。Coflash是一种常用的编程工具,用于STM32系列的微控制器。 Coflash具有简单易用的特点,可以帮助开发者快速、方便地对STM32L4微控制器进行编程。使用Coflash,开发者可以将编写好的程序烧录到STM32L4微控制器中,实现对其进行功能验证、测试和正常运行。 Coflash提供了一种可视化的编程界面,开发者只需要选择所需的编程文件,将其加载到Coflash中,然后通过连接电脑与STM32L4微控制器的方式,完成烧录操作。Coflash还具有烧录速度快、烧录稳定等优势,可确保烧录的程序与目标设备完全匹配。 通过Coflash可以支持STM32L4微控制器,开发者可以使用Coflash对STM32L4进行固件升级、功能增强、故障排查等操作。同时,Coflash还可以支持多种编程语言和开发环境,方便开发者进行代码编写和调试。 总之,Coflash是一种功能强大的编程工具,可以支持STM32L4微控制器,为开发者提供便捷的编程和调试环境,帮助其更高效地开发嵌入式应用。 ### 回答2: 是的,Coflash支持STM32L4系列微控制器。STM32L4系列是STMicroelectronics推出的低功耗微控制器系列,具有高性能和丰富的外设接口。Coflash是一种用于STM32系列的编程工具,它提供了一个易于使用的接口,可以帮助开发人员将代码烧录到STM32L4微控制器中。 Coflash支持多种方式的编程,包括通过串口、SWD接口等方式进行烧录。它具有简单易用的图形化界面,可以方便地选择要烧录的软件或固件文件,并可以通过简单的设置进行相应的配置。同时,Coflash还支持批量编程,可以同时烧录多个STM32L4微控制器,提高了开发效率。 总之,Coflash是一个强大的编程工具,专门用于STM32L4系列微控制器的烧录。它提供了简单易用的界面和丰富的烧录方式,能够满足开发人员的需求。无论是单片机初学者还是有经验的开发人员,都可以通过Coflash轻松地将代码烧录到STM32L4微控制器中,实现自己的应用程序。 ### 回答3: Coflash是一种用于在嵌入式系统中进行固件烧录的工具。它提供了一种简单而有效的方式来烧录代码到微控制器上,其中包括STMicroelectronics(意法半导体)的系列产品,如STM32L4。 STM32L4是一款低功耗、高性能的32位ARM Cortex-M4微控制器系列。它的特点包括具有丰富外设和多种通信接口,以及低功耗模式和先进的能量管理功能。该系列适用于广泛的应用领域,包括工业自动化、物联网、医疗设备和消费电子等。 对于支持STM32L4的Coflash,它能够与该微控制器系列配合使用,以实现固件的烧录和更新。用户可以通过连接Coflash设备和STM32L4微控制器,然后使用相关软件进行烧录操作。Coflash可以通过USB、串口等多种接口与计算机进行通信,并提供用户友好的界面和工具来完成烧录过程。 通过使用Coflash支持STM32L4,开发人员可以轻松地加载和更新固件,而无需复杂的操作或额外的硬件设备。这为嵌入式开发者提供了方便和效率,并帮助他们更快地开发、测试和部署应用程序。 总之,Coflash作为一种支持STM32L4的固件烧录工具,为开发者提供了一种简捷、高效的方式来烧录和更新代码,使他们能够更好地开发和部署嵌入式应用。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值