Move all '.cpp' files to '.c'. Rename comments from 'cpp' to 'c'. JerryScript-DCO-1.0-Signed-off-by: Roland Takacs rtakacs.u-szeged@partner.samsung.com JerryScript-DCO-1.0-Signed-off-by: Robert Sipka rsipka.uszeged@partner.samsung.com
About
This folder contains files to run JerryScript in mbed / FRDM-K64F board.
Installing yotta
You need to install yotta before proceeding. Please visit http://yottadocs.mbed.com/#installing-on-linux
Cross-compiler for FRDM-K64F
If you don't have any GCC compiler installed, please visit [this] (https://launchpad.net/gcc-arm-embedded/+download) page to download GCC 4.8.4 which was tested for building JerryScript for K64F.
How to build JerryScript
make -f targets/mbedk64f/Makefile.mbedk64f clean
make -f targets/mbedk64f/Makefile.mbedk64f jerry
JerryScript output files
Two files will be generated at targets/mbedk64f/libjerry
- libjerrycore.a
- libfdlibm.a
Building mbed binary
make -f targets/mbedk64f/Makefile.mbedk64f js2c yotta
Or, cd to targets/mbedk64f where Makefile.mbedk64f exist
cd targets/mbedk64f
yotta target frdm-k64f-gcc
yotta build
Build at once
Omit target name to build both jerry library and mbed binary.
make -f targets/mbedk64f/Makefile.mbedk64f
Flashing to k64f
make -f targets/mbedk64f/Makefile.mbedk64f flash
It assumes default mound folder is /media/(user)/MBED
If its mounted to other path, give it with TARGET_DIR variable, for example,
TARGET_DIR=/mnt/media/MBED make -f targets/mbedk64f/Makefile.mbedk64f flash
Or you can just copy targets/mbedk64f/build/frdm-k64f-gcc/source/jerry.bin
file to mounted folder.
When LED near the USB port flashing stops and MBED folder shows up on the
desktop(if you are using GUI), press RESET button on the board to execute
JerryScript led flashing sample program in js folder.
How blink sample program works
All .js files in js folder are executed, with main.js in first order.
sysloop() function in main.js is called periodically in every 100msec by
below code in main.c jerry_loop(), which calls js_loop() in
jerry_mbedk64f.c
minar::Scheduler::postCallback(jerry_loop)
.period(minar::milliseconds(100))
sysloop() then calls blink() in blink.js which blinks the LED in
every second.