Previous: 6.1.2.3. 文字の表示 |
Up: 6.1. シリアル液晶 |
Next: 6.2. FMラジオ |
サンプルプログラム |
i2c_st7032i_lib |
ST7032iはさまざまな機能がありますが、その都度インストラクションを送信するというのは大変ですし、プログラムもわかりにくくなります。そこで筆者はST7032i用のライブラリを作成しました。このサンプルは筆者の用意したST7032i用ライブラリの機能を実験するためのものです。回路図は図 12?15と同じです。
極力簡単にST7032iを扱えるようにするため、ライブラリを使用する際には、
#include “st7032i.h” |
としてヘッダをインクルードし、
ST7032i_Init(); |
として初期化関数を実行します。これだけでライブラリを使用したプログラミングができます。なおライブラリはI2C1の使用を前提としていますので、I2C2を使用する場合には該当する部分を書き換える必要があります。
命令は表 12?3の通りです。各関数内には必要な時間待ちも含めていますので別途時間待ちをする必要はありません。
表 12?3筆者が作成したST7032i用ライブラリの関数
void ST7032i_Init(void) |
ST7032iの初期化シーケンスを実行します。 |
void ST7032i_Command_Write(uint8_t Data) |
ST7032iにインストラクションを送信します。 |
void ST7032i_Data_Write(uint8_t Data) |
ST7032iにデータを送信します。 |
void ST7032i_Clear(void) |
表示をクリアしてカーソルをホームポジションに移動します。 |
void ST7032i_Return(void) |
カーソルをホームポジションに移動します。 |
void ST7032i_Increment(void) |
文字表示時にアドレスをインクリメントします。カーソルの移動方向が右方向になります。 |
void ST7032i_Decrement(void) |
文字表示時にアドレスをデクリメントします。カーソルの移動方向が左方向になります。 |
void ST7032i_Shift_Enable(void) |
文字表示時にカーソルを自動的に右又は左に1文字分移動します。 |
void ST7032i_Shift_Disable(void) |
文字表示時にカーソルを移動させません。 |
void ST7032i_Display_On(void) |
液晶画面にDDRAMの内容を表示させます。 |
void ST7032i_Display_Off(void) |
液晶画面の表示を消します。表示されていないだけでDDRAMの内容には影響ありません。 |
void ST7032i_Cursor_On(void) |
カーソルを表示します。 |
void ST7032i_Cursor_Off(void) |
カーソルを非表示にします。 |
void ST7032i_Cursor_Blink_On(void) |
カーソルを点滅させます。 |
void ST7032i_Cursor_Blink_Off(void) |
カーソルを点滅させません。 |
void ST7032i_Set_DDRAM(uint8_t address) |
DDRAMのアドレスを設定します。アドレスの値はHD44780互換です。 |
void ST7032i_Set_Contrast(uint8_t contrast) |
コントラストを設定します。アドレスは6ビットの範囲内の値(0?63)です。 |
void ST7032i_Icon_Set(uint8_t number) |
アイコンを表示します。アイコンは番号で指定します。 |
void ST7032i_Icon_Clear(uint8_t number) |
アイコンを消します。アイコンは番号で指定します。 |
void ST7032i_Icon_On(void) |
アイコンを表示します。 |
void ST7032i_Icon_Off(void) |
アイコンを非表示にします。 |
void ST7032i_Putchar(int8_t chardata) |
ST7032iに1文字分の文字データを送信して表示させます。 |
void ST7032i_cprintf(const int8_t[]) |
液晶に文字列を表示させます。 |
このサンプルプログラムでは、ターミナルから小文字又は数字を送信するとそのまま表示されますが、命令に対応させている大文字を送信すると、対応する命令が実行されます。命令と文字との対応関係はソースコードを参照してください。
Previous: 6.1.2.3. 文字の表示 |
Up: 6.1. シリアル液晶 |
Next: 6.2. FMラジオ |