Quantcast
Channel: JH7UBCブログ
Viewing all articles
Browse latest Browse all 440

PIC16F1827 AQM0802A表示テスト

$
0
0
 I2C LCD AQM0802Aの表示は、基本的にPIC12F1822の場合と同じですが、PIC16F1827は、MSSPモジュールを2個内蔵していますので、SSP1とSSP2のどちらを使うのか指定する必要があります。

 今回は、SSP1を使いますので、I2Cの初期化は、
 
void I2C_init(){
     SSP1CON1 = 0x28;  //I2C Master Mode
     SSP1STATbits.SMP = 1;  //標準速度)100KHz)
     SSP1ADD = 0x4F;
}
とし、スタートコンディションは、

 void I2C_start(){
     SSP1CON2bits.SEN = 1;
     while(SSP1CON2bits.SEN);
}

ストップコンディションは

void I2C_stop(){
     SSP1IF = 0;
     SSP1CON2bits.PEN = 1;
     while(SSP1CON2bits.PEN);
     SSP1IF = 0;
}

I2Cへの8bitdataの送信は

void I2C_write(unsigned char dat){
     SSP1IF = 0;
     SSP1BUF = dat;
     while(!SSP1IF);
}

となります。
LCD関係の関数は同じです。

回路図です。プルアップ抵抗は、AQM0802Aモジュールに内蔵されていますので、つけていません。

イメージ 1

 ブレッドボードです。

イメージ 2



Viewing all articles
Browse latest Browse all 440

Trending Articles