STM32H7 Firmware Development

Job ID: 39747595

Budget: $30 – $250 USD

Looking for experienced STM32 developer to develop firmware with CubeIDE (HAL). This job is for the first step of a big project, with many more similar jobs to follow if interested. The code is to be written and tested on STM32H753 and using W25Q64. I have the setup and can run the tests for you, then you can implement my feedback. We may eventually have a testbench or send you the modules for testing, but that would be for the next steps.

The job can be split into 3 small tasks :

- STEP 1 : We have a binary file on the computer. We want to transfer that file through UART (using usb to serial adapter) and store it in the external memory (W25Q64). On the computer side, we can use any serial terminal software of your choice (like RealTerm). The file is about 4MB so it cannot be fully loaded on RAM and will thus need to be stored on the external memory as data is received (can use DMA or any method you prefer).

- STEP 2 : We must be able to read back the data from the external memory and load it into RAM. We will load about 800kB of data into RAM at once, so it should fit into the 1MB RAM of the STM32H753.

- STEP 3 : Output the data in RAM to a GPIO as fast as possible. We have 1 pin for data and 1 pin for clock. The data must be present on the GPIO before we activate the clock up and down. The goal is to reach at least 8MHz for this job, but reaching 16MHz would be great and the ultimate goal is to reach 30MHz (not sure it’s possible). To get those speeds, you need to optimize the code and know what you are doing, you cannot just use HAL_GPIO_WRITE.

Exact hardware that will be used to test your code is showed below. We also have a logic analyzer to help the debugging process and measure the final output speed. As mentioned before, this is just the first step of a much larger project. Please start your proposals with ***STM32*** to show that you read everything and please highlight some specific projects you may have done that may be similar to this one.

MCU (NUCLEO-H753ZI) -> https://www.digikey.ca/en/products/detail/stmicroelectronics/NUCLEO-H753ZI/21348937

MEMORY (QSPI FLASH 64MBIT W25Q64(Q)) -> https://www.digikey.ca/en/products/detail/adafruit-industries-llc/5633/16910843