Lazurite 日本語リファレンス



LazuriteはC言語で開発されたArduino互換機です。
※がついている関数はArduinoと互換性が無い関数が含まれていますので注意してください。

リファレンスのページは随時更新していきます。

 

setup関数とloop関数

- setup()
- loop ()

C言語の基本

- if... else
- for文
- switch/case/default
- while
- do .. while
- continue
- return
- goto
- #define
- #include

データ型

void
char
unsigned char
int
unsigned int
long
unsigned long
short
unsigned short
float
double
struct
enum
typedef
uint8_t
int8_t
uint16_t
int16_t
uint32_t
int32_t

 

GPIO

GPIOはGereneral Purpose Input Output(汎用入出力端子)の略で、ほとんどのマイコンの端子がこの機能を搭載しています。 pinMode関数によって端子を入力モードにすると、digitalRead関数で端子の状態を読み出すことができます。また、出力モードのときは端子からHIGH/LOWレベルを出力することができます。 このモードで読み取ったり、出力したりできるのは、HIGHまたはLOWのみです。


デジタル入出力関数


アナログ入出力関数


時間


Math

  • - lowByte()
  • - highByte()
  • - bitRead()
  • - bitWrite()
  • - bitSet
  • - bitClear()

外部割込み


割込み有効/無効設定


データFlash※

データFlashは、データ用 Flashメモリへのデータ書き込み/読み出しを行う関数です。

項目

単位

メモリ容量

2セクタ x 512ワード x 16bit

消去単位

1セクタ (512ワード)

書込み/
読み出し単位

1ワード(16bit)

本関数群はLazurite専用の関数です。

 

文字列操作関数

 

非同期シリアル通信 Serial

非同期シリアル通信 Serialに関連するライブラリです。PCとのインタフェースや、UARTに対応した周辺機器と通信することが出来ます。

電源電圧測定

電源電圧を測定する関数です
voltage_check(level)

ライブラリ


SPI (Serial Peripheral Interfare)※

I2Cインタフェース※

SubGHz(920MHz) ※

SubGHzはIEEE802.15.4eのプロトコルで920MHzの無線通信を行うための関数群です。SubGHz(920MHz)に関する技術資料はこちらを参照してください。

SUBGHZ_MSG SubGHz.init();
SUBGHZ_MSG SubGHz.begin(ch, panid, rate, txPower);
SUBGHZ_MSG SubGHz.close();
SUBGHZ_MSG SubGHz.send(panid, dstAddr, *data, length, *callback);
SUBGHZ_MSG SubGHz.send64be(*dstAddr, *data, length, *callback);
SUBGHZ_MSG SubGHz.send64le(*dstAddr, *data, length, *callback);
SUBGHZ_MSG SubGHz.rxEnable(*callback);
SUBGHZ_MSG SubGHz.rxDisable();
short SubGHz.readData(*data, max_size);
uint16_t SubGHz.getMyAddress(void);
void SubGHz.setMyAddress(myAddr);
SUBGHZ_MSG SubGHz.getMyAddr64(*myAddr);
void SubGHz.getStatus(*tx, *rx)
SUBGHZ_MSG SubGHz.setPromiscuous(bool on);
SUBGHZ_MSG SubGHz.setAckReq(bool on);
SUBGHZ_MSG SubGHz.setBroadcastEnb(bool on);
SUBGHZ_MSG SubGHz.getSendMode(*param);
SUBGHZ_MSG SubGHz.setSendMode(*param);
SUBGHZ_MSG SubGHz.setKey(*key);
void SubGHz.msgOut(SUBGHZ_MSG msg) ;
void SubGHz.decMac(*mac,*raw,raw_len) ;

サンプルプログラムの解説

モーター制御ライブラリ

ML620Q504の多機能タイマー(FTM0~FTM3)を使用し、2種類のモーターを制御するためのライブラリです。HardwareHBridge、HardwareServo共に1usecの時間精度でパルス幅を制御することができ、また割込み処理などによる影響で信号幅がずれるようなことが無いために、モータ制御に最適な関数です。analogWrite関数も同じ多機能タイマーを使用するため、排他使用となるので注意してください。

モーター制御関連(H-Bridge/Servo)※
hsv.init(num, period)
hsv.attach(ch,pin)
hsv.detach(pin, level)
hsv.start()
hsv.stop()
hsv.close()
hsv.write(ch,time)
hsv.update()

タイマー割込み用ライブラリ(MsTimer2)

ミリ秒(msec)単位でタイマー割込みを発生させることができるタイマー割込み用ライブラリです。
使用するためには、MsTimer2のライブラリを有効にしてください。


timer2.set(ms,callback)
timer2.start()
timer2.stop()
timer2.wait_event_timeout(*flag, ms)
⇒(2017.3.29)次回の更新時にtimer2.wait_event_timeout関数は無くなります。代わりに、ライブラリではなく本体に組み込まれて、wait_event_timeout(*flag,ms)で動作するようになります。また、タイマーはtimer2を使用するのではなく、sleep関数で使用しているタイマーを共用して使用します。

SDカードライブラリ(SD)

SDカードを使用できるライブラリです。

SD

RTCライブラリ(RTC)

RTCを使用するためのライブラリです。

RTC

デバック用ライブラリ(libdebug)

デバックを簡単にするためのライブラリ(マクロ)です。

libdebug