閲覧総計:27787  (本日:1  昨日:0)



【目次】(項目をクリックすると飛べます)


LCD表示法(24FJ64)

MikroC dsPICには液晶ディスプレイ(LCD:Liquid Crystal Display)の制御関数が
多数用意されている。簡単なプログラムで情報をLCDに表示させる事が出来る。 08/03/17

LCDは、東京秋葉原の秋月電子で販売されている16文字×2行表示のLCD
SC1602BS-B(-SO-GS-K) 550円 を用いた。
http://akizukidenshi.com/catalog/items2.php?p=1&q="P-00040"

24FJ64GA002は3V駆動であるのに対し、一般的LCDは5Vである。
「電子工作etc」さんのページ情報を参考に
http://www8.plala.or.jp/InHisTime/page021.html#LABO-020
PWMとチャージポンプで5Vに昇圧し、LCDの電源とした。

P1010611.JPG

/**
* 24F64の稼働テスト LCDの稼働確認
*
* PIC24FJ64GA002 450円
* http://akizukidenshi.com/catalog/items2.php?q=%22I-02000%22&s=score&p=1&r=1&page=
* LCD: SC1602BS-B(-SO-GS-K) 550円
* http://akizukidenshi.com/catalog/items2.php?p=1&q="P-00040"
* PWM出力: RB6(RP6)
* LED: RB5
*
*Clock: 8.0MHz 内蔵発振器使用
*電源:乾電池2本(3V)
*Device Flags:
*_IESO_OFF _FNOSC_FRC _FCKSM_CSDCMD _OSCIOFNC_OFF _POSCMOD_NONE
*_JTAGEN_OFF _GCP_OFF _GWRP_OFF _BKBUG_OFF _COE_OFF _ICS_PGx1 _FWDTEN_OFF
*
*_IESO_OFF 2速度スタートアップ無効
*_FNOSC_FRC クロックは内蔵オシレータを利用(8MHz)
*_FCKSM_CSDCMD 動作中のクロック切り替え&監視OFF
*_OSCIOFNC_OFF RA3はI/Oとして利用 _POSCMOD_NONE 主発信機無効
*_JTAGEN_OFF  JTAG無効    _GCP_OFF  コードプロテクト無効
*_GWRP_OFF  プログラムメモリ書込み禁止 _BKBUG_OFF デバッグモードにリセット
*_COE_OFF  Clip-onエミュレーション無効
*_ICS_PGx1  ICSP書き込みにPGC1/PGD1を使う FWDTEN_OFF  ウォチドック無効
*
* MikroC dsPIC v4.0.0.0
* コンパイルサイズ: 2,112Byte (6,000Byte以下なら無料利用)
*/
void main()
{
    unsigned int pwm_period1;

    PORTB  = 0b0000000000000000; //PortBの中身ををきれいにする
    TRISB  = 0b0000000000000000; //PortB 16個全て0:出力に設定
    ADPCFG = 0b1111111111111111; //全ピンをデジタルで使用
    //RP6ピンにOC1機能(PWM出力)18(=0b10010)を割付
    RPOUTR3bits.RP6R4 = 1;
    RPOUTR3bits.RP6R3 = 0;
    RPOUTR3bits.RP6R2 = 0;
    RPOUTR3bits.RP6R1 = 1;
    RPOUTR3bits.RP6R0 = 0;

    //PWMのチャージポンプでLCDに5V電源を供給
    //参考ページ:http://www8.plala.or.jp/InHisTime/page021.html#LABO-020
    pwm_period1 = Pwm_Init(10000, 1, 1, 2); //PWM周期 10KHzに設定
    Pwm_Set_Duty(pwm_period1 / 2, 1); //PWM Duty50%に設定
    Pwm_Start(1); //PWMスタート
    Delay_ms(100); //チャージポンプ充電に100ミリ秒(=0.1秒)待つ

    //Lcd_Custom_Config(*data_port, db3, db2, db1, db0, *ctrl_port, rs, rw, en)
    Lcd_Custom_Config(&PORTB, 15, 14, 13, 12, &PORTB, 11, 10, 9);
    Lcd_Custom_Cmd(LCD_CURSOR_OFF);
    Lcd_Custom_Out(1, 1, "ChargePump");
    Lcd_Custom_Out(2, 1, "PIC24FJ64GA002");
    
    LATBbits.LATB5 = 1; //稼働確認用LED ON

    while (1)
    {
    }
}



★この情報は役に立ちましたか?

選択肢 投票
はい 107  
普通 60  
いいえ 61  

接続しないLCDデータピンの処理

LCD 4ビット接続の際、PICに接続しない4つのピン(Data0-3ピン)は、GNDに接続するのではなく
無接続にしておく方が良いそうです。
今回は、無接続にしました。
(参考とした情報)
↓液晶表示モジュールを4ビットモードで使ったときの空きピン処理
http://www.oct.zaq.ne.jp/i-garage/trbl/lcd4bit.htm



★この情報は役に立ちましたか?

選択肢 投票
はい 1  
普通 1  
いいえ 0  

添付ファイル: fileP1010611.JPG 1879件 [詳細]