 ==========================================================
|	CHANGELOG: WinnerMicro Software Development Kit	   |
 ==========================================================
W800 SDK v1.00.04 | 2021/10/30
==========================
*********
SDK功能
********* 
1.驱动相关
  *低速SPI做主时，默认IO复用为PB2,PB3,PB4,PB5（与DEMO保持一致）
  *增加UART5功能
  *修复使用40M分频时32K不校准导致不准的问题，RTC使用40M分频时精度基本没有问题
  *修复LCD功能不工作的问题
  *增加ADC获取供电电压的功能
  *增加Flash的OTP操作，增加读取Unique ID的操作
  *增加touch功能
  *修改Flash驱动部分读取操作未加保护问题
  *修复去使能某个IO中断使能位时将整个IO中断也关闭的问题
  
2.DEMO相关
  *增加获取供电电压DEMO
  *增加PMU demo选择时钟使用

3.调试相关
  *增加打印口可设置为UART0/UART1的可配操作（默认使用UART0）

4.配网相关 
  *优改联盛德一键配网的内存使用
  *增加TLS_CONFIG_BLE_WIFI_ONESHOT宏定义

5.编译打包相关：
  *清理部分无效代码
  *修复PPP_SUPPORT宏定义打开，编译报错的问题
  *修复TLS_CONFIG_HOSTIF宏关闭，RMMS编译报错的问题
  *wm_tool.c打包工具更新，解决当升级文件小于1024Byte时打包出的文件无法升级成功的问题
  *增加CKLINK调试下载使用的flash驱动(tools/w800/utilities/W800_Flash_Tool.elf)

6.蓝牙相关
  *修复蓝牙wm_ble_client_demo_on_mtu设置MTU时不设限的问题

7.Wi-Fi相关
  *修复ssid为空时，tls_sys.c文件里自动联网依然触发问题
  *修复apssid为空时，依然可以创建热点成功的问题
  *优化Wi-Fi联网
  *优化联网低功耗
  *修复热点模式Beacon帧发送问题

8.AT相关
  *UART作为AT指令传输通道时，可指定为除UART0外的任意一个UART。
  *修复STA模式固定IP时，AT指令第二次加网，无法查询网络状态的问题
  
9.增加单独支持生产测试的AT指令(src/app/factorycmd目录下）
  *支持发送测试
  *支持接收测试
  *支持频偏补偿(AT+FREQ）
  *支持是否校准查询(AT+&CALFIN)

W800 SDK v1.00.02 | 2021/5/13
==========================
*********
SDK功能
*********
1. 简化RAM分配调整，详见wm_ram_config.h（除了HSPI和WiFi必须使用静态内存外）。

2. 代码空间调整说明：
   1）调整ld文件里的I-SRAM的LENGTH值，如果LENGTH值加ORIGIN值已越界FLASH容量，则调整ORIGIN的初始值
   2） 依据是CDK编译工程，还是直接make来选择调整
      （1） CDK工程里，要调整代码空间大小，除了步骤1）之外，要调整tools\w800\uitilities\aft_build_project.sh文件里的
	  run_img_header和run_img_pos，run_img_pos要和ORIGIN的值一致；run_img_header为ORIGIN值减0x400
      （2） 命令行方式编译，除了步骤1）之外，要调整CONFIG_W800_IMAGE_HEADER和CONFIG_W800_RUN_ADDRESS的值，方法同（1）
   3） 由于代码空间变大，用户空间会变小，那么需要注意用户空间的位置，作为使用时局限。

3. 蓝牙：
  1）ble host切换为nimble，默认使用的蓝牙协议栈
  2）增加了ble多连接示例
  3）蓝牙控制器代码优化
  4）标准蓝牙部分：提供了br_edr lib文件：libbtcontroller_br_edr.a和libbthost_br_edr.a
       如果需要使用标准蓝牙，需要操作：
       （1） 把wm_config.h里的宏TLS_CONFIG_BR_EDR设置为CFG_ON
       （2）编译时：
           如果使用命令行编译，需要make menuconfig，在编译选项菜单里，去使能nimble的选项，或者修改.config文件，把NIMBLE_FTR去掉
           如果使用CDK编译，需要把DNIMBLE_FTR设置为0，在CDK的编译设置项里
       （3）相应的需要把libbtcontroller_br_edr.a和libbthost_br_edr.a改为libbtcontroller.a和libbthost.a
       （4）还需要单独编译一下src/app目录（命令行编译）
       （5） 因蓝牙增加了Code Size，需扩大gcc.ld文件里I-SRAM的空间

   5）蓝牙任务删除统一修改为通过句柄方式删除
   6）蓝牙host的代码统一开源，位置位于目录:src\bt

4. Wi-Fi优化：
   1） STA节能处理优化
   2） 软ap功能暂不支持wmm功能

5. 驱动问题处理：
   DMA：    修复DMA是用loop方式时，循环地址处理不正确导致的中断不产生的问题
   ADC：    DMA方式回调接口统一，DMA时使用内存为动态申请内存；ADC的回调函数统一处理
   GPIO：   修复GPIOB的中断关闭操作时，没有正确操作的问题
   FLASH：  修复Flash加锁操作的操作数异常
   PMU：    删除PMU中断处理里的重复的csi_kernel_intrpt_exit调用触发调度的操作
   7816：   增加7816接口demo
   SPI：    低速主SPI，当使用DMA方式传输时，所用内存为动态分配内存
   IO复用： 增加了W801的IO复用功能设置接口
   uart：   为了适配某些平台，增加的单个字符即回调的接口。

6. OS：
   1） 增加通过任务句柄删除任务的操作(wm_osal_rtos.c, tasks.c)
   2） 完善通过优先级删除任务的操作(wm_osal_rtos.c, tasks.c)
   3） 部分os的适配接口，增加了中断里的使用保护(wm_osal_rtos.c)

7. 网络部分修改：
    1）网络主机名改为：WinnerMicro_+mac地址末2字段的格式。(ethernetif.c)
	2）修复sys_arch.c里的queue delete函数，不再使用开关中断保护

8. wm_main.c里的主任务增加可删除操作，可通过打开宏开关，使得wm_main里的任务使用完毕后删除

9. 内存分配（wm_mem.c）的封装函数改为仅用信号量来管理

10. 应用修复：
   1）FATFS文件系统增加可重入保护处理，针对SDIO HOST部分对接的写SD卡时的非4字节对齐做了处理。
   2）SSL不再使用之前的版本，改为使用mbed TLS 2.7.10
   3）修复oneshot宏关闭，链接失败的问题

11. 清理部分编译告警


W800 SDK v1.00.01 | 2020/12/29
==========================
*********
SDK功能
*********
*ld调整：
     因增加BT功能，代码空间超过1MB，当前设定为1MB+64KB，相应的用户区要减少64KB
     用户区宏调整（wm_flash_map.h）：#define USER_ADDR_START    (0x81E0000UL)
     当前升级区针对超过1MB的情况，只能选择使用压缩的ota固件

*二级BOOT更新：
    1）发布SDK里添加secboot.bin文件生成img的操作，以免客户调整运行区起始地址时，因为secboot的头信息与其不匹配导致升级fls启动不了	 

*蓝牙：
     1）提供三种蓝牙的库，bt和ble都有的lib，单独标准bt的lib，单独ble的lib
        用户可根据实际需要配合wm_config.h里的TLS_CONFIG_BR_EDR和TLS_CONFIG_BLE的设置，把相关的lib更名为libbt.a。
     2）发布时默认使用ble都有的lib
	 3）优化蓝牙参数
	 4）增加蓝牙demo

*Wi-Fi：
    1）优化低功耗功能
	2）优化异常恢复处理

*系统参数及驱动：
    1）增加关键参数区写保护操作
	2）优化参数区使用内存，改为只使用一块静态内存
    3）解决SDIO多block写操作失败问题
	4）Master SPI使用的任务栈改为使用申请创建任务，不再使用静态内存

*芯片的sleep和standby功能修改：
    1）sleep和standby的进入条件修改
    2）at指令里的AT+ENTS需要的芯片Sleep和standby功能函数从wifi lib移至wm_cmdp.c

	
W800 SDK v1.00.00 | 2020/08/04
==========================
*********
SDK功能
*********
*ld调整：
     因增加BT功能，代码空间超过1MB，当前设定为1MB+64KB，相应的用户区要减少64KB
     用户区宏调整（wm_flash_map.h）：#define USER_ADDR_START    (0x81E0000UL)
     当前升级区针对超过1MB的情况，只能选择使用压缩的ota固件
*蓝牙：
     1）支持BT功能，提供Audio sink和免提电话相关的API
     2）提供三种蓝牙的库，bt和ble都有的lib，单独标准bt的lib，单独ble的lib
        用户可根据实际需要配合wm_config.h里的TLS_CONFIG_BR_EDR和TLS_CONFIG_BLE的设置，把相关的lib更名为libbt.a。
     3）发布时默认使用bt和ble都有的lib
*Wi-Fi：
    1）解决设定参数扫描，时间过长扫描个数反而少的问题
*增加DSP功能（以lib和demo方式提供）
*提供dsp功能的相关demo，详见DEMO_DSP宏包含的相关代码
*增加IO下拉功能配置
*修改GPIO demo，增加下拉功能，GPIO的输出高或低的测试
*修改ADC功能，提供芯片温度和外部输入电压的测试，不支持芯片电源电压的检测功能。
*修改PWM demo，支持PWM两组复用的测试demo
*SDK提供CDK编译工程（编译限制路径长度80字符以内）
*CDK（CSKY Development Kit）的版本：>V2.2.2，获取路径：https://occ.t-head.cn/community/download?id=575997419775328256
*增加BLE数据通信的demo

W800 SDK v0.00.06 | 2020/07/07
==========================
*********
SDK功能
*********
*低功耗：
    1）只有Wi-Fi的时候，断网也进入节能
    2）部分外设的时钟改为只在使用时打开（LSPI）
*蓝牙：开放蓝牙应用代码，路径:src/app/btapp
*Wi-Fi：
    1）增加可配扫描参数的扫描API接口：tls_wifi_scan_by_param
    2）内部增益优化
    3）Wi-FI的调试LOG默认关闭
    4）更新Wi-Fi默认增益参数
    5）处理SSID长度为0时也触发联网的问题
	6）默认wifi工作使用温补（wm_main.c里设置）
*与PWM相关的IO复用配置的API命名更改为0,1,2,3,4编号，即函数:wm_pwmX_config（X=0,1,2,3,4）
*更改部分DEMO的IO使用（GPIO，PWM，LSPI，I2S）
*解决LSD ONESHOT可能使用空SSID联网的问题
*处理IPERF SERVER测试后，无法启动Client测试的问题
*更改内部温度检测函数的结果计算(不再计算平均值）
*解决RMMS反复创建存在的内存不释放问题
*调整ping的任务栈大小
*解决某些路由DHCP拿不到IP的问题

W800 SDK v0.00.05 | 2020/06/12
==========================
*********
SDK功能
*********
*修改CPU默认时钟为80M
*默认打开Wi-Fi的节能功能（Wi-Fi和蓝牙共存时，Wi-Fi不节能）
*优化蓝牙配网兼容性
*修改部分任务栈使用动态申请内存，不再使用静态数组
*打开并生效Wi-Fi的本振和相位补偿功能
*修复GPIO的数据定义边界问题
*删除link文件，当前默认make使用的是use lib
*修复命令行编译结果不变的问题：因elf文件未移动导致的

W800 SDK v0.00.04 | 2020/06/04
==========================
*********
SDK功能
*********
*优化蓝牙配网兼容性
*增加CK-LINK复用打开关闭的宏开关:WM_SWD_ENABLE，默认打开
*代码清理
*sdk打包里添加编译的固件（bin目录）
*修改Standby和Sleep功耗问题
*修改ADC采集内部温度功能（采集电压功能还不支持）

W800 SDK v0.00.03 | 2020/06/01
==========================
*********
SDK功能
*********
*优化蓝牙配网兼容性
*优化Wi-Fi的基带参数，解决最大输入电平问题
*增加mbedtls及demo
*默认JTAG复用功能打开

W800 SDK v0.00.02 | 2020/05/19
==========================
*********
SDK功能
*********
*更新优化后的Wi-Fi相关参数
*更新Flash工作模式及工作频率(80MHz)
*更新SDIO HOST和I2S驱动
*更新AT+ENTS的Sleep和Standby功能，更新文档
*更新AT+HTTPC的返回值说明，更新文档
*更新secboot版本
*默认打开IPERF功能

W800 SDK v0.00.01 | 2020/04/30
==========================
*********
SDK功能
*********
*Wi-Fi基本功能：STA，AP，APSTA
*Wi-Fi配网功能：oneshot，蓝牙，ap，web
*基本驱动功能（除adc，sdio host，i2s外）
*Flash的布局及参数区
*升级功能：串口升级，OTA（http服务器升级）
*加密功能
*基础的demo









