OpenH743I-C
| ||
| ||
| ||
Hardware Connection
The OpenH743I-C is an STM32 development board with STM32H743IIT6 as the main controller chip, which comes with a rich expansion interface to support access to various peripheral modules.
Play with your STM32 transformers, gather your Cortex-M0 / M3 / M4 / M7 team, build your embedded front, and create your electronic kingdom! Start here!
The limitation of most development boards on the market is that they are not open and modular enough, thus limiting their portability, extensibility, and application.
In fact, hardware development systems can learn from the design philosophy of software engineering - openness, modularity, and interface. So that it has "portability", "easy to expand" and other advantages so that it can be designed once and used everywhere, just like software.
Carrier Board Resources
CoreH743I Onboard Resource
About the examples
We provide demo code for you to follow.The demo codes use HAL libraries, generated by STM32CubeMX v5.0, edited by KEIL MDK v5.12. The firmware libraries of STM32H7 used is v1.3.2
Preparation
- Programmer: ST-Link V2
- Programming Inteface: JTAG/SWD
- You should use Serial assistance software to check output if the examples use serial print. OpenH743I-C integrate CP2102 chip on board, you just need to connect USART1 interface to PC by USB cable, and remove the OTG_JMP jumper, hereafter will no longer describe this setting。
- The parameters of serial port should be: (Serial assistant software)
Baud rate 115200 Data bit 8 Stop bit 1 Parity bit None Flow Ctl None
【Note】You should pres reset button to run the code after programming.
Examples 1. LED
This is example used to test GPIO output
- Hardware setting
- Connect the LCD_JMP jumpers
- Expected result
- LED1~LED will light on in turn
Examples 2. KEY
This is example used to test GPIO input
- Hardware setting
- Connect KEY_JMP and LED_JMP jumpers
- Expected result
- Press CTR (Click of joystick), LED1 turns off and LED1 turns on when release the key.
Examples 3. EXTI
This example used to test GPIO Interrupt function
- Hardware setting
- Connect KEY_JMP and LED_JMP jumpers
- Expected result
- Once press the CTR (Clock of joystick), the status of LED1 changes
Examples 4. USART
To test USART function, we provide three examples, three examples use roll polling , interrupt and DMA mechanisms respectively
- USART_Printf
This examples use roll polling method
- Expected result
- Strings are printed to serial as below:
UART Printf Example: retarget the C library printf function to the UART
welcome to www.waveshare.com !!!
welcome to www.waveshare.com !!!
welcome to www.waveshare.com !!!
welcome to www.waveshare.com !!!
- USART_Interrupt
This example uses HAL interrupt method
- Expected
- Download example and reset. The string sent from serial assistant software are echoed.(For example: STM32H743IIT6)
****UART-Hyperterminal communication based on IT ****
Use the keyboard to enter character to send:
STM32H743IIT6
- USART_DMA
This example uses HAL DMA method
- Expected result
- Download example and reset. The string sent from serial assistant software are echoed.(For example: STM32H743IIT6)
****UART-Hyperterminal communication based on DMA ****
STM32H743IIT6
Example 5. TIM
Timer testing, two examples are provided.
- Hardware setting
- Connect LED_JMP jumpers
- Basic_TIM
- This example uses timer interrupt of HAL libraries
- Expected result
- Download example and reset, LED1 is flashing
- PWM
- Use timer for PWM signal outputing.
Examples 6. I2C
Two examples provided for testing read/write flash and registers by I2C Bus
- AT24CXX
This example reads/writes data from/to E2PROM by I2C
- Hardware setting
- Connect AT24/FM24 Board board to I2C4 interface of Open board. (You need to buy AT24/FM23 board separately if you only bought basic board)
- Expected result
- Download example and reset, information are printed to serial port
***************I2C Example*******************************
I2C Write data
I2C Read data
EEPROM 24C02 Read and Write Test OK
- 10_DOF_IMU_Sensor (D)
This example reads/writes data from/to ICM-20948 and BMP280 by I2C
- Hardware setting
- Expected result
- Download example and reset, information are printed to serial port
***************I2C Example*******************************
Sensor raw data [v0.9].
Motion sersor ICM-20948
BMP280 Init success
/-------------------------------------------------------------/
Roll: 10.59 Pitch: -12.82 Yaw: -157.38
Acceleration: X: -85 Y: 358 Z: 16379
Gyroscope: X: -1 Y: 7 Z: -11
Magnetic: X: -78 Y: -159 Z: -328
Pressure: 1002.31 Altitude: 91.53
Temperature: 29.0
Note Roll, Pitch, Yaw Roll angle(°), Pitch angle(°), Yaw angle(°) Acceleration Acceleration (LSB, can be converted to g) Gyroscope Angular rate of Gyroscope (LSB, can be converted to °/s) Magnetic Tit angle of Magnetic (°) Angle Angle of direction (generally, it should be equal to Yaw angle) Pressure Air pressure (hPa) Altitude Altitude(m) Temperature Temperature(°C)
Examples 7. FDCAN
Two examples are provide to test CAN bus
- Internal_LoopBack
- Internal loopback testing of CAN bus
- Expected result
- Download example and reset, information are printed to serial port
***************FDCNA Example*******************************
Internal_LoopBack : 1234567
- Normal
- This example test CAN communication between two CAN modules
- Hardawre setting
- Connect two CAN modules to CAN1 and CAN2 interfaces of Open board respectively
- Wires two CAN modules together (CANL -> CANL, CANH -> CANH)
- Expected result
- Download example and reset, information are printed to serial port:
***************FDCNA Example*******************************
CAN1->CAN2 : 1234567
CAN2->CAN1 : ABCDEFG
Examples 8. SPI
This example is used to communicate W25QXX DataFlash Board via SPI interface
- Hardware setting
- Expected result
- Download example and reset, information are printed to serial port:
***************SPI Example*******************************
W25Qxxx ID is : 0xEF 0x17
QSPI Erase Block ok
QSPI Write ok
QSPI Read ok
QSPI Read Data :
0x00 0x01 0x02 0x03 0x04 ...... 0xFF
W25Q128FV QuadSPI Test OK
Examples 9. I2S
Driving WM8960 Audio Board to play music by I2C interface
- Hardware setting
- Connect WM8960 Audio Board to I2S interface of Open board
- Connect earphone to EARPHONE joack of WM8960 Audio board
- Expected result
- Download example and reset, information are printed to serial port:
***************I2S Example*******************************
WM8960 reset completed !!
WM89060_Init complete !!
Examples 10. QUADSPI
Drive W25QXX DataFlash Board via DualSPI interface
- Hardware setting
- Expected result
- Download example and reset, information are printed to serial port:
***************QuadSPi Example*******************************
SPI I/0 Read Device ID : 0xEF 0x17
Dual I/O Read Device ID : 0xEF 0x17
Quad I/O Read Device ID : 0xEF 0x17
Read JEDEC ID : 0xEF 0x40 0x18
QSPI Erase Block ok
QSPI Write ok
QSPI Read ok
QSPI Read Data : 0x00 0x01 0x02 ………. 0xFD 0xFE 0xFF
W25Q128FV QuadSPI Test OK
Examples 11.ADC
Three examples provided to test ADC function of Open board
- ADC
- ADC example which uses roll polling method
- Expected result
- Download example and reset, adjust potentiometer on board, and corresponding information are printed to serial port
******** ADC Example ********
ADC Value : 0.00V
ADC Value : 0.37V
ADC Value : 1.12V
ADC Value : 3.29V
- ADC_Interrupt
ADC example use Interrupt method
- Expected result
- Download example and reset, adjust potentiometer on board, and corresponding information are printed to serial port
******** ADC Example ********
ADC IN3 = 1.35
ADC IN3 = 1.72
ADC IN3 = 1.88
ADC IN3 = 2.14
ADC IN3 = 2.82
ADC IN3 = 3.29
ADC IN3 = 3.29
- ADC_DMA
ADC example use DMA transmitting
- Expected result
- Download example and reset, adjust potentiometer on board, and corresponding information are printed to serial port
******** ADC Example ********
ADC1 IN3=2.757780 ADC1 IN7=2.388679
ADC1 IN3=2.757578 ADC1 IN7=2.388679
Examples 12. DAC
DAC examples: output triangle wave
- Hardware setting
- Expected result
- Download example and reset, audio output from speaker of Analog Test Board, and triangle wave is output to PA3, you can see that LED connected to PA5 turns bright and then dim gradually.
Examples 13. COMP
COMP comparator example
- Hardware setting
- Expected result
- Download example and reset
******** COMP Example ********
DAC1_Value = 0.32V
DAC2_Value = 0.73V
COMP OUT 0
DAC1_Value = 1.45V
DAC2_Value = 0.73V
COMP OUT 1
Examples 14. OPAMP
OPAMP operational amplifier example
- Hardware setting
- Expected result
- Download example and reset, information are printed to serial port
******** OPAMP Example ********
DAC_Value = 0.32V
ADC_Value = 0.64V
DAC_Value = 0.40V
ADC_Value = 0.80V
Examples 15. RNG
Random numbers example
- Expected result
- Download example and reset, information are printed to serial port
******** RNG Example ********
Random 32bit Numbers : 0x4227F035 !!!
Random 32bit Numbers : 0x2665F092 !!!
Random 32bit Numbers : 0x43E81CE2 !!!
Examples 16. CRC
CRC example
- Expected result
- Download examples and reset, information are printed to serial port
******** CRC Example ********
CRC right value
Examples 17. RTC
RTC example
- Expected result
- Download example and reset, information are printed to serial port:
******** RTC Example ********
2019/04/18
11:00:00
2019/04/18
11:00:01
Examples 18. FMC
FMC examples.
- NandFlash_FMC
- FMC read NandFlash
- Hardware setting
- Expected result
- Download example and reset, information are printed to serial port
******** FMC Example ********
NandFlash Example
NandID 0
Nand Flash ID = 0xEC,0xF1,0x00,0x95 Type = K9F1G08U0B
NandID 0
Written to the number of:
0x00 0x01 0x02 0x03 ……..0xff
Read receive:
0x00 0x01 0x02 0x03 ……..0xff
NandFlash Read Write success
- SDRAM_FMC
FMC read SDRAM
- Expected result
- Download example and reset, information are printed to serial port
******* FMC Example ********
0x0 0x1 0x2 0x3 0x4 ………. 0xfd 0xfe
SDRAM test success
Exeamples 19. LTDC
LCD eaxample
- 1. 800x480
- Hardware setting
- You can connect 4.3inch Capacitive Touch LCD to LCD interface of Open board (GPIO)
- Or connect 4.3inch Capacitive Touch LCD to RGB interface of Open board by FFC cable
- Expected result
- Download example and reset, the LCD displays and information are printed to serial port
******** LTDC Example ********
WidthByte = 800, HeightByte = 480
- 2. 1024x600
- Hardware setting
- Expecred result
- Download example and reset, the LCD displays and information are printed to serial port
******** LTDC Example ********
WidthByte = 1024, HeightByte = 600
- 3. StemWin
- Porting Graphic user interface example by using StemWin middle layer
- Hardware setting
- Two examples for 4.3inch Capacitive Touch LCD (800x480) and 7inch Capacitive Touch LCD (F) (1024x600) respectively
- Connect them to Open board
- Expected result
- STemWin Demo are displayed on LCD
- 4. Touch
- Hardware setting
- Connect capacitive LCDs to Open board
- Expected result
Examples 20. SDMMC
SDMMC examples
- Hardware setting
- Connect Micro SD Storage Board to SDMMC interface of Open board, insert SD card to the Storage Board.
- 1. SDMMC
- Read lines of SD card
- Expected result
- Download example and reset, information are printed to serial port:
******** SDMMC Example ********
ManufacturerID: 0x3
OEM_AppliID : 0x5344
0xAA 0xAA 0xAA ………. 0xAA
SD reading and writing Successful
0x0 0x0 0x0 0x0 ……….. 0x0
SD Erase Successful
0x0 0x1 0x2 0x3 …….. 0xff
SD DMA reading and writing Successful
- 2. SDMMC_FATFS
- FatFs files system example
- Expected result
- Before you run this example, please make sure the SD card used are accessable in PC, otherwise, you need to format it .
- Download example and reset, information are printed to serial port
****** FatFs Example ******
mount sucess!!!
open file sucess!!!
write file sucess!!!
write Data : This is STM32 working with FatFs
close sucess!!!
open file sucess!!!
read sucess!!!
read Data : This is STM32 working with FatFs
close sucess!!!
FatFs is working well!!!
- After running example, read the SD card on PC, you will find that a new file STM32cube.txt with content "This is STM32 working with FatFs" was created
Examples 21. WDG
Watch dog example
- 1. IWDG
- Expected result
- Download example and reset, program reset if the IWDG doesn't update. Information are printed to serial port:
****** WDG Example ******
****** WDG Example ******
****** WDG Example ******
****** WDG Example ******
- 2. WWDG
- Expected result
- Download example and reset, program reset if WWDG doesn't update. Information are printed to serial port
-
****** WDG Example ******
www.waveshare.net !!!
www.waveshare.net !!!
www.waveshare.net !!!
Examples 22. SAI
Audio output by SAI interface
- Hardware setting
- Connect WM8960 Audio Board to SAI interface of Open board
- Plug earphone to EARPHONE jack of Audio board
- Expected result
- Download example and reset, you can hear that Audio board is playing music. Information are printed to serial port.
****** SAI Example ******
WM8960 reset completed !!
WM89060_Init complete !!
WaveDataLength:1003324
DMA_MAX(Size/2): 65535
AudioRemSize = 436098
AudioRemSize:370563
AudioRemSize:305028
AudioRemSize:239493
AudioRemSize:173958
AudioRemSize:108423
AudioRemSize:42888
AudioRemSize:0
Data transmission to complete.
Examples 23. DCMI_OV2640
Camera example
- Hardware setting
- Expected result
- Open camera test.exe software which located in sofeware folder under project directory, configure and open COM port
- Download example and reset, You can press CTR (Click of joystick) to capture one picture, during transmitting, please do not press CTR again)
Examples 24. ETH
ETH example
- Hardware setting
- Connect DP83848 Ethernet Board or LAN8720 ETH Board to ETH interface of Open board
- Copy echotool.exe from project libraries, the default IP address is set to 192.168.1.110, if you need to change the IP address, just modify the MX_LWIP_Init function in LWIP.c file.
- 1. LwIP_TCP_Echo_Client
- TCP client echo example: Open board works as Client
- Expected result
- Download example and reset, check if the IP address of remote PC is same as the one defined in main.h file (set as 192.168.1.206 by default)
- Open CMD as administrator and type :
\echotool/p tcp/s #/p tcp : TCP protocol #/s : Connecting mode (Server Mode)
- When User button is pressed, string sent by Client (Open board), and Servo receive and echo to Client.
- 2. LwIP_TCP_Echo_Server
- TCP Server echo example: Open board works as Server
- Expected result
- Open CMD, and type commands:
C:\echotool IP_address /p tcp /r 7 /n 15 /t 2 /d Testing LwIP TCP echo server
- -IP_address: IP address of Open board. By default, it is set with static IP: 192.168.1.110
- -/p tcp: Set TCP protocol
- -/r Remote port (echo port)
- -/n: Numbers of echo requests.
- -/t timeout (s)
- -/d message sent (e.g. Testing LwIP TCP echo server)
- 3. LwIP_UDP_Echo_Client
- UDP Client echo example, Open board works as Client
- Expected result
- Download example and reset, check if IP address of remote PC is same as IP address defined in main.h file (default: 192.168.1.206)
- Open CMD and type commands:
C:\echotool /p udp /s
- -/p udp: Set UDP protocol
- /s Connection mode (Server mode)
- 4. LwIP_UDP_Echo_Server
- UDP Server echo example, Open board works as Server
- Expected result
- Download example and reset
- Open CMD and type commands:
C:\echotool IP_address /p udp /r 7 /l 7 /n 15 /t 2 /d Testing LwIP udp echo
- -IP_address: IP address of Open board. By default, it is set with static IP: 192.168.1.110
- -/p udp: Set UDP protocol
- -/r Remote port (echo port)
- -/n: Numbers of echo requests.
- -/t timeout (s)
- -/d message sent (e.g. Testing LwIP UDP echo server)
- 5. LwIP_HTTP_Server_Raw
- HTTP example, display webpage
- Expected result
25. USB_FS
- USB FS example
- Hardware setting
- Connect micro USB interface of Open board to PC by USB cable. Insert OTG JMP jumper and remove four jumpers of UART1.
- 1. USB FS DEVICE (CDC)
- FS USB Device (CDC) example.
- Expected result:
- Download example and reset, check Device Manager, you can find that device "STMicroelectronics Virtual COM Port" is recognized. Unzip stsw.zip file from Software folder under project directory and install it. With the driver, COM Port is recognized and you can try to send data.
- 2. USB FS DEVICE (HID)
- FS USB HID example. Open board is recognized as Mouse
- Expected result
- Download example and reset. You can find a "USB input device" is recognized by PC, you can control cursor by Joystick of Open board
- 3. USB FS DEVICE (MSC)
- FS USB MSC example. Open board is recognized as U Drive
- Hardware setting
- Connect Micro SD Storage Board to SDIO interface of Open board, insert SD card to Micro SD Storage Board
- Expected result
- Download example and reset, USB Mass Storage Device is recognized by PC.
- 4. USB FS HOST (MSC)
- FS USB MSC example, Open can recognize U Drive
- Hardware setting
- Connect OTG to Micro USB interface if Open board and U drive. Connect 7inch 1024x600 LCD to Open board
- Expected result
- Download example and reset, file names and catalog are read and printed:
- 5. USB FS HOST (HID)
- FS USB HID example. Open board can recognize Mouse
- Hardware setting
- Connect Mouser to one side of OTG device, and connect another side of OTG to Open board. Connect 7inch 1024x600 LCD to Open board
- Expected result:
- Download example and reset. The red point on LCD moves following Mouse, green blocks on LCD turn to red when Mouse is clicked and back to green when release.
- 6. USB FS HOST (DYNAMICSWITCH_STANDALONE)
- FS USB example, Open board can recognize U drive and Mouse and dynamic switch between two devices.
- Hardware setting
- Connect U drive or Mouse to one side of OTG device, then connect OTG device to Micro USB interface of Open board. Connect 7inch 1024x600 LCD to Open board
- Expected result
- Download example and reset. You can connect U drive to test files reading or connect mouse to test.
26. USB HS
- Expected result of USB HS examples are similar to USB FS.
- Expected result
- Connect USB3300 Module to ULPI interface of Open board
- 1. USB HS Device (HDI)
- HS USB HID examples. Open board is recognized as Mouse
- Hardware setting
- Connect USB3300 module to PC by USB cable
- Expected result:
- Download example and reset. You can find a "USB input device" is recognized by PC, you can control cursor by Joystick of Open board
27. FREEPRTOS
- 11 examples with FreeRTOS are generated by STM32CubeMX.
- Expected result
- Insert LED JMP jumpers. Download example and reset, LEDs will flash as codes
28. uCOS III
- Examples is generated with uCOS III is generated by STM32CUbeMX software
- Expected result
- Insert LED JMPjumpers. Download exmple and reset, LED1 is flahsing.
Resources
Documentation
STM32 Software
IDE
Programmers
USB Driver
Other Software
- Stlinkupgrade
- TCP UDP Debugger
- IpTool
- EMWToolBox_Setup
- BonjourSetup
- SecureCRT
- Camera test
- BusHound
- Package
Document
FAQ
The default compilation version is V5, if you choose V6 to speed up the process, it will cause some routines to compile with errors.
{{{5}}}
{{{5}}}
Most likely caused by insufficient power supply to the computer. Change to use our matching or ordinary 5V power supply can be.
{{{5}}}
Most likely Keil version is too low, and the STM32H7XX package version is also low, try to update to the latest version before compiling and downloading.
{{{5}}}
Support
Technical Support
If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)