Renesas
Renesas Electronics Corporation (TSE: 6723), the world's number one supplier of microcontrollers, is a premier supplier of advanced semiconductor solutions including microcontrollers, SoC solutions and a broad range of analog and power devices.
You are viewing an older revision! See the latest version
GR PEACH rev_B version information
Platform information¶
See Platform.
Jumper settings¶
JP# | description | default |
---|---|---|
JP1 | RST button directly connect to RZ/A1H | open |
JP2 | Update mbed CMSIS-DAP firmware | open |
JP3 | VBUS supply to USB Host/Function | open |
JP4 | short diode not to drop voltage | open |
JP5 | short diode not to drop voltage | open |
JP6 | short diode not to drop voltage | open |
Supported function map¶
mbed Libraries¶
Note: "Done" means that you can import it on the mbed on-line compiler.
Function | Support | merged to mbed-src | registered to mbed library | Note |
---|---|---|---|---|
AnalogIn | ✓ | Done | Done | - |
AnalogOut | - | - | - | RZ-A1H does not have this function. |
DigitalIn | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] DigitalIn(PinName pin) DigitalIn(PinName pin, PinMode mode) void mode(PinMode pull) |
DigitalOut | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] DigitalOut(PinName pin) DigitalOut(PinName pin, int value) |
DigitalInOut | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] DigitalInOut(PinName pin) DigitalInOut(PinName pin, PinDirection direction, PinMode mode, int value) void mode(PinMode pull) |
BusIn | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] BusIn(...) void mode(PinMode pull) |
BusOut | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] BusOut(...) |
BusInOut | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] BusInOut(...) void mode(PinMode pull) |
PortIn | - | - | - | Please use BusIn instead |
PortOut | - | - | - | Please use BusOut instead |
PortInOut | - | - | - | Please use BusInOut instead |
PwmOut | ✓ | Done | Done | The maximum period is 491us When you set a number greater than 491us, 491us is set. [Affected APIs] void period(float seconds) :max:4.91e-4 void period_ms(int ms) :ms<=0:1us , ms>=1:491us void period_us(int us) :max:491 The combination of the following pins are exclusively use. ・P4_6 or P4_7 ・P8_8 or P8_9 ・P8_10 or P8_11 ・P8_12 or P8_13 ・P8_14 or P8_15 [Affected APIs] PwmOut(PinName pin) The period of the following pins can be set to the same value. ・channel 1: P8_8,P8_9,P8_10,P8_11,P8_12,P8_13,P8_14,P8_15 ・channel 2: P10_0,P3_2,P4_4,P4_6,P4_7 [Affected APIs] PwmOut(PinName pin) void period(float seconds) void period_ms(int ms) void period_us(int us) |
InterruptIn | ✓ | Done | Done | Pull up and Pull down settings aren't supported because RZ/A1H doesn't have pull up/down for pins(signals). [Affected APIs] void mode(PinMode pull) The combination of the following pins are exclusively use. ・IRQ0:P1_0,P2_14,P4_8,P5_8,P6_8,P7_9,P8_2 or P9_1 ・IRQ1:P1_1,P2_15,P4_9,P6_9,P7_8,P8_3 or P11_15 ・IRQ2:P1_2,P1_8,P3_0,P4_10,P5_9,P6_3,P6_10 or P7_10 ・IRQ3:P1_3,P1_9,P4_11,P6_4,P6_11,P7_11 or P11_12 ・IRQ4:P1_4,P1_10,P3_3,P4_12,P6_1,P6_12 or P7_12 ・IRQ5:P1_5,P1_11,P2_0,P4_13,P6_0,P6_13,P7_13 or P8_7 ・IRQ6:P1_6,P2_12,P3_1,P3_9,P4_14,P5_6,P6_14 or P7_14 ・IRQ7:P1_7,P2_13,P4_15,P6_2 or P6_15 [Affected APIs] InterruptIn(PinName pin) |
Timer | ✓ | Done | Done | - |
TimeOut | ✓ | Done | Done | - |
Ticker | ✓ | Done | Done | - |
wait | ✓ | Done | Done | - |
time | ✓ | Done | Done | - |
Serial | ✓ | Done | Done | 5-bits format and 6-bits format are not supported. Because RZ/A1H does not support such a function. In the flow control, flow types using only either of CTS or RTS is not supported. Because RZ/A1H does not support. |
SPI | ✓ | Done | Done | - |
SPISlave | ✓ | Done | Done | - |
I2C | ✓ | Done | Done | - |
I2CSlave | ✓ | Done | Done | - |
CAN | - | - | - | - |
mbed official Libraries¶
Note: "Available" means that you can import it on the mbed on-line compiler.
Function | Support | Availability | Note |
---|---|---|---|
mbed RTOS | ✓ | Available | - |
LocalFileSystem | - | - | No plan to support. |
SDFileSystem | ✓ | Available | - |
USBDevice | ✓ | Available | - |
USBHost | ✓ | Available | - |
Ethernet | ✓ | Available | - |
EthernetInterface | ✓ | Available | - |
Other Libraries¶
Note: "Available" means that you can import it on the mbed on-line compiler.
Function | Support | Availability | Note |
---|---|---|---|
CMSIS-DSP(NEON) | ✓ | end of 2015/May | - |
Getting Started¶
Preparation¶
Install the USB serial communication driver¶
For Windows(R) user:
- Connect GR-PEACH and PC.
- After the mount GR-PEACH as "MBED" volume label, install this driver.
Add compiler for GR-PEACH¶
- The root folder of GR-PEACH mass storage drive includes "mbed.htm" .
- This file jumps to the site of GR-PEACH when double clicked.
- You can use mbed compiler for GR-PEACH after click at "Add to your compiler" button.
Build and Run¶
Let's blink LED¶
- Then launch the development environment from Compiler button.
- Import mbed_blinky.
- Click "Import Program" button.
- Create binary file to click the "Compile" button.
- When compile is finished, binary file is downloaded using browser function.
Copy this file to mbed drive.
For Window user: drag and drop.
For Mac user : Refer here - When GR-PEACH's reset button is pushed or reconnect USB cable, the program runs.
Blink LED smoothly¶
Edit main.cpp of mbed_blinky.
LED PWM
#include "mbed.h" PwmOut led(LED_RED); int main() { float crt = 1.0, delta = 0.04; led.period_ms(2); // 500Hz while (true) { led.write(crt); wait_ms(50); crt = crt + delta; if (crt > 1.0) { crt = 1.0; delta = -delta; } else if (crt < 0) { crt = 0; delta = -delta; } } }
Use A/D converter¶
Follow the procedure of "Let's blink LED". The program to import is below.
Import programAnalogIn-HelloWorld
Hello world program for mbed SDK AnalogIn API
Use Serial Peripheral Interface(SPI)¶
- Follow the procedure of "Let's blink LED". The program to import is below.
Import programSPI_HelloWorld_Mbed
SPI Hello World
- Before compile, edit main.cpp as below.
A part of main.cpp to delete
SPI spi(p5, p6, p7); // mosi, miso, sclk DigitalOut cs(p8);
A part of main.cpp to add
SPI spi(D11, D12, D13); // mosi, miso, sclk DigitalOut cs(D10);
Use I2C¶
- To pull up I2C signals, please close jumpers. Platform page shows which jumper is need to close.
- Follow the procedure of "Let's blink LED". The program to import is below.
Import programI2C_HelloWorld_Mbed
Hello World for I2C
- Before compile, edit main.cpp as below.
A part of main.cpp to delete
I2C i2c(p28, p27);
A part of main.cpp to add
I2C i2c(I2C_SDA, I2C_SCL);
Use microSD¶
- Follow the procedure of "Let's blink LED". The program to import is below.
During importing, the dialog appears.**DO NOT CHECK the "Update all libraries to the latest version".**
Import programSDFileSystem_HelloWorld
SD File System Hello World
- Before compile, edit main.cpp as below.
A part of main.cpp to delete
SDFileSystem sd(p5, p6, p7, p8, "sd"); // the pinout on the mbed Cool Components workshop board
A part of main.cpp to add
SDFileSystem sd(P8_5, P8_6, P8_3, P8_4, "sd");
Use Ethernet¶
- Follow the procedure of "Let's blink LED". The program to import is below.
Import programTCPSocket_HelloWorld
TCP Socket Hello World with Ethernet
- To specify MAC address, add fllowing function to main.cpp.
Specify MAC address
// set mac address void mbed_mac_address(char *mac) { mac[0] = 0x00; mac[1] = 0x02; mac[2] = 0xF7; mac[3] = 0xF0; mac[4] = 0x00; mac[5] = 0x00; }
Use GR-PEACH as USB Device¶
- Follow the procedure of "Let's blink LED". The program to import is below.
If you want to use a function other a mouse, please see USBDevice page.
Import programUSBMouse_HelloWorld
USBMouse Hello World
Use USB Host¶
- To supply VBUS, please close JP3.
- Follow the procedure of "Let's blink LED". The program to import is below.
If you want to use a function other a mouse, please see USBHost page.
Import programUSBHostMouse_HelloWorld
USBHostMouse Hello World
CMSIS-DAP firmware Update¶
0. Preparation
Download a firmware from the following URI.
- Latest version
grpeach_8mb_20150318.bin- support drag-and-drop writing on OS X Yosemite.
- Current version
grpeach_8mb_20141217.bin- This firmware is written in the current GR-PEACH rev.C.
- Connect GR-PEACH to PC
Please make a short-circuit at JP2 when you connect USB cable between GR-PEACH and PC.
- After the connection, it will appear as a disk called "CRP DISABLED".
If "mbed" appears, the short-circuit of JP2 doesn't succeed.
In this case, please re-try the previous item.
When GR-PEACH connected as "CRP DISABLED", JP2 can be opened during firmware updating. - Open the "CRP DISABLED" disk folder and delete the Firmware.bin. (Please check the following Note.)
- Copy the downloaded file to this drive. (Please check the following Note.)
Note
For Mac user: please check the following URL instead of step 3 and 4.
: Refer here
5. Disconnect between GR-PEACH and PC after copy is finished.
6. Reconnect GR-PEACH and PC.
7. When USB disk appears as "mbed", firmware update is finished.
Known issues¶
defects (問題)¶
No | module | description | status | preliminary | release date |
---|---|---|---|---|---|
0 | - | - | - | - | - |
issues (課題)¶
No | module | description | status | release date |
---|---|---|---|---|
1 | USBHost | support USBHost library (isochronous) | under development | end of 2015/Mar |
2 | - | Method of running programs on internal RAM | under development | end of 2015/Mar |
fixes (解決した問題)¶
No | dexcription | fixed date | mbed-library (mbed) | mbed-src-library (mbed-src) | mbed official libraries |
---|---|---|---|---|---|
0 | - | - | - | - | - |