2016年6月27日 星期一

DIY - PIC24:PIC24FJ64GA008 ILI9341 和 LCD1602 顯示(二十二)

DIY - PIC24:PIC24FJ64GA008 ILI9341 和 LCD1602 顯示(二十二): 

由於在 2.8吋 TFT LCD 液晶屏上使用了很多 I/O 接口(8 條數據 + 6條控制 = 14條 I/O),ILI9341 的 LCD 需要使用到 PMD0 ~ PMD7 (RE0 ~ RE7)的 I/O 接口,原來的 LCD1602 便要更改 I/O 接口,更改後,LCD1602 可以作為偵測(Debug)之用。

PIC24FJ64GA008 ILI9341 和 LCD1602 雙 LCD 顯示
原來的 LCD1602 是 4條資料引腳 D4-D7 MSB(Most Significant Bit)直接接到 MCU 的 PortE (RE4 – D4,RE5 – D5,RE62 – D6,RE7 – D7),LCD LSB(Least Significant Bit)的 4條資料引腳 D0-D3 會空接,而控 LCD 制引腳接到 MCU 的 PortE (RE0 - RS,RE1 - RW,RE2 - E)。

新的 LCD1602 會改成 4條資料引腳 D4-D7 MSB(Most Significant Bit)直接接到 MCU 的 PortG (RG0 – D4,RG1 – D5,RG2 – D6,RG3 – D7),LCD LSB(Least Significant Bit)的 4條資料引腳 D0-D3 會空接,而控 LCD 制引腳接到 MCU 的 PortD (RD0 - RS,RD1 - RW,RD2 - E)。

Microchip PIC24FJ64GA008 LCD1602 新 xlcd.h 文件:
#define LOWER       // Lower 4bit Mode D0-D3 Connected to LCD D4-D7

     #define  DATA_PORT               LATG            // Port for LCD data
     #define  TRIS_DATA_PORT    TRISG

     #define  RS_PIN             LATDbits.LATD0    // LCD RS signal
     #define  RW_PIN           LATDbits.LATD1    // LCD R/W signal
     #define  E_PIN               LATDbits.LATD2    // LCD E signal

     #define  TRIS_RS               TRISDbits.TRISD0
     #define  TRIS_RW             TRISDbits.TRISD1
     #define  TRIS_E                 TRISDbits.TRISD2

2016年 6月 27日 天氣報告
氣溫:31.1度 @ 20:30
相對濕度:百分之 78%
天氣:微雨

沒有留言:

張貼留言