IJFW - IchigoJamのBASICプログラムをメモリカード(MMCまたは互換カード)に保存したり読み出したりできるプログラム。メモリカードにファームウェアのファイルを置くだけで、電源ON時に自動的に書き換える機能も搭載(一応こちらがメイン)。LPC1114FN28専用。

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers I2CSlave2.cpp Source File

I2CSlave2.cpp

00001 #include "I2CSlave2.h"
00002 
00003 I2CSlave2::I2CSlave2(PinName sda, PinName scl) : I2CSlave(sda, scl) {
00004 }
00005 
00006 void I2CSlave2::address(int address, int mask) {
00007     int addr = (address & 0xFF) | 1;
00008     i2c_slave_address(&_i2c, 0, addr, 0);
00009     LPC_I2C->MASK0 = mask;
00010 }
00011 
00012 int I2CSlave2::read(char *data, int length) {
00013     return i2c_slave_read(&_i2c, data, length);
00014 }
00015 
00016 int I2CSlave2::read() {
00017     return i2c_byte_read(&_i2c, 0);
00018 }
00019 
00020 int I2CSlave2::write(const char *data, int length) {
00021     return i2c_slave_write(&_i2c, data, length);
00022 }
00023 
00024 int I2CSlave2::write(int data) {
00025     return i2c_byte_write(&_i2c, data);
00026 }
00027 
00028 // This function must be called immediately after receive().
00029 int I2CSlave2::addressFromMaster() {
00030     return LPC_I2C->DAT;
00031 }