pebble/third_party/jerryscript/targets/riot-stm32f4/README.md
2025-01-27 11:38:16 -08:00

96 lines
2.3 KiB
Markdown

### About
This folder contains files to run JerryScript on RIOT-OS with STM32F4-Discovery board.
### How to build
#### 1. Preface
1, Directory structure
Assume `harmony` as the path to the projects to build.
The folder tree related would look like this.
```
harmony
+ jerryscript
| + targets
| + riot-stm32f4
+ RIOT
```
2, Target board
Assume [STM32F4-Discovery with BB](http://www.st.com/web/en/catalog/tools/FM116/SC959/SS1532/LN1199/PF255417)
as the target board.
#### 2. Prepare RIOT-OS
Follow [this](https://www.riot-os.org/#download) page to get the RIOT-OS source.
Follow the [Inroduction](https://github.com/RIOT-OS/RIOT/wiki/Introduction) wiki site and also check that you can flash the stm32f4-board.
#### 3. Build JerryScript for RIOT-OS
```
# assume you are in harmony folder
cd jerryscript
make -f ./targets/riot-stm32f4/Makefile.riot
```
This will generate the following libraries:
```
/build/bin/release.riotstm32f4/librelease.jerry-core.a
/build/bin/release.riotstm32f4/librelease.jerry-libm.lib.a
```
This will copy one library files to `targets/riot-stm32f4/bin` folder:
```
libjerrycore.a
```
This will create a hex file in the `targets/riot-stm32f4/bin` folder:
```
riot_jerry.elf
```
#### 4. Flashing
```
make -f ./targets/riot-stm32f4/Makefile.riot flash
```
For how to flash the image with other alternative way can be found here:
[Alternative way to flash](https://github.com/RIOT-OS/RIOT/wiki/Board:-STM32F4discovery#alternative-way-to-flash)
#### 5. Cleaning
To clean the build result:
```
make -f ./targets/riot-stm32f4/Makefile.riot clean
```
### 5. Running JerryScript Hello World! example
You may have to press `RESET` on the board after the flash.
You can use `minicom` for terminal program, and if the prompt shows like this:
```
main(): This is RIOT! (Version: ****)
You are running RIOT on a(n) stm32f4discovery board.
This board features a(n) stm32f4 MCU.
```
please set `Add Carriage Ret` option by `CTRL-A` > `Z` > `U` at the console, if you're using `minicom`.
Help will provide a list of commands:
```
> help
```
The `test` command will run the test example, which contains the following script code:
```
print ('Hello, World!');
```