Anfulai embedded weekly No. 246: December 27, 2021 -- January 2, 2022

Summary address of previous weekly reports:


Video version:

1. 2022 will be a video year

This year will start to do more technical video sharing.

(1) In the future, technical posts will be published. On the basis of documentation, those who can make videos will share videos.

(2) The BSP driven video tutorial of STM32H7 has been produced. In the past, video tutorials like to make a PPT. This time, the routine is changed. The video tutorial directly uses the official data manual, reference manual, Corrigendum manual, etc. in this way, it is closer to the practical application.

(3) The RTOS video tutorial opened will focus on ThreadX family bucket tutorial, and assist other RTOS to make comparison, so as to facilitate system learning.

Over the years, many documents and tutorials have been written:

2. "The first optical oscilloscope" in the world

Researchers at the University of Florida published a paper in the journal Nature Photonics and realized a method for measuring optical pulses, which can measure peaks and troughs. The real-time resolution can be sub femtosecond (10 to the minus 16th power)

At present, the typical representative of high-speed digital oscilloscope is the LabMaster 10-100Zi of Liko, with a bandwidth of 100GHz, a maximum sampling rate of 240GS/s and a maximum analyzable storage depth of 1536Mpts

3. Electronic tube makes CPU

The earliest author created 555 timer:

There is a video detailing the design process:

A 1-bit CPU is designed in the next half of the year:

Extended reading:
Another pure hand-made CPU cow, and compiled and implemented Unix like systems to support file systems

4. KEIL Studio introduction document

Keil_Studio_DevSummit_2021.pdf (4.25 MB)



5. flashloader design document and debugging method of IAR
Debugging a Custom Flash Loader | IAR Systems

6. 3PAEK sirip, a domestic analog chip manufacturer, launched the reset chip TPV8308/TPV8348 with adjustable delay time

Before the power supply voltage drops to the point where the system cannot work stably, the reset chip can control or warn the system in advance, so that the system can enter a safe state.

7. In 2021, the revenue of 17 semiconductor companies exceeded US $10 billion

TOP10 is basically developed for mobile phones and computer related devices. TI has been in the top 10 with its strong Simulator Devices in recent years.

Huawei Hisilicon also entered the top 10 in the first quarter of 2020. If not restricted, ​ This year, Huawei Hisilicon is absolutely unstoppable.

8. DSP knowledge popularization book, including PDF download, Chinese and English versions

I shared the English version for you before, and the forum friends helped share the Chinese version. Let's share it again:

The Scientist and Engineer Guide to DSP.pdf (12.17MB)
Practical digital signal processing from principle to application pdf (49.66MB)


9. Version 3 emwin6 The X and ThreadX GUIX tutorials begin to update the application design synchronously

At the beginning of the new year, the later updated chapters are more interesting in combination with the use of hardware, such as text control, temperature display, lighting display, humidity display, etc. this feels more meaningful.

Also listview control, do a serial port data print, scroll display or something.

At present, we have started to do the chapter of camera application, emwin6 X has been done. We will start to do the corresponding chapters of GUIX. We will share them with you this week.

10. Release UDP chapter of ThreadX NetXDUO network tutorial for V5, V6 and V7

Update chapters 10 and 11 UDP
New example: Vx-2404_ThreadX NetXDUO UDP

Forum Download:


The next update begins to study the encryption component:

11. Progress of H7-TOOL this week

There are many updates this week.

H7-TOOL details:

On the basis of the current TOOL hardware, 1 Trailer 16 is realized
Because the customer's CPU board is a 3 * 4 composition, it needs a 12 burner to burn at the same time.
Therefore, a 1-16 adapter board is designed to enable the existing TOOL to realize 1-16 burning


Advanced script configuration:

H7-TOOL release v2 11. RTT increases the search scope, and offline burning adds new models of Huada, yateli, Hangshun, Fudan micro and nRF51, one click download, HEX segmentation, etc

1. Upgrade APP firmware to v2 11. Upgrade the upper computer software to v2 11. BOOT firmware was not upgraded.
2. The waveform name label is added to the serial port oscilloscope, which CAN be modified and saved, such as LUA applet waveform, serial port printing, RTT printing and CAN decoder.
3. RTT function adds custom range retrieval and speed configuration functions.
4. The TOOL screenshot function adds four direction switching.
5. You can mask unused function icons.
6. Add one click download function (generate configuration file + transfer to TOOL + perform one burning).
7. When loading HEX files, multi segment files with large span can be automatically split, and the default algorithm can be automatically selected.
8. On the "read chip" page, you can generate bin files of specified length (all 00, all 55, all FF, incremental integer, etc.).
9. The SPI controller of H7-TOOL adds AD7606 support, supports 8-channel synchronous sampling, 16bit resolution and positive and negative 10V measurement range.
10. The LUA program interface of H7-TOOL adds line serial number display, which can easily prompt line errors when debugging LUA applet.
11. Add the following models:
- Huada HC32L110C6PA
- NRF51 series NRF51822-QFAC
- Atari AT32F435CGT7, AT32F437RMT7
- Hang Shun HK32F030, HK32F030M, HK32F103 series
- Fudan micro FM33LC023N
- fix the burning problem of stm32h7a and h7b series (redo the FLM file)
- the STM32G0xxx series has been upgraded and the modification function of OB area has been opened
- FLM file of external SPI FLASH is added in ST chip, which is only used for V5, V6 and V7 development boards
- Suzhou Guoxin changed its name to Guoxin technology and added the function of reading chip model to realize UID encryption

12. See the update record for more updates.

Summary of all resources of H7-TOOL (including operation manual):

PC software: upgrade PC software to v2 one point one
h7toolPC_release(V2.1.1).zip (54.19MB)

1. Precautions for upgrading the new version

(1) APP and eMMC have been upgraded independently:

(2) Because the internal power on automatic reconnection function of the WiFi module is turned off and the WiFi hotspot is accessed by program control, you need to update the WiFi password after the upgrade.

(3) in order to ensure that the version of TOOL firmware is consistent with that of the upper computer, the check function when the upper computer is turned on is added:

2. Add a waveform name label to the serial oscilloscope, which can be modified and saved

-Right click to open and close the waveform name window
-The waveform name can be edited manually
-Hardware serial port printing supports modifying the waveform name
-lua applet supports modifying waveform names
-RTT printing supports modifying the waveform name
-CAN decoder and UART decoder support modifying waveform name

[lua applet usage]
print_wave("WaveName = \" TEMPERATURE1 \ ", \" temperature2 \ ", \" temperature3 \ ", \" temperature4 \ ", \" temperature5 \ ")

[MCU serial port C program usage]
Print string to serial port
printf("WaveName = \" TEMPERATURE1 \ ", \" temperature2 \ "\ R \ n");

[usage of MCU RTT printing program]
SEGGER_RTT_printf(0, "WaveName = \" temperature 1 \ ", \" temperature 2\"\r\n");

[serial port decoder, CAN decoder usage]
Modify the decoder lua file and add global variables at the beginning
WaveName1 = "indoor temperature"
WaveName2 = "outdoor temperature"

3. The RTT function of H7-TOOL adds user-defined range retrieval and speed configuration functions

4. The TOOL screenshot supports switching in four directions

5. Add prefix sequence number to LUA applet

For example, the error in line 9 of the following code can be easily prompted when debugging and running.

6. H7-TOOL can mask unused function icons

7. Add one click download

Add one click download function (generate configuration file + transfer to TOOL + perform one burning)

8. When loading HEX files, you can automatically split multi segmented files with large spans and automatically select the default algorithm

Detailed operation instructions:


Dynamic diagram:

9. The SPI controller of H7-TOOL drives the AD7606, 8-Channel, positive and negative 10V, 16bit synchronous sampling operation instructions, including video display

Detailed operation instructions:


10. On the "read chip" page, you can generate bin files of specified length (all 00, all 55, all FF, incremental integer, etc.)

11. Offline burning
Add Huada HC32L110C6PA:

New nRF51 series:

New yateli 288MHz M4 core AT32F435 and AT32F437 support:

Newly added Hang Shun HK32F0XX, HK32F030M and HK32F1XX series

New Fudan micro FM33LC023N

Currently supported offline burning models:

Update record:

Release date: 2021-12-30
PC Software version: V2.1.1
STM32_APP Firmware version: V2.11
STM32_BOOT Firmware version: V2.04 

[PC [software] V2.1.1
1. CAN Assistant adds parameter saving function
2. solve CAN Assistant crash problem
3. solve RTTViewer Crash problem
4. Modify record page and add log(Used to troubleshoot software exceptions)

[APP [firmware] V2.11
1. solve CAN Assistant crash problem
2,Offline burning mask RESET and START Port initialization, modified to lua Configure according to the adapter board
Release date: 2021-12-28
PC Software version: V2.1.0
STM32_APP Firmware version: V2.10
STM32_BOOT Firmware version: V2.04 

[PC [software] V2.1.0
1. Offline burning
        - One click download function(Generate profile+Transfer to TOOL+Perform 1 burn)
        - load HEX File time,Multi segmented files with large spans can be automatically split,And automatically select the default algorithm
        - stay"Read chip"The page can generate a page of a specified length bin file(All 00,All 55,whole FF,Increasing integer, etc)
        - Add the following models:
                - Huada HC32L110C6PA 
                - NRF51 series NRF51822-QFAC
                - Yatli AT32F435CGT7,AT32F437RMT7
                - Hang Shun HK32F030,HK32F030M,HK32F103 series                
                - Fudan  FM33LC023N
        - correct STM32H7A, H7B Series burning problem(Redo FLM file)
        - Upgraded STM32G0xxx Series, open OB Area modification function
        - ST Add external in the chip SPI FLASH of FLM Files, only V5, V6, V7 For development board
        - Suzhou Guoxin changed its name to Guoxin Technology, And add the function of reading chip model, which can realize UID Encryption function
2.Low version pop-up prompt upgrade detected
3. CAN assistant
  - cancel none Document, changed to enable control
4. Screen capture function, supporting horizontal screen mode
5. The main interface icon can be masked
6. to update EMMC When the file is, a pop-up window will prompt whether to update it

[APP [firmware] V2.1.0
1. ADC Acquisition function optimization, when DAC When the function is enabled, ADC Filtering function is added for waveform acquisition to filter out abnormal burrs.
   The modified function is void DSO_LockWave(void)
2. swd_transfer_retry() always DAP_TRANSFER_WAIT Increase cycle wait times
3,osRtxErrorNotify() Internal crash, shielded osRtxErrorTimerQueueOverflow reason
   - RTX_Config.h  #define OS_TIMER_CB_QUEUE           256 // 8
3. Offline burning.
  - error_t target_flash_program_page, Write data less than page,And the starting address is not page There is a problem with the first address bug
  - Increase through FLM File read MCU Serial number function
  - Solve the navigation problem HK32 Write option word bug(Smooth sailing FLM Write option word by 2 bytes page write in, Need to cycle multiple times)
4. correct lua Display interface API. 
        - lcd_disp_label(x, y, h, w, str, align, fontzize, front_color, back_color)
  - c function DispLabelRound() Function inside X Coordinate and width correction bug. The border is overwritten. 
5. Serial assistant MODBUS Slave, after opening the display and sending frame, it will cycle decoding and sending, which has been solved
6. LUA FLM Interface file to realize the function of reading Guoxin MCU SN
Release date: 2021-11-28
PC Software version: V2.0.9
STM32_APP Firmware version: V2.09
STM32_BOOT Firmware version: V2.04 

[PC [software] V2.0.9
1. Offline burning
  - solve BUG: Burning Meiren semiconductor MRF88001D1 Time, The data file with a specific length has been burned successfully, but the verification error(V2.05 Problems introduced)
  - FLM None in EraseChip Function, which is executed according to sector erase (MRF88001D1 of FLM nothing EraseChip function)
  - upgrade STM32G0xx Series, add STM32G050, STM32G051, STM32G061,STM32G0B0, STM32G0B1, STM32G0C1
  - Only one data file path is recorded, and it is not necessary to record 10 separately.
  - increase"device"The width of the drop-down box, solve STM32L4xx The model is too long to display completely 
  - The output folder is adjusted to 2 lines
  - Add file management page,Synchronizable and backup User folder
2. CAN function
  - CAN Permanent sending status can be through the interface"Terminate sending"Button exit, start CAN Assistant and exit CAN The assistant can also terminate the transmission
  - Solve the problem that the Ethernet connection mode does not display data(Unrecognized APP Version number causes)
  - Solve the problem that line 1 cannot be copied to the clipboard bug
  - CAN The decoder adds waveform output function and supports monitoring 6 data nodes
3. UART Serial assistant
  - Support printing Tab('\t'), 8 byte alignment 
  - Solution information window RX1 and RX2 Data not updated bug
  - HID Serial port format check bit support MARK and SPACE (CDC Virtual serial port is not supported)
  - Support setting data bits(6-8)And stop bits(1,1.5,2)
  - Serial port oscilloscope, supporting channel null data "1,2,,5"  
  - correct Modbus Slave bug(Register value read back exception)
  - display PC When sending data,*Replace with[Tx] 
  - The decoder adds waveform output function
4. RTTViewer
   - Solve the problem that line 1 cannot be copied to the clipboard bug 
         -Increase search memory block
    {0x20000000, 0x20000},  /* 128K */
    {0x24000000, 0x80000},  /* 512K */
    {0x30000000, 0x40000},  /* 256K */        
    {0x1fff8000, 0x08000},  /* 32K  - HC32F460 */
    {0x10000000, 0x40000},  /* 256K - LPC1700 */
    {0x08000000, 0x40000},  /* 256K - cypress */ 
5. lua
  - Add serial port waveform button
  - Increase termination Lua Button
  - Input window title change simplification
  - Add file management for lua Sync folder to TOOL upper
6. System settings
  - Resume LAN search. Optimization function, read back IP Address is dynamic IP, Automatic discrimination WIFI and RJ45 Network port.
  - Analog calibration function, USB Add a default button in the voltage and external power page
  - The firmware upgrade function is restored to a separate upgrade, and EMMC Upgrade separate. Because sometimes there is no need to upgrade the data file.
  - Finer EMMC Pop up a box to allow the user to confirm the file
7. Screen capture function upgrade,Using image compression technology to improve refresh speed, Changed communication protocol
8. To solve the problem of closing pop-up window,Hide windows when closing programs,Save parameters,Last use taskkill Kill the process(Effect to be tracked)
9. Add pending function on the modify record page
10.Memorize the size of the main window and add menus-Restore default window size. 

[App [firmware] V2.09
1. 2.0 Improvement of inch horizontal screen interface
        -Interface 00,TVCC,POWER Center text box
        -Pulse measurement, NC power supply and other interfaces, and the elliptical data frame is widened
        -Analog signal generator interface
        -DAP-LINK Interface
        -DS18B20 Interface
2. Serial assistant
        - GB2312 When sending, line 2 aligns the timestamp. And correct line breaks bug
        - Support printing Tab('\t'), 8 byte alignment 
        - Serial port format check bit support MARK and SPACE, Software support SostMarkSpace        
3. Lua Applet
        - 6 Buttons for dynamic addition, Reduce the button height and increase the print area window to display more content
        - PC When downloading online, if TOOL stay Lua Interface, the button will be automatically reloaded
4. CAN Continuously send exit through PC Button to exit. No long press
5. The reset command is executed directly in the Modbus Execute in parsing to avoid IF The task crashes and cannot be executed
6. Parameter modification interface, Press and hold the big data modification prompt for 1 second C Can exit
7. PC The burning mode can be selected when burning online. entrance: "Execute burn"Button right mouse button menu
8. About interface in system settings, Add motherboard model parameters
9. Reset printing RTC, Convenient tracking code
10. Cancel vertical screen switching S,C Function of key(V2.06 For 2.0 Inch screen).
11. After offline programming, send software reset command and adjust the sending time during hardware reset holding
  - correct wifi_task(void)function bug,  ESP32_ReadLineNoWait()Global variables are required.
  - ESP32_ATGMR(gmr); char gmr[128];  /* Insufficient buffer, overflow */
  - DAP_Config.h reset Port line configuration by OD Mode changed to INPUT pattern, Do not execute RESET Action of port line setting 1
    __STATIC_INLINE void PORT_SWD_SETUP (void). reset The port line is configured as OD The mode is wrong
    __STATIC_FORCEINLINE void     PIN_nRESET_OUT (uint32_t bit) { Delete the software reset instruction and put it into DAP Do it on request
          static uint32_t DAP_SWJ_Pins(const uint8_t *request, uint8_t *response)
  - Lua Syntax error: string buffer overflows when 128 bytes are passed, resulting in LCD Can't swipe the screen
  - modbus_write_float  LUA API Function parameters bug,Floating point pass parameters are not supported
  - wifi_if.c file, static int32_t s_rx_ok_time Change to file level global variable, For 10 second cycles WiFi watchdog

[Boot [firmware] V2.04 unchanged


Added by digitalgod on Wed, 05 Jan 2022 12:03:59 +0200