忍者ブログ

明日の設計図

たまにロボットを考えるブログ・・・。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

コメント

現在、新しいコメントを受け付けない設定になっています。

大会ないけど、テンション>>モチベーション


↑漢字じゃないと、雰囲気でないな。(想像力を鍛えればいいのだ!)


ようやく、LCDを動かすところまで到達しました。

案外、サンプルがネットで見つからなかったのでとりあえずのプログラムです。

秋月のsc1602bs*bというやつ、sh7125をGDLにて。

ピン配置は、こんな感じ↓

#define lcd_rs  PE.DRL.BIT.B9
#define lcd_rw  PE.DRL.BIT.B10
#define lcd_en  PE.DRL.BIT.B11
#define lcd_db4 PE.DRL.BIT.B12
#define lcd_db5 PE.DRL.BIT.B13
#define lcd_db6 PE.DRL.BIT.B14
#define lcd_db7 PE.DRL.BIT.B15




こんな感じで初期化↓1msecのwaitと16usec(たぶん)のwaitでやります。




/*----------------------------------*/
/* Enable処理                       */
/* Data入力                         */
/*----------------------------------*/
void lcdEnable(unsigned char d)
{
  lcd_en = 0;
 
  lcd_rs  = ( d >>5 ) & 0x01;
  lcd_rw  = ( d >>4 ) & 0x01;
  lcd_db7 = ( d >>3 ) & 0x01;
  lcd_db6 = ( d >>2 ) & 0x01;
  lcd_db5 = ( d >>1 ) & 0x01;
  lcd_db4 = ( d  ) & 0x01;
 
  wait16(1);
 
  lcd_en = 1;

  wait16(1);
 
  lcd_en = 0;
}
/*----------------------------------*/
/* LCD初期化処理                 */
/*                                  */
/*----------------------------------*/
void initLcd(void)
{
  wait(16);//電源直後、安定まで待つ
  lcd_en=0;
  lcd_rs=0;
  lcd_rw=0;
 
  /*8bit_mode*/
  lcdEnable(0x03);
  wait(5);
 
  lcdEnable(0x03);
  wait16(10);
 
 
  lcdEnable(0x03);
  wait16(5);
 
  /*4bit_mode*/
  lcdEnable(0x02);
  wait16(5);
  
  /*2行mode*/
  lcdEnable(0x02);
  lcdEnable(0x08);
  wait16(5);
 
  /*off*/
  lcdEnable(0x00);
  lcdEnable(0x08);
  wait16(5);
 
  /*clear*/
  lcdEnable(0x00);
  lcdEnable(0x01);
  wait(2);
 
  /*entry*/
  lcdEnable(0x00);
  lcdEnable(0x06);
  wait16(5);
 
  /*on*/
  lcdEnable(0x00);
  lcdEnable(0x0c);
  wait16(5);
   
}


こんな感じで、一日が終わりそうです。
でもテンションは高いです。
嘘です。




まあ、がんばろう。
夏には何があろうとも、新型は作るので。

拍手[0回]

PR

コメント

お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード Vodafone絵文字 i-mode絵文字 Ezweb絵文字

プロフィール

HN:
Adel
年齢:
34
性別:
男性
誕生日:
1989/09/17
職業:
会社員
趣味:
モチベーション探し
自己紹介:
ロボットつくるのが夢

ブログ内検索

アクセス解析