'$prog &HFF , &H62 , &HD9 , &HFF 'ヒューズ設定。(ATmega328P工場出荷状態) ' ' ************************************************ ' * 0.96インチ 128x64ドット 有機ELディスプレイ * ' * OLED (SSD1306) 2台接続 テスト・プログラム * ' * O-Family 2019. 9.20 * ' ************************************************ ' '$regfile = "m328pdef.dat" '使用するAVRを設定。 $regfile = "m88pdef.dat" '使用するAVRを設定。 $crystal = 16000000 'AVRクロックを設定。 ' Config Clockdiv = 1 'AVRの動作クロックを8MHzに変更する。 ' $hwstack = 64 'ハードウェア・スタックの容量を設定。 $swstack = 32 'ソフトウェア・スタックの容量を設定。 $framesize = 24 'フレーム領域の容量を設定。 ' ' * I2Cバスの初期設定 * ' Const I2c_select = 0 'I2Cインターフェイスの選択。(0:ソフトウェアI2C , 1:ハードウェアTWI) ' #if I2c_select = 0 'ソフトウェアI2Cの場合。 Config Scl = Portd.2 'I2CバスのSCLラインを接続するポートピンを設定する。(任意のポート) Config Sda = Portd.3 'I2CバスのSDAラインを接続するポートピンを設定する。(任意のポート) Config I2cdelay = 1 'ソフトウェア I2CのSCLクロック速度を設定する。 I2cinit 'I2Cバスを初期化する。 #else 'ハードウェアTWIの場合。 $lib "i2c_TWI.LBX" 'ハードウェアTWIのライブラリを組み込む。 Config Scl = Portc.5 'I2CバスのSCLラインを接続するポートピンを設定する。 Config Sda = Portc.4 'I2CバスのSDAラインを接続するポートピンを設定する。 Config Twi = 400000 'TWIクロック速度。(400KHz) I2cinit 'I2Cバスを初期化する。 #endif ' ' OLEDコントローラの初期設定 * ' Dim _contrast As Byte 'OLEDのコントラスト設定値。[0-255] Dim I2c_addr As Byte 'I2Cのスレーブ・アドレス選択。[&H78 or &H7A] ' Const Ssd1306_rotate = 1 '画面の回転。(接続ケーブルが下側=0, 上側=1) $lib "glcdSSD1306-I2C_V2x2.lib" 'SSD1306-I2Cの機能追加版ライブラリ(2パネル用)を組み込む。 Config Graphlcd = Custom , Cols = 128 , Rows = 64 , Lcdname = "SSD1306" 'OLEDの設定。 ' I2c_addr = &H78 'デバイス[1]を選択する。 Cls 'OLEDの表示をすべて消去。 I2c_addr = &H7A 'デバイス[2]を選択する。 Cls 'OLEDの表示をすべて消去。 ' ' * OLED表示テストプログラム * ' Setfont Font8x8tt '8dotサイズのフォントを設定する。 ' I2c_addr = &H78 'デバイス[1]を選択する。 Lcdat 1 , 1 , "BASCOM-AVR" '通常の文字表示。 Lcdat 2 , 10 , "1995-2015" '通常の文字表示。 Lcdat 3 , 5 , "MCS Electronics" , 1 '反転表示。 Lcdat 5 , 1 , " Device [1] " , 2 '実線のアンダーライン。 Lcdat 7 , 1 , " Device [1] " , 3 '点線のアンダーライン。 ' I2c_addr = &H7A 'デバイス[2]を選択する。 Lcdat 1 , 1 , "BASCOM-AVR" '通常の文字表示。 Lcdat 2 , 10 , "1995-2015" '通常の文字表示。 Lcdat 3 , 5 , "MCS Electronics" , 1 '反転表示。 Lcdat 5 , 1 , " Device [2] " , 2 '実線のアンダーライン。 Lcdat 7 , 1 , " Device [2] " , 3 '点線のアンダーライン。 End ' ' * フォント・データ * ' $include "font8x8TT.font" 'フォント・ファイルを組み込む。