1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
|
/*********************************************************************************************************//**
* @file Release_Notes.txt
* @version V1.5.1
* @date 2023-11-08
* @brief The Release notes of HT32 Firmware Library.
*************************************************************************************************************
* @attention
*
* Firmware Disclaimer Information
*
* 1. The customer hereby acknowledges and agrees that the program technical documentation, including the
* code, which is supplied by Holtek Semiconductor Inc., (hereinafter referred to as "HOLTEK") is the
* proprietary and confidential intellectual property of HOLTEK, and is protected by copyright law and
* other intellectual property laws.
*
* 2. The customer hereby acknowledges and agrees that the program technical documentation, including the
* code, is confidential information belonging to HOLTEK, and must not be disclosed to any third parties
* other than HOLTEK and the customer.
*
* 3. The program technical documentation, including the code, is provided "as is" and for customer reference
* only. After delivery by HOLTEK, the customer shall use the program technical documentation, including
* the code, at their own risk. HOLTEK disclaims any expressed, implied or statutory warranties, including
* the warranties of merchantability, satisfactory quality and fitness for a particular purpose.
*
* <h2><center>Copyright (C) Holtek Semiconductor Inc. All rights reserved</center></h2>
************************************************************************************************************/
// Supported Device
// ========================================
// HT32F1653, HT32F1654
// HT32F1655, HT32F1656
// HT32F12345
// HT32F12364
// HT32F12365, HT32F12366
// HT32F22366
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.5.1_3190 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2024-11-08
Main Changes
+ Add new examples:
- "Tips/Checksum_CRC16"
- "Tips/StackOnTop"
+ Add HT32 Stack Usage Analysis feature.
- Modify "ht32f1xxxx_conf.h", add "HTCFG_STACK_USAGE_ANALYSIS" setting for enabling HT32 Stack Usage
Analysis.
- Update project templates and "ht32_cm3_misc.c/.h", add "StackUsageAnalysisInit()" function to
initialize stack.
- Update project files, add HT32 Stack Usage Analysis component viewer.
- Update and sync "startup_ht32f1xxxx_nn.s" for the "Stack On Top" and "Stack Usage Analysis" feature."
- Add "USE_LIBCFG_RAM_SIZE" define in Keil project files for the "Stack On Top" feature.
+ Rename WDT parameters.
- Old Name | New Name
- --------------------------------- | ----------------------------
- "MODE0_WDTSHLT_BOTH" | "WDT_SLEEP_HALT_NONE"
- "MODE0_WDTSHLT_SLEEP" | "WDT_SLEEP_HALT_DEEPSLEEP"
- "MODE0_WDTSHLT_SLEEP" | "WDT_SLEEP_HALT_ALL"
+ Fix "AES_SetKeyTable()" and "AES_SetVectorTable()" Key and Vector index errors, which cause incorrect AES
encryption and decryption.
+ Update example, add "__ALIGN4" to variables and enforced type conversion for 4 bytes read/write API calls.
- "AES/CBC"
- "AES/CTR"
- "AES/ECB"
+ Modify "ht32f5xxxx_01.h", fix the MCTM alias mismatch.
- "MCTMn_IRQHandler" alias from "MCTM0_G_IRQHandler" to "MCTM0_UP_IRQHandler"
+ Update USB example, add the process of detecting USB bus status before USBDCore_LowPower().
- "CKCU/HSI_AutoTrim_By_USB"
- "USBD/*"
+ Improve the thread-safe capability of "utilities/common/ring_buffer.c".
+ Modify "ht32f1xxxx_01.h" to add alignment and packing attributes for ARM compiler versions, with GCC fallback.
+ Update "ht32f1xxxx_rtc.c", modify the RTC_LSECmd() related flow.
+ Modify "WDT/Auto_Enable" example to change the mechanism of the example.
+ Update "ht32f12366_sk.h" to share EBI_BL pin with LED3.
Others
+ Update comment, format, typing error, and coding style.
+ Update project related file and setting.
+ Update CKCU API. Enhanced program stability with robustness settings for parameter "PCLKPrescaler"
in "CKCU_SetPeripPrescaler(..., CKCU_APBCLKPRE_TypeDef PCLKPrescaler)".
+ Modify "void FLASH_SetRemappingMode(FLASH_Vector FLASH_BOOT_x);". Changed parameter name from
"RemapMode" to "FLASH_BOOT_x".
+ Update "SPI_DUALCmd()" and "SPI_SoftwareSELCmd()" make sure the SPI Bus is not busy
before changing the settings.
+ Modify "ht32_dependency.h",to change the preprocessors for dependency check.
+ Update the following middleware.
"utilities/middleware/eeprom_emulation.c"
"utilities/middleware/i2c_master.c"
"utilities/middleware/i2c_master.h"
"utilities/middleware/spi_module.c"
"utilities/middleware/spi_module.h"
"utilities/middleware/spi_module_config_templet.h"
"utilities/middleware/uart_module.c"
"utilities/middleware/uart_module.h"
+ Update AES examples.
- Change the key, IV, and plain text from hex array to string, making the result easier to compare with
online tools.
- Add expected cipher text and compare it with the MCU's H/W AES result as an error-proofing mechanism."
+ Update the following readme file.
- "CKCU/CKCU_HSI_AutoTrim_By_USB"
- "CKCU/CKCU_HSI_AutoTrim_By_LSE"
- "USBD/*"
+ Modify "afterbuild.bat" to add logic to use ARMCC or ARMCLANG fromelf tool based on available toolchain.
+ Add "_ProjectConfig.ini" in the "CKCU/HSI_AutoTrim_By_LSE" example.
+ Update "project_template/Script" for improving script mechanism.
- "Script/_CreateProjectConfScript.bat"
- "Script/_CreateProjectScript.bat"
- "Script/_ht32_ic_name.ini"
+ Update e-Link32 Pro/Lite Command line tool as "V1.20" ("utilities/elink32pro/eLink32pro.exe").
+ Change path of the "Holtek.HT32_DFP.latest.pack".
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.4.1_2982 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2023-10-31
Main Changes
+ Add new example.
- "GPIO/PinLock"
+ Modify examples below, add volatile qualifiers on some variables (in the for loop usage)
to fix the Arm Compiler Version 6 optimization issue.
("u32" to "vu32", unsigned int to volatile unsigned int).
- "PWRCU/PowerDown_WAKEUPPin"
- "PWRCU/PowerDown_RTC"
- "TM/PWM"
+ Modify examples below, use separate "if" statements instead of "if-else" to avoid double-entry ISR.
- "PWRCU/DeepSleepMode1"
- "PWRCU/DeepSleepMode2"
+ Modify "ht32_time.h", "ht32f1xxxx_conf.h" and "ht32_time_conf.h" for "LIBCFG_CKCU_NO_APB_PRESCALER" series.
- To ensure the correct configuration of the timer clock, the "HTCFG_TIME_PCLK_DIV" is redefined as 0.
+ Add "Project or Target File Clearing" functions ("_ClearProject.bat" and "_ClearTarget.bat").
+ Modify "syscall.c" to prevent redundant initialization of the heap index.
+ Modify "ht32f1xxxx_01.h" to add below definition.
- "sc64", "vs64", "vsc64", "uc64", "vu64", "vuc64"
+ Modify PWRCU related define (The left side old one is still kept for backward compatible).
- PWRCU_FLAG_BAKPOR -> PWRCU_FLAG_PWRPOR
+ Modify "RETARGET_Configuration()", add the operation of UxARTn peripheral clock enable.
+ Update and sync "ht32f1xxxx_conf.h", modify related define of UxARTn retarget port.
+ Update "ht32_op.c" and "ht32_op.s" to support new version of bootloader waiting time setting address.
(The setting address is changed from 0x1FF0002C to 0x1FF0004C)
+ Add "ht32_op_V107.c" and "ht32_op_V107.s" to support the use of older versions of bootloader.
+ Add "CKCU_ATCInit()" API for HSI Auto Trim initial function.
+ Update "ht32f1xxxx_adc.c" and "ht32f1xxxx_adc_02.c", modify the ADC enable related flow.
+ Add the below folder, For the BMduino shield/module Keil Driver.
- "BestModules"
Others
+ Update comment, format, typing error, and coding style.
+ Adjust "LIBCFG_xxxxx" definition below.
- "LIBCFG_CKCU_APBCLKFIX" rename to "LIBCFG_CKCU_NO_APB_PRESCALER"
+ Modify the Sourcery G++ Lite toolchain project.
- Set C99 mode to fix issues after updating CMSIS v5.9.0 ("for" loop initial declarations).
+ Update e-Link32 Pro/Lite Command line tool as "V1.19" ("utilities/elink32pro/eLink32pro.exe").
+ Modify "_ProjectConfigScript.bat" to prevent the creation of project that copy unused system/startup files.
+ Update "project_template/Script" for adding project C++ source files and setting the chip model mechanism.
- The updated files are as follows:
"Script/_ProjectSource.bat"
"Script/_ProjectSource.ini"
+ Update "project_template/Script" for improving script mechanism.
- The updated files are as follows:
"Script/_CreateProjectConfScript.bat"
"Script/_CreateProjectScript.bat"
"Script/_ht32_ic_name.ini"
+ Modify and check the example supportability of each IC.
+ Add the below file, for the BMduino shield.
- "ht32_undef_IP.h"
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.3.2_2858 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2023-02-02
Main Changes
+ Add new examples:
- "SRAM_Overwrite/Watchpoint_Heap"
- "SRAM_Overwrite/Watchpoint_Stack"
+ Update "ht32f1xxxx_conf.h" for user layer HSE_VALUE setting.
Others
+ Update comment, format, typing error, and coding style.
+ Modify "system_ht32fxxxxx_nn.c", add HSE_VALUE notice and update PLL Out formula.
+ Update and sync system.c files.
+ Update EEPROM Emulation middleware, improve efficacy and reduce resource usage.
"utilities/middleware/eeprom_emulation.c"
"utilities/middleware/ht32_eeprom_config_templet.h"
+ Update I2C Master middleware, improve setting way and fix minor errors.
"utilities/middleware/i2c_master.c/.h"
"utilities/middleware/i2c_master_config_templet.h"
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.3.1_2808 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2022-12-01
Main Changes
+ Update "ht32_time.h", fix a formula error of "TIME_TICK2US()" and "TIME_TICK2MS()" macro.
+ Modify "ht32_retarget.c", fix retarget can't work when the MicroLIB is not used in Keil's V6 compiler.
+ Modify "ht32_serial.c/.h" and "ht32_retarget.c", fix ITM setting issue.
+ Update "ht32fxxxx_sk.h", add TRACESWO pin assignment for ITM.
+ Update "SPI/PDMA" example, change the order of API execution (SPI_SELOutputCmd() execution before SPI_Cmd()).
+ Update "CSIF/Init" example, modify the datatype form and add comments to explain the length of the Rx buffer.
+ Update following I2C example. (sync. with M0+)
- I2C/7_bit_mode
- I2C/10_bit_mode
- I2C/EEPROM_Simulate
- I2C/Interrupt
- I2C/PDMA
+ GPIO
- Add new define "GPIO_PIN_NUM_n" for GPIO pin number (n = 0 ~ 15).
+ EXTI
- Add "gEXTIn_IRQn[]" and "EXTI_GetIRQn()" macro to map GPIO pin number (0 ~ 15) to "EXTIn_IRQn".
- Add "GPIO2EXTI()" macro to map GPIO pin to EXTI Channel.
- Change "AFIO_EXTISourceConfig()" API, remove "AFIO_EXTI_CH_Enum" and "AFIO_ESS_Enum".
Old: void AFIO_EXTISourceConfig(AFIO_EXTI_CH_Enum AFIO_EXTI_CH_n, AFIO_ESS_Enum AFIO_ESS_Px)
New: void AFIO_EXTISourceConfig(u32 GPIO_PIN_NUM_n, u32 GPIO_Px)
Others
+ Update comment, format, typing error, and coding style.
+ Update "ht32_op.s/.c", allow "Bootloader Waiting Time" function for all series.
+ Update "CKCU/HSI_AutoTrim_By_USB" example, add the following define to "ht32_board_config.h".
- "CKCU_PLL_CFG"
- "CKCU_SYSCLK_DIV_CFG"
+ Upgrade CMSIS to v5.9.0.
+ Modify API parameter check macro of Library Debug Mode, fix parameter check error.
+ Modify variable declaration of "PDMACH_InitTypeDef" to reduce memory size.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.2.1_2753 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2022-10-11
Main Changes
+ Add new examples:
- "I2C/7_bit_mode_master"
- "I2C/7_bit_mode_slave"
+ Add the following API for PDMA.
- "PDMA_DeInit()"
- "PDMA_AddrConfig()"
- "PDMA_SrcAddrConfig()"
- "PDMA_DstAddrConfig()"
- "PDMA_GetRemainBlkCnt()"
+ Add the following API for ADC.
- "ADC_ChannelDataAlign()"
- "ADC_ChannelOffsetValue()"
- "ADC_ChannelOffsetCmd()"
+ Update "ht32_retarget.c", modify the retarget related functions for SEGGER Embedded Studio.
+ Update "FLASH_SetWaitState()" function, disable Pre-fetch and Branch Cache function before change
wait state.
+ Update following middleware.
"utilities/middleware/i2c_master.c/h"
"utilities/middleware/uart_module.c"
Others
+ Update comment, format, typing error, and coding style.
+ Update "BFTM/OneShot" example, fix the register access sequence and time calculation formula.
+ Update "TM/PWM/main.c"
- Add "HTCFG_PWM_TM_RELOAD" check.
- Add PWM channel initial function.
- Remove "_ht32_project_source.h" (Use "_ProjectSource.ini" to add "pwm.c" into project compiling list).
+ Fix the upper/lower case error of #include file name.
+ Update e-Link32 Pro/Lite Command line tool as "V1.18" ("utilities/elink32pro/eLink32pro.exe").
+ Change the project recommended minimum version of SEGGER Embedded Studio from V4.12 to V6.20.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.1.1_2647 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2022-06-10
Main Changes
+ Add following middleware.
"utilities/middleware/spi_module.c"
"utilities/middleware/spi_module.h"
"utilities/middleware/spi_module_config_templet.h"
+ Fixed FW library compatibility with ARM compiler version 6 of MDK-ARM V5.37.
- Add MDK-ARMv537 project template for MDK-ARM V5.37.
- Update "project_template/Script". Those MDK-ARMv537 project templates will be added for use if choose
the target IDE is "Keil MDK-ARMv5". The fixed files are as follows:
"Script/_CreateProjectScript.bat"
"Script/_ProjectConfig.bat"
"Script/_ProjectSource.bat"
- Update "core_cm3.h", fix compiler error.
- Update "FMC/FLASH_OperationNoHalt", fix the compiler issue of Arm Compiler Version V6.18 and the
compiler warning of linker script file. The fixed files are as follows:
"FLASH_OperationNoHalt/main.c"
"FLASH_OperationNoHalt/linker.lin"
- Update following middleware, remove STRCAT3 usage to fix compiler error.
"utilities/middleware/uart_module.c"
"utilities/middleware/i2c_master.c"
"utilities/middleware/spi_module.c"
+ Update "ht32_retarget.c". Implement __write function to fix compiler error in IAR EWARM Version 9.20
or later.
+ Update GNU Arm makefile in the project_template, fix the compatibility issue that the makefile of GNU Arm
Version 11 cannot be compiled.
+ Update EWARM in the project_template, fix the compiler error that header file path doesn't exist in
the file list of Workspace of IAR EWARM Version 7.
+ Fix SPI initial PDMA parameter in the "utilities/common/spi_flash.c".
+ Sync M0+ I2C/EEPROM to fix compiler warning of the GNU compiler.
+ Sync M0+ library\HT32F1xxxx_Driver\inc\ht32_dependency.h.
Others
+ Update comment, format, typing error, and coding style.
+ Update e-Link32 Pro/Lite Command line tool as "V1.16" ("utilities/elink32pro/eLink32pro.exe").
+ Update the following examples to remove compiler warning of the IAR EWARM.
"BFTM\TimeMeasure"
"TM\PWMInput\ht32f1xxxx_01_it.c"
"USBD\HID_Keyboard_Virtual_COM\ht32_usbd_class.c"
"USBD\Mass_Storage_SDIO\sd_disk.c"
"USBD\USB_UAC_Sound\ht32_usbd_class.c"
"USBD\Virtual_COM\ht32_usbd_class.c"
+ Update and sync create project related files ("_ProjectConfig.bat"、"_ProjectConfig.ini").
+ Update content of "project_template/IP/Example/readme.txt", add MDK-ARM V5.37 related information.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.0.10_2585 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2022-04-14
Main Changes
+ Update EEPROM Basic and EEPROM Emulation middleware, fix the include and define sequence.
"utilities/middleware/eeprom_basic.h"
"utilities/middleware/eeprom_emulation.h"
+ Update UART Module middleware, add the "UARTM_IsTxFinished()" API.
"utilities/middleware/uart_module.c"
"utilities/middleware/uart_module.h"
Others
+ Update e-Link32 Pro/Lite Command line tool as "V1.0.15" ("utilities/elink32pro/eLink32pro.exe").
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.0.10_2585 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2022-04-14
Main Changes
+ Update EEPROM Basic and EEPROM Emulation middleware, fix the include and define sequence.
"utilities/middleware/eeprom_basic.h"
"utilities/middleware/eeprom_emulation.h"
+ Update UART Module middleware, add the "UARTM_IsTxFinished()" API.
"utilities/middleware/uart_module.c"
"utilities/middleware/uart_module.h"
Others
+ Update e-Link32 Pro/Lite Command line tool as "V1.0.15" ("utilities/elink32pro/eLink32pro.exe").
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_V1.0.9_2556 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2022-03-15
Main Changes
+ Change to the new Holtek version format (Vm.n.r).
+ Add new "FMC/FLASH_OperationNoHalt" example.
+ Modify "utilities/common/ring_buffer.c", fix the thread-safe issue of "Buffer_GetLength()".
+ Update "GNU_ARM/linker.ld", fix the heap/stack area overlap problem.
+ Add "ADC_SamplingTimeConfig()" function for the "ht32f1xxxx_adc_02.c".
Others
+ Update comment, format, typing error, and coding style.
+ Modify "bool, TRUE, FALSE" define way for C++/.cpp applications.
+ Update "startup_ht32fxxxxx_nn.s", support "USE_HT32_CHIP" define exist at startup.s and project Asm
setting in the same time (project's Asm Define has the higher priority).
+ Remove unuse global variable "DelayTime" of "ebi_lcd.c" and "spi_lcd.c".
+ Update "spi_lcd.c/.h", fix the GPIO Chip SEL define mistake.
+ Add following middleware.
"utilities/middleware/uart_module.c"
"utilities/middleware/uart_module.h"
+ Update related middleware (eeprom_basic and eeprom_emulation).
+ Update e-Link32 Pro/Lite Command line tool as "V1.0.14" ("utilities/elink32pro/eLink32pro.exe").
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_v008_2470 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2021-08-19
Main Changes
+ Add "ht32_time.c/.h" to support following new functions for delay, time measure, and timeout.
"Time_Init()"
"Time_Delay()"
"Time_GetTick()"
+ Add new examples:
- "ADC/OneShot_SWTrigger_ByTM"
- "GPIO/Input"
- "GPIO/Output"
- "Time/TimeFun"
- "Time/TimeFun_UserConf"
- "USART/RS485_NMM_Slave"
+ Add new definition, "FLASH_WAITSTATE_MAX".
+ Add "USART_PARITY_MARK" and "USART_PARITY_SPACE" for the UART parity mode.
+ Update "ADC_RegularTrigConfig()" and "AC_TRIG_XXXX" define to support all the trigger source of ADC.
+ Add "CKCU_ADCPRE_DIV1" parameter of "CKCU_SetADCnPrescaler()" for the HT32F12364.
+ Modified "SDIO_ClearFlag()", disable Status Enable Register (SER) to clear SDIO_FLAG_BUF_OVERFLOW and
SDIO_FLAG_BUF_UNDERFLOW.
+ Fix the result mistake of the marco below of HT32F12364 (LIBCFG_FLASH_2PAGE_PER_WPBIT is missing).
"#define FLASH_WP_PAGE_SET(OP, PAGE)"
"#define FLASH_WP_PAGE_CLEAR(OP, PAGE)"
"#define FLASH_IS_WP_PAGE(OP, PAGE)"
+ Update following example, modify the default value of "gIsINEmpty" from TRUE to FALSE. The default value
TRUE may cause the F/W to not send CSW after the first Inquiry CBW Command in a specific condition.
"example/USBD/HID_Keyboard_Mass_Storage"
"example/USBD/Mass_Storage"
"example/USBD/Mass_Storage_IAP"
"example/USBD/Mass_Storage_SDIO"
Others
+ Update comment, format, typing error, and coding style.
+ Fix compile error when turn on Library debug mode (HT32_LIB_DEBUG = 1).
+ Update e-Link32 Pro Commander to V1.10.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_v007_2414 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2021-05-11
Main Changes
+ Add new examples:
- "EXTI/GPIO_Interrupt"
- "CKCU/HSI_AutoTrim_By_LSE"
+ Update the IAP example of HT32F12364 project:
- IAR EWARM v6/v7/v8:
1. Modify "startup_ht32f1xxxx_03.s" to "startup_ht32f1xxxx_iar_03.s".
2. Modify "ht32f1xxxx_adc.c" to "ht32f1xxxx_adc_02.c".
- Keil MDK-ARM v4/v5: Modify "ht32f1xxxx_adc.c" to "ht32f1xxxx_adc_02.c".
+ Fix the system stuck in CKCU_HSIAutoTrimCmd() because of the misjudgment of CKCU_HSIAutoTrimIsReady().
+ Fix the CHIP ID error. Fixed "USE_HT32_CHIP=3" to "USE_HT32_CHIP=16". The fixed files are as follows:
- IAP/IAP_Text_RAM/EWARM/Project_12364_IAP.ewp
- IAP/IAP_UI/EWARM/Project_12364_IAP.ewp
+ Fix the syntax error on the "IAP/IAP_Text_RAM/EWARM/startup_ht32f1xxxx_iar_03_iap.s".
Others
+ Update comment, format, typing error, and coding style.
+ Update the version of eLink32pro.exe to 1.0.1.1.
+ Update the following project setting:
- IAR EWARM v6/v7: Modify "_ht32_project_source.c" to "_ht32_project_source.h".
- SEGGER Embedded Studio: Add the new definition "arm_compiler_variant="SEGGER"".
/*----------------------------------------------------------------------------------------------------------*/
/* HT32_STD_1xxxx_FWLib_v006_2361 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2021-02-26
Main Changes
+ Add "Create Project Configuration Menu" to choose the target IDE and Device when the first time to do the
create project operation of the example. The configuration file, "_CreateProjectConfig.bat" is saved to
the root path of the HT32 Firmware Library. You can reset the create project IDE/IC configuration anytime
by deleting the configuration file.
Target IDE/Compiler:
- Keil MDK-ARM v5
- Keil MDK-ARM v4
- IAR EWARM v8
- IAR EWARM v6/v7
- SEGGER Embedded Studio
- GNU [with Keil and GNU make]
- SourceryG++Lite [with Keil]
Target Device:
- xxxxx: Single Device
- xxx*: Series
+ Add new examples:
- "NVIC/Disable_Interrupt"
- "TM/InternalTrigger"
- "TM/PWM_Buzzer"
- "WDT/Auto_Enable"
+ Add Flash programming function of GNU Maker (via e-Link32 Pro/Lite Commander).
"make IC=xxxxx eraseall"
"make IC=xxxxx program"
"make IC=xxxxx run"
+ Update "CKCU_HSIAutoTrimCmd()" and "CKCU_HSIAutoTrimIsReady()" function to improve clock stability.
+ Fix the cache address problem of "SDDISK_Read()" function.
"USBD/Mass_Storage/sd_disk.c", "USBD/Mass_Storage_SDIO/sd_disk.c"
+ Update GNU project (*.uvprojx), fix the compile error when use new GNU Arm version
("gcc-arm-none-eabi-10-2020-q2-preview-win32" or above).
+ Fix Keil compiling error when disable both retarget and MicroLib.
+ Update "ht32f1xxxx_01.h", fix the compatibility issue when user include "stdbool.h".
+ Modify GNU compiler settings, output text file (disassembly) after building the code.
+ Add "HT32_FWLIB_VER" and "HT32_FWLIB_SVN" in "ht32f1xxxx_lib.h" for the version information of
HT32 Firmware Library.
Example:
"#define HT32_FWLIB_VER (006)"
"#define HT32_FWLIB_VER (2361)"
+ Add new AFIO define in "ht32f1xxxx_gpio.h".
- "AFIO_FUN_MCTM1"
- "AFIO_FUN_PWM"
- "AFIO_FUN_PWM0", "AFIO_FUN_PWM1", "AFIO_FUN_PWM2", "AFIO_FUN_PWM3"
+ Add following alias of MCTM IRQ handler
"#define MCTM0_IRQn MCTM0UP_IRQn"
"#define MCTM0_IRQHandler MCTM0UP_IRQHandler"
"#define MCTM1_IRQn MCTM1UP_IRQn"
"#define MCTM1_IRQHandler MCTM1UP_IRQHandler"
Others
+ Update comment, format, typing error, and coding style.
+ Update "SPI/FIFO_SEL_Hardware" example, add Rx FIFO Timeout function and fix data loss issue.
+ Update "USBD/Mass_Storage" example, add "HTCFG_SD_MAXSPEED" define for different board.
+ Update "utilities/common/spi_lcd.c".
- Remove duplicate SPI parameter setting of "LCD_Init()".
- Update SPI chip select define and SPI configuration by "LCD_SPI_SEL_AFIO_MODE".
- Swap the "GPIO_DirectionConfig()" and "GPIO_SetOutBits()" function to prevent transient state
of SPI_SEL pin.
+ Update "_ProjectConfig*.bat" files.
+ Add "Project Source File Setting" functions ("_ProjectSource.ini" and "_ProjectSource.bat").
+ Rename "_CreateProjectUSB.bat" as "_CreateProject.bat".
+ Add dummy xxTM C files, to notify the user that SCTM/PWM/GPTM/MCTM timer use the "ht32f1xxxx_tm.c" driver.
"ht32f1xxxx_gptm.c", "ht32f1xxxx_pwm.c", "ht32f1xxxx_sctm.c"
+ Add "IS_IPN_MCTM()" and "IS_IPN_GPTM" macro, for use to confirm the xxTMn is GPTM or MCTM.
+ Update comment and board/pin configuration of "ADC/OneShot_TMTrigger_PDMA" example.
+ Update and sync startup.s/system.c files.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v005_2207 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2020-08-11
Main Changes
+ Add the following files to use e-Link32 Pro with SEGGER Embedded Studio. Refer to the
"readme e-Link32 Pro.txt" for how to use it.
"emStudiov4/readme e-Link32 Pro.txt"
"emStudiov4/Project_xxxxx.bat"
"emStudiov4/_MassErase.bat"
+ Fix the "I2S_FIFOTrigLevelConfig()" error which did not clear the field of I2S FCR correctly.
+ Fix "RPRE_MASK" define error for "RTC_SetPrescaler()" function.
+ Add "SPI_FLASH_WaitForWriteEnd()" function in the end of the write status operation
("SPI_FLASH_WriteStatus()").
+ Modify "SPI_FLASH_WaitForWriteEnd()" function to return value of status register.
+ Add below notice of examples to inform the user to check the local structure variable without a
default value.
"Notice that the local variable (structure) did not have an initial value.
Please confirm that there are no missing members in the parameter settings below this function."
+ Add "LIBCFG_MAX_SPEED" in the file "ht32fxxxxx_libcfg.h" which indicate the maximum core speed.
+ Add the following definition for convenience.
PDMACH0_IRQn ~ PDMACH5_IRQn
AFIO_FUN_MCTM0
AFIO_FUN_GPTM0 ~ AFIO_FUN_GPTM3
AFIO_FUN_PWM0
AFIO_FUN_SCTM0 ~ AFIO_FUN_SCTM2
+ Add new examples.
"TM/PWM"
"TM/UpdateEvent"
+ Add "s64/u64" definition.
Others
+ Update comment, format, typing error, and coding style.
+ Add below notice in the "FMC/FLASH_Security" example.
"The Option Byte will be write protected (cannot be changed again) after the
Security Protection is enabled. Refer to the user manual for details."
+ Remove HSI disable setting of Configuration Wizard and add notice in the "system_xxxxx_nn.c".
+ Update the following examples to remove compiler warning of the GNU compiler.
"USBD/Mass_Storage"
"USART/PDMA"
"USART/Interrupt"
+ Add "-Waddress-of-packed-member" #pragma of below examples to remove compiler warning of the
GNU compiler.
"USBD/Mass_Storage"
"USBD/Mass_Storage_IAP"
"USBD/Mass_Storage_SDIO"
"USBD/HID_Keyboard"
"USBD/HID_Keyboard_Joystick"
"USBD/HID_Keyboard_Mass_Storage"
"USBD/HID_Keyboard_Virtual_COM"
"USBD/HID_Mouse"
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v004_2103 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2020-04-25
Main Changes
+ Remove the "I2C_Cmd()" in the "I2C_Init()" function since it shall be called after the I2C related
settings. User shall call the "I2C_Cmd()" by themself after the "I2C_Init()".
+ Update "system_ht32f1xxxx_02.c", modify the LDO related setting.
+ Add "USART_GetIntStatus()" function to get the enabled interrupt source.
+ Add "RETARGET_HSI_ATM" setting to turn on/off the auto-trim function of HSI ("ht32f1xxxx_conf.h").
+ Add "USBDClass_Reset()" into the "USBD/*" example to reset related flag for the self-power application.
+ Modify "ht32f5xxxx_aes.c", fix "AES_SetKeyTable()" and "_AES_CryptData()" functions who did not clear
related fields before set it.
+ Rename examples as below.
IP Old Name New Name
-------- -------- --------
ADC EXTITrigger_DiscontinuousMode Discontinuous_EXTITrigger
ADC PDMA_ADCResult OneShot_TMTrigger_PDMA
ADC Potentiometer_ContinuousMode Continuous_Potentiometer
ADC TM_Trigger OneShot_PWMTrigger
ADC TM_Trigger_with_Delay OneShot_PWMTrigger_with_Delay
USART HyperTerminal_TxRx Retarget
USART HyperTerminal_TxRx_Interrupt Interrupt
USART HyperTerminal_TxRx_Interrupt_FIFO Interrupt_FIFO
+ Update the following example to improve readability.
"ADC/AnalogWatchdog"
"ADC/Continuous_Potentiometer"
"ADC/Discontinuous_EXTITrigger"
"ADC/InternalReferenceVoltage"
"ADC/OneShot_PWMTrigger"
"ADC/OneShot_PWMTrigger_with_Delay"
"ADC/OneShot_TMTrigger_PDMA"
"ADC/Two_Group_MaxCH"
"USART/Interrupt"
"USART/Interrupt_FIFO"
"USART/PDMA"
"USART/Polling"
"USART/Retarget"
"USBD/HID_Demo"
"USBD/HID_DemoVendorReport"
+ Update UxART related example, turn on internal pull up to prevent unknown state.
+ Add new examples.
"BFTM/OneShot"
"BFTM/TimeMeasure"
+ Remove unnecessary RTC compare match restart setting of the RTC example
(which cause the time not correct after entering the low power mode).
+ ADC to ADC0 related modification (to compatible with M0+ and ADC1).
Modify "HT_ADC" and "ADC_IRQn" to "HT_ADC0" and "ADC0_IRQn".
Modify "AFIO_FUN_ADC" as "AFIO_FUN_ADC0".
Modify "CKCU_SetADCPrescaler()" to "CKCU_SetADCnPrescaler()".
Add "CKCU_ADCPRE_ADCn_TypeDef".
Modify "ADC_Freq" to "ADC0_Freq" of "CKCU_ClocksTypeDef".
Modify "ADC" to "ADC0" of "RSTCU_PeripReset_TypeDef".
Add "HT_ADC", "ADC_IRQn", "AFIO_FUN_ADC" define for backward compatibility.
+ Fix "HT_GPIOF" define error of HT32F12364.
Others
+ Update "SPI/FIFO_SEL_Hardware" example, change the code location of the IP enable ("SPI_Cmd()").
+ Update "system_ht32fxxxxx_nn.c" (coding style).
+ Update "ht32_series.c/h" and "ht32_retarget_usbdconf.h" to improve the compatibly of the
terminal software.
+ Update comment, format, typing error, and coding style.
+ Fix interrupt mode of UxART retarget, remove unnecessary FIFO/interrupt configuration of the
retarget function.
+ Update format of "CKCU_PeripClockConfig_TypeDef" and "RSTCU_PeripReset_TypeDef".
+ Update and modify naming rule of the "HTCFG_xxxx" configuration define in the "ht32_board_config.h".
+ Update settings of project files.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v004_1946 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2019-11-28
Main Changes
+ Move the "common/*.h" include from the begin to the end (after the pin define) in the file
"HT32_Board/ht32fxxxx_sk/dvb.h". The original include way leads to the pin define lost when you
use the EBI_LCD->EBI_LCD_RAM outside the "ebi_lcd.c".
+ Fix error of "_CreateProjectScript.bat" which cause the stack size and RW base can not be set by the
"_ProjectConfig.bat" of the emStudiov4 project.
+ Add "GPIO_GetID()" function to convert HT_GPIOx to GPIO_Px.
+ Update "HID_Demo_UI.exe" to support HID Report ID.
+ Add "USBD/HID_DemoVendorReport" example.
+ Modify "SPI_Init()" function, fix SPIx Clock Prescaler setting of HT32F12364.
+ Modify "system_ht32f1xxxx_03.c", fix PLLCFGR initiation error which cause the "PLL_CLK_SRC_DIV" setting
is not work.
+ Add "RETARGET_UxART_BAUDRATE" setting to change the retarget UART baudrate in "ht32f1xxxx_conf.h".
+ Add "RETARGET_HSI_ATM" setting to turn on/off the auto-trim function of HSI.
+ Add "RETARGET_DEFINE_HANDLER" setting to remove the UxARTn_IRQHandler() define of the retarget.
This setting is used for the model who grouping two UART Interrupt into one vector.
+ Add non-block mode of USB Virtual-COM retarget function ((Drop data if USB or terminal software is
not ready).
+ Modify "PWRCU_SetLDOFTRM()" function, fix the error which cause the LDO output voltage fine trim is
not work.
+ Update "PWRCU_DeepSleep2()" to restore the LDO output voltage fine trim after system wakeup.
+ Add SWCLK toggle of "GPIO_DisableDebugPort()" function.
Others
+ Add "utilities/common/lcd.h" to put the lcd related register together.
+ Update format and coding style.
+ Add PLL Output frequency comment of "system_ht32f1xxxx_nn.c".
+ Update project files.
.c and .h files order.
Project format.
Include path order.
+ Add "USAGE_PAGE_L" define of "USB/HID_Demo" example.
+ Fix typing error of "ht32f1xxxx_conf.h".
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v004_1812 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2019-09-11
Main Changes
+ Add new device support.
HT32F12364
+ Update "ebi_lcd.c/h", fix LCD_SPI_BL_GPIO_XXX define error (shall be LCD_EBI_BL_GPIO_XXX).
+ Update USB example, use USB PLL by default (if USB PLL exist).
+ Fix function name typing error
SPI_GUADTCmd() -> SPI_GUARDTCmd()
SPI_GUADTConfig -> SPI_GUARDTConfig()
+ Update "ADC_RegularGroupConfig()" and "ADC_HPGroupConfig()", prevent to enable the ADC directly after
the above function call. User shall use the "ADC_Cmd(HT_ADC, ENABLE);" to enable the ADC.
+ Rename following files.
"IAR/startup_ht32f1xxxx_01.s" to "IARstartup_ht32f1xxxx_iar_01.s"
"IAR/startup_ht32f1xxxx_03.s" to "IARstartup_ht32f1xxxx_iar_03.s"
Others
+ Update comment and coding style.
+ Update "USART/HyperTerminal_TxRx_Interrupt" example, remove unnecessary configuration of LED.
+ Update readme file of "EBI/LCD" example.
+ Add "PWRCU/PowerDown_RTC" example.
+ Add "PWRCU/PWRCU_PowerDown_WAKEUPPin" example.
+ Add "RTC/Time" example.
+ Update and sync "ht32f1xxxx_conf.h".
+ Update and sync "HT32F1xxxx_01_DebugSupport.ini".
+ Update "ht32f1xxxx_tm.c", remove unnecessary variable initialization.
+ Update "ht32_op.c" and "ht32_op.s", edit comment of WDT Enable function.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v003_1679 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2019-04-19
Main Changes
+ Fix error of "CKCU_HSIAutoTrimClkConfig()" function which cause the HSI auto-trim not work.
+ Modify following define of ADC.
ADC_CH_GNDREF -> ADC_CH_GND_VREF
ADC_CH_VREF -> ADC_CH_VDD_VREF
Others
+ None.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v003_1673 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2019-04-09
Main Changes
+ Add SEGGER Embedded Studio IDE support (beta version).
+ Update "ht32f1xxxx_usbd.c" and "ht32_usbd_core.c", add Force USB Reset Control function (apply to specific
model only).
+ Update Create Project script, add Script folder in project_template.
+ Add "TM/TriggerCounter" example.
+ Add "USBD/HID_Keyboard_Mass_Storage" example.
Others
+ Update comment of example code.
+ Update define of "USBD/Mass_Storage" example.
+ Update "EXTI/WakeUp_DeepSleepMode1" Example, add LED3 (for some SK have only LED2 and LED3 on board).
+ Update/sync startup.s/system.c files.
+ Update/sync "HT32F1xxxx_01_DebugSupport.ini".
+ Update/sync "ht32_op.s" and "ht32_op.c".
+ Update "BootProcess" function.
+ Update/sync "FlashMacro.mac".
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v002_1496 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2018-12-17
Main Changes
+ Modify Control IN/OUT method of USB Core, to fix USB transfer problem when CPU in the lower speed or late
USB interrupt case.
+ Add workaround for PDMA CH3 issue (Interrupt Enable bit of CH3 is not work).
Others
+ Add "USBD_DisableDefaultPull()" function to disable pull resistance when the USB is not use.
+ Rename RTC example as below.
"Calendar" -> "Time_BackupDomain"
+ Add new example.
"RTC/Calendar_BackupDomain"
"FMC/EnableProtectionByFW"
+ Update "EXTI/WakeUp_DeepSleepMode1" example.
+ Update coding style.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v002_1406 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2018-09-30
Main Changes
+ Update HardFault_Handler of "ht32f1xxxx_01_it.c",add the debug instruction and system reset.
+ Add "RAND/Random_Number" example and update "ht32_rand.c".
+ Add "__HT_check_sp" and "__HT_check_heap" symbol into startup.s and watchpoint command into
"HT32F1xxxx_01_DebugSupport.ini" for debug stack/heap underflow, overflow, and overwrite.
+ Update "USBD/HID_Keyboard_Joystick" and "USBD/HID_Mouse" example, change the set flag sequence
(before USBDCore_EPTWriteINData).
+ Add GNU Make support of GNU Arm compiler.
Others
+ Add "objcooy.txt" which shows how to use obj tools of GNU Arm compiler.
+ Update format and coding style.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v002_1367 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2018-08-02
Main Changes
+ Add GNU Arm compiler support.
- Add project_template related files
- "startup_ht32f5xxxx_gcc_nn.s"
- "linker.ld" (link script)
+ Update "ht32f5xxxx_tm.c/.h", add following functions which have TM_CH_n parameter.
void TM_ForcedOREF(HT_TM_TypeDef* TMx, TM_CH_Enum TM_CH_n, TM_OM_Enum ForcedAction)
void TM_SetCaptureCompare(HT_TM_TypeDef* TMx, TM_CH_Enum TM_CH_n, u16 Cmp)
void TM_SetAsymmetricCompare(HT_TM_TypeDef* TMx, TM_CH_Enum TM_CH_n, u16 Cmp)
u32 TM_GetCaptureCompare(HT_TM_TypeDef* TMx, TM_CH_Enum TM_CH_n)
Others
+ Add "USBD/HID_Keyboard_Virtual_COM" example.
+ Fix compile error when turn on Library debug mode (HT32_LIB_DEBUG = 1).
+ Modify "example/NVIC/Vector_Table_Offset" example code to support GUN compiler.
+ Simplify "example/USART/HyperTerminal_TxRx_Interrupt" example.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_1302 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2018-06-11
Main Changes
+ Add SourceryG++Lite compiler support.
- Add project_template related files
- "startup_ht32f1xxxx_cs3_nn.s"
- "linker.ld" (link script)
+ Add DMA support of "utilities/common/spi_flash.c".
+ Add "EXTI_GetEdgeFlag()" function.
+ Add LIBCFG_AES_SWAP function to process endian issue of AES.
Others
+ Update "ht32f1xxxx_conf.h" for AUTO_RETURN (\r) option.
+ Update format of IAR "startup_ht32f1xxxx_01.s".
+ Fix "LIBCFC_CKCU_USB_PLL" typing error of ht32fxxxx_libcfg.h and example code (shall be LIBCFG_CKCU_USB_PLL).
+ Fix IAP_PPBIT define error of "IAP/IAP_UI" example.
+ Update "ht32f1xxxx_ckcu.c" to remove unnecessary register write of PLL.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_1153 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2018-02-28
Main Changes
+ Add "USBD/USB_UAC_Sound_RateControl" Example.
+ Add "I2C_SpeedOffset" parameter of I2C_InitTypeDef to reach real I2C speed.
Note: Related examples are also updated.
+ Change EBI timing of "ebi_lcd.c" to fix LCD display problem on HT32F12345 with ESK32-A2A31.
+ Add "CKCU/HSI_AutoTrim_By_USB" Example.
+ Update "CKCU_HSIAutoTrimIsReady" function of "ht32f5xxxx_ckcu.c".
Others
+ Update format and coding style.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_1023 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-12-30
Main Changes
+ Update boot related functions of "startup_ht32f1xxxx_nn.s" and "system_ht32f1xxxx_nn.c".
+ Update "ht32_op.c" and "ht32_op.s" to support enable WDT function by Flash Option byte (Apply to specific
model only).
+ Add "GPIO_DisableDebugPort()"" function to disable SWD function.
Others
+ Fix IAR Project setting error of IAP Example.
+ Add "RTC_LSILoadTrimData()" function.
+ Add "LIBCFG_RTC_LSI_LOAD_TRIM" define of HT32F165x.
+ Remove useless "RTC_LSICmd()"" function.
+ Update following examples, remove LSI enable code (LSI default on).
"PWRCU/DeepSleepMode1"
"PWRCU/BackupData"
"PWRCU/DeepSleepMode2"
"PWRCU/PowerDownMode"
"RTC/Calendar"
+ Update I2S and USB UAC related examples (Coding style and remove unuse define).
+ Update USB Example, remove invalid remote wakeup configuration by define (Only HID class support Remote
Wakeup).
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_933 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-11-17
Main Changes
+ Fix AES typing error of "ht32f1xxxx_aes.c/.h" (EBC to ECB).
+ Fix TM define error of "ht32f1xxxx_tm.c/.h".
Others
+ Update "ht32_virtual_com.inf" file, add Digital Signature.
+ Update typing error of example code.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_899 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-10-19
Main Changes
+ Update "SDIO/SDCard" Example code. Fix read Card SCR problem which causes SDIO working on 1-bit mode
abnormally.
Others
+ Update project setting.
+ Remove some project files. Use "CreateProject.bat" to copy project files automatically.
+ Add "LIBCFG_CHIPNAME" define.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_785 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-08-31
Main Changes
+ Fix "ht32f1xxxx_conf.h" typing error ("_ADC" to "_AES").
+ Fix AES typing error (EBC to ECB).
Others
+ Update "ht32_usbd_core.c" to support vendor function.
+ Add "USE_MEM_HT32F1xxxx" define into project.
+ Add "USE_MEM_HT32F1xxxx" default define into "ht32f1xxxx_xx_libcfg.h".
+ Rename "system_ht32f1xxxx.h" to "system_ht32f1xxxx_01.h" for PACK requirement.
+ Update IAP examples.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_671 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-07-27
Main Changes
+ None
Others
+ Update "ht32_op.c", add CK_CODE/CK_DATA/CK_CODEOP in Option Bytes (same format with e-Writer32).
+ Modify USB/Mass_Storage example for WIN10 compatibility issue.
+ Add "USE_MEM_HT32F1xxxx" support for memory size define (LIBCFG_FLASH_SIZE/LIBCFG_RAM_SIZE).
+ Add IAR EWARMv8 project template (create by IAR EWARM v8.11).
+ Upgrade the version of IAR EWARM project template from v6.20 to v6.50.
Note:
1. Supported CMSIS-DAP: IAR EWARM v6.50 and above.
2. RDI/e-Link32 is not supported anymore from the v8.xx of IAR EWARM.
Known Issue:
+ IAP example is not ready, will be update in next release.
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_552 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-07-17
Main Changes
+ Add example code.
+ Update TM for PDMA support.
+ Fix "USART_RXTL_01/04/08/14" define error.
+ Fix "HT32F_DVB_BuzzerFun()" define error of "ht32f1xxxx_board_01.c".
+ Fix pin assignment error of "ht32f12366_sk.h"
Others
+ Add BUTTON_MODE_WAKE_UP support for "ht32f1xxxx_sk.c/.h".
+ Update typing error and coding style.
+ Remove warning on old MDK-ARM version.
+ Update project setting.
+ Add DEINIT_ENABLE setting of "ht32f1xxxx_system_nn.c".
/*----------------------------------------------------------------------------------------------------------*/
/* HT32F1xxxx_FWLib_v001_167 */
/*----------------------------------------------------------------------------------------------------------*/
Release Date: 2017-06-14
Main Changes
+ Initial version.
Others
+
|