FC2ブログ

迷走の果て・Tiny Objects

迷走する日々の覚え書きです。自分で分かってることは省略してますので、念のため。

16桁6行7セグメントLCDを試す(3)Arduinoにつないでみる

動作画像arduino

今まではPSoC1で試してたのですが、Arduinoにつないでみました。

とりあえずのスケッチです。PSoC1からの移植。
全セグメントを表示するだけです。急いだのでコメントは付けていません。
(う~む、スケッチを綺麗に貼り付ける方法がわからん^^;;)

void setup()
{

#define SYS_EN 0b100000000010
#define LCD_ON 0b100000000110
#define BIAS2_2 0b100001000000
#define BIAS2_3 0b100001001000
#define BIAS2_4 0b100001010000
#define BIAS3_2 0b100001000010
#define BIAS3_3 0b100001001010
#define BIAS3_4 0b100001010010

#define CS1 0
#define CS2 1
#define CS3 2
#define CS4 3
#define CS5 4
#define CS6 5
#define WR 6
#define DATA 7

pinMode(CS1 , OUTPUT);
pinMode(CS2 , OUTPUT);
pinMode(CS3 , OUTPUT);
pinMode(CS4 , OUTPUT);
pinMode(CS5 , OUTPUT);
pinMode(CS6 , OUTPUT);
pinMode(WR , OUTPUT);
pinMode(DATA , OUTPUT);

digitalWrite(CS1, HIGH);
digitalWrite(CS2, HIGH);
digitalWrite(CS3, HIGH);
digitalWrite(CS4, HIGH);
digitalWrite(CS5, HIGH);
digitalWrite(CS6, HIGH);
digitalWrite(WR, HIGH);
digitalWrite(DATA, HIGH);

for (int i = 1 ; i <= 6 ; i++) {
WriteCommand(i, SYS_EN);
WriteCommand(i, LCD_ON);
WriteCommand(i, BIAS2_4);
}
delay(500);
for (int i = 1 ; i <= 6 ; i++) {
for (int addr = 0 ; addr < 32 ; addr++) {
WriteData(i, addr, 0b0000);
}
}
delay(500);
for (int i = 1 ; i <= 6 ; i++) {
for (int addr = 0 ; addr < 32 ; addr++) {
WriteData(i, addr, 0b1111);
}
}
}

void loop()
{

}

void WriteData(int line, int addr , int data)
{
int bitdata = 0x1400 | (addr << 4) | data ;
CS_LOW(line);
for (int i = 1 ; i <= 13 ; i++) {
if ((bitdata & 0x1000) == 0) {
digitalWrite(DATA, LOW);
}
else {
digitalWrite(DATA, HIGH);
}
bitdata <<= 1;
digitalWrite(WR, LOW);
digitalWrite(WR, HIGH);
}
CS_HIGH(line);
}

void WriteCommand(int line, int bitdata)
{
CS_LOW(line);
for (int i = 1 ; i <= 12 ; i++) {
if ((bitdata & 0x0800) == 0) {
digitalWrite(DATA, LOW);
}
else {
digitalWrite(DATA, HIGH);
}
bitdata <<= 1;
digitalWrite(WR, LOW);
digitalWrite(WR, HIGH);
}
CS_HIGH(line);
}

void CS_HIGH(int line)
{
switch (line) {
case 1: digitalWrite(CS1, HIGH);
break;
case 2: digitalWrite(CS2, HIGH);
break;
case 3: digitalWrite(CS3, HIGH);
break;
case 4: digitalWrite(CS4, HIGH);
break;
case 5: digitalWrite(CS5, HIGH);
break;
case 6: digitalWrite(CS6, HIGH);
break;
default: break;
}
}
void CS_LOW(int line)
{
switch (line) {
case 1: digitalWrite(CS1, LOW);
break;
case 2: digitalWrite(CS2, LOW);
break;
case 3: digitalWrite(CS3, LOW);
break;
case 4: digitalWrite(CS4, LOW);
break;
case 5: digitalWrite(CS5, LOW);
break;
case 6: digitalWrite(CS6, LOW);
break;
default: break;
}
}
関連記事
スポンサーサイト

コメント

コメントの投稿

管理者にだけ表示を許可する

トラックバック

この記事へのトラックバックURL
https://edycube.blog.fc2.com/tb.php/884-adb8996e

 | HOME | 

文字サイズの変更

プロフィール

edy

最新記事一覧(サムネイル画像付き)

Ali でお買い物:Infinity Mirror 2019/06/22
M5Stack再び 2019/06/22
Anker PowerCore II 10000 2019/06/14
店の電飾 2019/05/22
OPENSCOPE MZ(5)OpenScope MZ Reference Manual 2019/05/06
OPENSCOPE MZ(4)スイッチのチャタリング 2019/05/06
OPENSCOPE MZ(3)サブノートで使えなくなった。 2019/04/30
GL04PにSIMを入れる。 2019/04/30
OPENSCOPE MZ(2) 2019/04/14
OPENSCOPE MZ(1)アクリルケース組み立て編 2019/04/06

全記事表示リンク

全ての記事を表示する

リンク

このブログをリンクに追加する

月別アーカイブ

06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  03  02  12  11  10  09  07  05  04  03  04  03  01  12  11  10  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  04  02  01  12  10  09  08  07  06  05  04  03  02  01  12  11  10  09  08  07  06  05  03  02  01  12  11  10  09  08  07  06  05  04  03  02  01  12  10  09  08  07  06  05  04  03  02  01 

カテゴリ

プログラミング (0)
freescale (1)
AVR (3)
テルミン (16)
緊急警報放送 (3)
78K (1)
PSoC (295)
地上デジタル放送 (2)
電子工作 (482)
HX711 (2)
ACS712 (6)
DDS (3)
数学 (6)
パソコン (16)
PLC (14)
未分類 (42)
ブログ関係 (20)
スカイプ (37)
ロボット (1)
LTSpice (8)
OCXO (0)
arduino (33)
maxima (1)
フランクリン発振回路 (3)
GPS (3)
DTMF (1)
Linux (1)
KOMAINO (7)
Android (1)
obniz (7)
M5Stack (1)
Analog Discovery (1)

タグリスト

最近のコメント

最近のトラックバック

メールフォーム

名前:
メール:
件名:
本文:

検索フォーム

アクセス

RSSリンクの表示

ブログリンク

FC2Ad

まとめ

Template by たけやん