OpenH743I-C

From Waveshare Wiki
Jump to: navigation, search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
OpenH743I-C
OpenH743I-C.jpg

UART, SPI, Arduino, LCD, I2C
OpenH743I-C (A)
OpenH743I-C-A.jpg
OpenH743I-C (B)
OpenH743I-C-B.jpg
{{{name4}}}

{{{name5}}}

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

OpenH7431-C Spec01.jpg
OpenH7431-C Spec4.png

CoreH743I Onboard Resource

OpenH7431-C Spec02.jpg
OpenH7431-C Spec03.png

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)
Openh734i-c user manual 1.jpg
  • 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
Connect 10_DOF_IMU_Sensor (D) module to I2C4 interface of Open board
Openh734i-c user manual 2.jpg
  • 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)
Openh734i-c user manual 3.jpg
  • 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
Connect W25QXX DataFlash Board to Open board
Openh734i-c user manual 4.jpg
  • 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
Openh734i-c user manual 5.jpg
  • 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
Connect W25QXX DataFlash Board to QUADSPI interface of Open board
Openh734i-c user manual 6.jpg
  • 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
Connect Analog Test Board to SPI1 (ADC+DAC) interface of Open board
Connect PA5 to LED
Openh734i-c user manual 7.jpg
  • 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
Wire PA4 to PB0
Openh734i-c user manual 8.jpg
  • 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
Wire PA6 to PC4
Openh734i-c user manual 9.jpg
  • 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
Connect NandFlash Board to 8BIT_FMC interface for Open board
Openh734i-c user manual 10.jpg
  • 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)
Openh734i-c user manual 11.jpg
Or connect 4.3inch Capacitive Touch LCD to RGB interface of Open board by FFC cable
Openh734i-c user manual 12.jpg
  • 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
Connect the 7inch Capacitive Touch LCD (F) to Open board via RGB interface by FFC cable
Openh734i-c user manual 13.jpg
  • 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
Openh734i-c user manual 14.jpg
  • Expected result
STemWin Demo are displayed on LCD
4. Touch
  • Hardware setting
Connect capacitive LCDs to Open board
  • Expected result
Touch points are displayed when you touch LCD, support up to 5-points touching.
Openh734i-c user manual 15.jpg

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
Openh734i-c user manual 16.jpg
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
Connect OV2640 Camera Board to DCMI interface of Open board
Openh734i-c user manual 17.jpg
  • 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)
Openh734i-c user manual 18.jpg

Examples 24. ETH

ETH example

  • Hardware setting
Connect DP83848 Ethernet Board or LAN8720 ETH Board to ETH interface of Open board
Openh734i-c user manual 19.jpg
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.
Openh734i-c user manual 20.jpg
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)
Openh734i-c user manual 21.jpg
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)
Openh734i-c user manual 22.jpg
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)
Openh734i-c user manual 23.jpg
5. LwIP_HTTP_Server_Raw
HTTP example, display webpage
  • Expected result
Download example and reset, input IP address of Open board in browser(default: 192.168.1.110)
Openh734i-c user manual 24.jpg

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.
Openh734i-c user manual 25.jpg
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.
Openh734i-c user manual 26.jpg
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.
Openh734i-c user manual 27.jpg
Openh734i-c user manua28.png
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:
OpenH734I-C MSC.png
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.
OpenH734I-C MSC2.png
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
Openh734i-c user manual 29.jpg
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

Document

FAQ

 Answer:

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}}}


 Answer:
Remove the PA9 VBUS jump bubble from the BOOT CONFIG on the core board.

{{{5}}}


 Answer:

Most likely caused by insufficient power supply to the computer. Change to use our matching or ordinary 5V power supply can be.

{{{5}}}


 Answer:

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}}}


 Answer:
*Comment out two lines of code in the main.c file, as shown here:

OpenH743I-C FAQ01.png

  • If it still does not work, please change the clock division to 4 or 5.

OpenH743I-C FAQ02.png

{{{5}}}


 Answer:

Change the following three places can:
OpenH743I-C FAQ03.png

{{{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 AM GMT+8 (Monday to Friday)