mirror of
https://github.com/armfly/H7-TOOL_STM32H7_App.git
synced 2024-08-09 10:05:34 +08:00
Update CHANGELOG
This commit is contained in:
parent
79f0aa2f09
commit
d42e58f3b7
130
CHANGELOG
130
CHANGELOG
@ -1,3 +1,133 @@
|
||||
----------------------------------------------------------------------------
|
||||
2020-03-12 V1.09
|
||||
【修改&新增功能】
|
||||
1.脱机烧录功能
|
||||
- 增加STM8芯片(STM8S和STM8L系列)
|
||||
- 增加自动识别硬件烧录不同的程序(识别算法由lua指定)
|
||||
- 增加组合烧录,比如一键烧写H7-TOOL的boot、app和QSPI Flash
|
||||
- FLM算法文件和数据文件支持绝对路径和相对路径
|
||||
- 优化LUA脚本,支持读、写保护状态识别,自动解除保护状态
|
||||
- 取消程序文件的大小显示,本次计数采用32点阵字体
|
||||
- 支持PC机联机调试lua程序
|
||||
- 打印内核ID、flash内容、RAM内容、UID、Option bytes
|
||||
- 修改和显示目标CPU的RAM和任意寄存器
|
||||
- 擦除CPU内部Flash、EEPROM
|
||||
- 加读保护、解除保护
|
||||
- 启动编程
|
||||
- 解决无法烧录STM32L0xx芯片的BUG,L0系列的Init函数需要传递形参1-2才行
|
||||
- 烧录时LED快闪,烧录成功候常亮,烧录失败后熄灭
|
||||
- 烧录界面增加清零本次计数、清零累计计数功能。修改产品序号功能未做,后面有空再做。
|
||||
|
||||
2.LUA
|
||||
- print_hex 函数支持显示宽度和显示地址
|
||||
|
||||
【bug修复】
|
||||
1.脱机编程算法占用的RAM可以通过lua文件指定,V1.08是固定0x1000。 某些片子不够用
|
||||
2.READ_FMC()存在不能及时获取数据问题。解决方法:FMC内存空间需要配置为禁止cashe
|
||||
3.微型数控电源界面如果关闭了蜂鸣器,无法确认是否进入了电压设置状态。
|
||||
4.00联机模式界面 切换屏幕显示方向时,日期和时间不会显示.
|
||||
|
||||
【其他】
|
||||
1.修改switch case语句缩进格式
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
2020-02-06 V1.08 -- 主要增加脱机烧录功能
|
||||
1.脱机编程器功能(仅STM32芯片)
|
||||
- 通过文件浏览方式选择程序文件。不限制目录和文件个数。
|
||||
- FLM算法文件从KEIL MDK中复制出来,存放到emmc磁盘 \H7-TOOL\Programmer\FLM,按厂商分类
|
||||
- 目标程序文件、编程脚本存放到:\H7-TOOL\Programmer\User 文件夹。不限制目录级别和数量
|
||||
- 动态解析FLM文件,分离出内存镜像通过swd加载到目标cpu ram
|
||||
- 支持多段bin写入
|
||||
- 支持option bytes编程,烧录完毕设置读保护
|
||||
- 支持自动解除读保护
|
||||
- 支持动态填充产品序号、UID加密字段、用户自定义字段
|
||||
- 自动保存烧录次数,支持剩余次数限制功能
|
||||
- 支持连续烧录模式,检测到IC后自动烧录
|
||||
- 可动态显示CPU电压和供电电流
|
||||
- 通过lua脚本配置算法文件和数据文件(bin)以及控制编程过程
|
||||
- lua非常灵活,可以很方便扩充功能,比如:
|
||||
- 日期窗口段内才允许烧录
|
||||
- 目标板电流超限报警
|
||||
- 限定UID(CPU唯一序号)符合规则的才允许烧录
|
||||
- UID加密算法由用户自己定义
|
||||
- 填充任意短数据(小于1K),比如可以写入生产日期时间或客户代码
|
||||
- 关于程序文件保密问题。后期再考虑吧。
|
||||
- 因为H7-TOOL软件开源,文件结构开源,为了避免程序文件被加工厂泄露,初步设想如下:
|
||||
- 控制USB虚拟磁盘程序入口,增加人工输入密码。
|
||||
- 在虚拟磁盘扇区读写底层函数,以512字节为单位增加客户自定义加密和解密算法。这样emmc数据内容
|
||||
就是被加密的,即使emmc芯片被复制出来放到其他H7-TOOL主板也无法识别。
|
||||
|
||||
2.菜单变更
|
||||
- 联机模式长按S进入扩展功能菜单 : 脱机烧录器、LUA小程序、数据记录仪、系统设置
|
||||
- 系统设置下级菜单:硬件信息、参设设置、ESP32固件升级、USB eMMC磁盘、数据维护
|
||||
|
||||
【bug修复】
|
||||
V1.07 lua新增bug 不在lua小程序界面,执行PC机下下载lua程序会死机
|
||||
- bsp_tft_lcd.c LCD_DrawMemo()函数,增加: 3284行
|
||||
if (_pMemo->Text == 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
2019-12-26 V1.07
|
||||
1.界面切换S键和C键功能交换,符合正常逻辑。
|
||||
2.系统设置界面,增加USB磁盘访问eMMC
|
||||
3.FatFS文件系统建立,支持目录浏览
|
||||
4.中文字库2MB存放到QSPI Flash末尾,所有汉字都可以显示了,无需CPU内嵌小字库。
|
||||
5.系统设置界面可以写字库文件,也可以刷新boot程序
|
||||
6.实现Lua小程序脱机运行
|
||||
7.数据记录仪只做了菜单(功能下个版本实现)
|
||||
|
||||
bug修复:
|
||||
1. USB通信时,熄屏后唤醒死机 while (wTransferState == 0){}
|
||||
- 原因:主程序SPI正在DMA传输显示数据,按键中断服务程序中执行LCD休眠操作,SPI被重置
|
||||
导致DMA传输不能进入完成中断。
|
||||
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
2019-12-09 V1.06
|
||||
1.界面风格重新设计。24点阵、32点阵部分ASCII字符调整齐
|
||||
2.实现长时间不按键自动熄屏功能
|
||||
3.修改高侧电流界面120mA判据,增加回差控制
|
||||
4.bsp_key.c按键驱动增加长按弹起事件,和短按弹起事件分开处理. 这样处理后
|
||||
主状态函数中的 uint8_t ucIgnoreKey 忽略按键的代码就可以去掉了。
|
||||
5.增加脱机烧录器界面(仅界面实现,未实现烧录功能)
|
||||
6.联机界面增加时钟显示
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
2019-11-30 V1.05b
|
||||
1.解决上电花屏2秒问题,原因:logo界面没刷屏
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
2019-11-29 V1.05 - 功能未增加,但是改动比较大,封一个版本。
|
||||
1.HAL固件库、USB库升级到最新版(来自于en.stm32cubeh7 (V1.5.0))
|
||||
-所有的GPIO寄存器操作更改为如下宏(因为新固件库取消了 BSRRH、BSRRL寄存器)
|
||||
#define BSP_SET_GPIO_1(gpio, pin) gpio->BSRR = pin
|
||||
#define BSP_SET_GPIO_0(gpio, pin) gpio->BSRR = (uint32_t)pin << 16U
|
||||
|
||||
2.显示屏驱动采用SPI+DMA驱动。整屏刷新18ms。(驱动由硬汉提供)
|
||||
- 修bsp_tft_st7789.c文件
|
||||
- bsp_Idle()函数执行 ST7789_DrawScreen(); /* 硬件SPI+DMA+刷屏 */
|
||||
- 使用0x30000000开始的240*240*2字节内存做显存
|
||||
|
||||
3.为了适应后台刷屏机制。所有的 while循环中bsp_Idle() 位置放到显示刷新后面
|
||||
while (g_MainStatus == MS_CURRENT_METER)
|
||||
{
|
||||
if (fRefresh) /* 刷新整个界面 */
|
||||
{
|
||||
fRefresh = 0;
|
||||
|
||||
DispCurrentVolt();
|
||||
AutoCurrentRange();
|
||||
}
|
||||
|
||||
bsp_Idle(); /* 必须在fRefresh语句后边, 否则刚进入界面会有闪烁感 */
|
||||
|
||||
...
|
||||
}
|
||||
|
||||
----------------------------------------------------------------------------
|
||||
2019-11-25 V1.04
|
||||
1.新增脉冲计数和频率计功能。status_pulse_meter.c
|
||||
2.lua增加串口MODBUS接口函数
|
||||
|
Loading…
x
Reference in New Issue
Block a user