Difference between revisions of "IoTGateway/BSP/FreeRTOS"

From ESS-WIKI
Jump to: navigation, search
Line 9: Line 9:
 
It can be search by board model or imx processor, the latest SDK package available for imx8m-board is EVK-MIMX8MQ.
 
It can be search by board model or imx processor, the latest SDK package available for imx8m-board is EVK-MIMX8MQ.
  
= 2.setup the cross compiler =
+
= 2.Setup the cross compiler =
  
 
Download and run the installer from launchpad.net/gcc-arm-embedded. This is the actual toolset (in other words, compiler,linker, and so on).
 
Download and run the installer from launchpad.net/gcc-arm-embedded. This is the actual toolset (in other words, compiler,linker, and so on).
Line 25: Line 25:
 
To build an example application, follow these steps.
 
To build an example application, follow these steps.
  
#
+
1.Change the directory to the example application project directory, which has a path similar to the following:          <install_dir>/boards/<board_name>/<example_type>/<application_name>/armgcc For this example, the exact path is: <install_dir>/boards/evkmimx8mq/demo_apps/hello_world/armgcc
  
Change the directory to the example application project directory, which has a path similar to the following: <install_dir>/boards/<board_name>/<example_type>/<application_name>/armgcc For this example, the exact path is: <install_dir>/boards/evkmimx8mq/demo_apps/hello_world/armgcc
+
2.Run the build_debug.sh script on the command line to perform the build. The output is shown in this figure:<br/>chmod u+x build_debug.sh<br/>./build_debug.sh
 
 
#
 
 
 
Run the build_debug.sh script on the command line to perform the build. The output is shown in this figure:
 
 
 
chmod u+x build_debug.sh
 
 
 
./build_debug.sh
 
  
 
-- BUILD_TYPE: debug -- Configuring done -- Generating done -- Build files have been written to: /home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/armgcc [ 3%] Building C object CMakeFiles/freertos_hello.elf.dir/home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/freertos_hello.c.obj [ 7%] Building C object CMakeFiles/freertos_hello.elf.dir/home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/pin_mux.c.obj
 
-- BUILD_TYPE: debug -- Configuring done -- Generating done -- Build files have been written to: /home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/armgcc [ 3%] Building C object CMakeFiles/freertos_hello.elf.dir/home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/freertos_hello.c.obj [ 7%] Building C object CMakeFiles/freertos_hello.elf.dir/home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/pin_mux.c.obj
Line 47: Line 39:
 
Connect the development platform to your PC via USB cable between the USB-UART connector and the PC USB connector.
 
Connect the development platform to your PC via USB cable between the USB-UART connector and the PC USB connector.
  
1.Open the terminal application on the PC, such as PuTTY or TeraTerm, and connect to the debug serial port number. Configure the terminal with these settings: a. 115200 baud rate, depending on your board (reference BOARD_DEBUG_UART_BAUDRATE variable in board.h file) b. No parity c. 8 data bits d. 1 stop bit
+
1.Open the terminal application on the PC, such as PuTTY or TeraTerm, and connect to the debug serial port number. Configure the terminal with these settings: <br/>&nbsp; a. 115200 baud rate, depending on your board (reference BOARD_DEBUG_UART_BAUDRATE variable in board.h file)<br/>&nbsp; b. No parity <br/>&nbsp;&nbsp;c. 8 data bits <br/>&nbsp; d. 1 stop bit
  
 
2.Copy the compiled freertos_hello.elf to emmc's first partition
 
2.Copy the compiled freertos_hello.elf to emmc's first partition
Line 53: Line 45:
 
3.Start the demo under uboot
 
3.Start the demo under uboot
  
U-Boot > fatload mmc 0:0 0x7e0000 freertos_hello.bin
+
&nbsp; U-Boot > fatload mmc 0:0 0x7e0000 freertos_hello.bin
  
U-Boot > bootaux 0x7e0000
+
&nbsp; U-Boot > bootaux 0x7e0000

Revision as of 14:28, 26 February 2020

Set up imx8 cortex m4 MCUxpress SDK environment

1.Download the SDK

Download the SDK package according to the model of the chip or board from the following website

https://mcuxpresso.nxp.com/

It can be search by board model or imx processor, the latest SDK package available for imx8m-board is EVK-MIMX8MQ.

2.Setup the cross compiler

Download and run the installer from launchpad.net/gcc-arm-embedded. This is the actual toolset (in other words, compiler,linker, and so on).

https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads

1.It is best to download the latest version cross-compiler gcc-arm-none-eabi-9-2019-q4-major-x86_64-linux.tar.bz2 from the site and decompression it to get the directory gcc-arm-none-eabi-9-2019-q4-major.

2.Create a new system environment variable and name it ARMGCC_DIR.

The value of this variable should point to the Arm GCC Embedded tool chain installation path. For this example, the path is: $ export ARMGCC_DIR=/work/platforms/tmp/gcc-arm-none-eabi-9-2019-q4-major $ export PATH= $PATH:/work/platforms/tmp/gcc-arm-none-eabi-9-2019-q4-major/bin

3.Compile the demo code

To build an example application, follow these steps.

1.Change the directory to the example application project directory, which has a path similar to the following:          <install_dir>/boards/<board_name>/<example_type>/<application_name>/armgcc For this example, the exact path is: <install_dir>/boards/evkmimx8mq/demo_apps/hello_world/armgcc

2.Run the build_debug.sh script on the command line to perform the build. The output is shown in this figure:
chmod u+x build_debug.sh
./build_debug.sh

-- BUILD_TYPE: debug -- Configuring done -- Generating done -- Build files have been written to: /home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/armgcc [ 3%] Building C object CMakeFiles/freertos_hello.elf.dir/home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/freertos_hello.c.obj [ 7%] Building C object CMakeFiles/freertos_hello.elf.dir/home/jinmin/nvme/imx8/mcu/boards/evkmimx8mq/rtos_examples/freertos_hello/pin_mux.c.obj

< skip--line >

[100%] Linking C executable debug/freertos_hello.elf [100%] Built target freertos_hello.elf

4.Run the demo application

Connect the development platform to your PC via USB cable between the USB-UART connector and the PC USB connector.

1.Open the terminal application on the PC, such as PuTTY or TeraTerm, and connect to the debug serial port number. Configure the terminal with these settings:
  a. 115200 baud rate, depending on your board (reference BOARD_DEBUG_UART_BAUDRATE variable in board.h file)
  b. No parity
  c. 8 data bits
  d. 1 stop bit

2.Copy the compiled freertos_hello.elf to emmc's first partition

3.Start the demo under uboot

  U-Boot > fatload mmc 0:0 0x7e0000 freertos_hello.bin

  U-Boot > bootaux 0x7e0000