- Kinakailangan ang Mga Bahagi:
- Graphical LCD:
- Ipinapakita ang isang Imahe sa Graphical LCD gamit ang 8051:
- Paliwanag sa Circuit:
- Paliwanag sa Programming:
Sa aming pang-araw-araw na buhay, nakakakita kami ng maraming uri ng mga aparato para sa pagpapakita ng Teksto, Mga Imahe at Graphics. Ang mga LCD ay isa sa pinakatanyag na Display Device sa Electronics at ginagamit sa halos lahat ng mga proyekto na nagpapakita ng ilang uri ng impormasyon. Maraming uri ng LCD na ginagamit sa Mga Elektronikong Proyekto. Gumamit na kami ng 16X2 LCD sa marami sa aming mga proyekto at gumamit din ng TFT LCD kasama ng Arduino. Maaari mong mahanap ang lahat ng aming proyekto na nauugnay sa 16X2 LCD sa pamamagitan ng pagsunod sa link na ito, kasama ang interfacing sa 8051, AVR, Arduino at marami pa.
Sa tutorial na ito ay gagawin namin ang Graphic LCD interfacing sa 8051 microcontroller. Sa proyektong ito, ipapakita namin kung paano Magpakita ng isang Imahe sa Graphical LCD (GLCD).
Kinakailangan ang Mga Bahagi:
- Graphical LCD
- AT89c52 8051 Microcontroller
- 7805 boltahe regulator
- 1000uf capacitor
- 10 uF capacitor
- 10K risistor
- 10K POT
- Crystal Oscillator 12 MH
- Nag-uugnay sa kawad
- Lupon ng Tinapay
- Nag-strip si Burg ng lalaki
- Supply ng kuryente
- LED
- 220 Ohm risistor
- 1K risistor
Graphical LCD:
Ang isang simpleng 16x2 LCD ay may 16 na pin ngunit ang Graphical LCD ay may 20 pin. Ang paglalarawan ng pin ay ibinibigay sa ibaba ayon sa datasheet nito:
Pin No. | Pangalan ng Pin | Paglalarawan | Pag-andar |
1 | VSS | Lupa | 0 Bolta |
2 | VDD | Power Supply | 5 Bolta |
3 | V0 | Pag-aayos ng Contrast ng LCD | |
4 | Ang RS | Pagpili ng Command / data Rehistro | RS = 0: Pagpili ng Command at RS = 1: Pagpili ng Data |
5 | R / W | Basahin / Isulat ang Rehistro | R / W = 0: Sumulat ng Pinili at R / W = 1: Basahin ang Seleksyon |
6 | E | Paganahin ang Signal | |
7 | DB0 | Data input / output pin (DB0-DB7) | 8 Bit (DB0-DB7) |
8 | DB1 | ||
9 | DB2 | ||
10 | DB3 | ||
11 | DB4 | ||
12 | DB5 | ||
13 | DB6 | ||
14 | DB7 | ||
15 | CS1 | Piliin ang Chip | CS1 = 1, Chip Select Signal para sa IC1 |
16 | CS2 | Piliin ang Chip | CS2 = 1, Chip Select Signal para sa IC2 |
17 | RST | I-reset | I-reset ang GLCD |
18 | VEE | Negatibong Boltahe para sa LCD Driver | |
19 | A | Back light LED | 5 Bolta |
20 | K | Back light LED | Lupa |
Ipinapakita ang isang Imahe sa Graphical LCD gamit ang 8051:
Upang maipakita ang isang Imahe sa Graphical LCD, kailangan muna naming i-convert ang imaheng iyon sa Assembly Code, upang maunawaan at mabasa ito ng 8051 Microcontroller. Kaya kailangan nating sundin ang mga sumusunod na Hakbang para sa Pag-convert ng Imahe sa HEX code:
Hakbang 1: Una kailangan naming mag-download ng isang application na mag-convert ng Imahe (format na BMP) sa Assembly Code. Kaya i-download ang Application ng Conversion ng Imahe ng BMP2ASM mula sa link na ito, Mag-right click sa link at i-click ang I-save ang link bilang…
Hakbang 2: Pagkatapos, piliin ang imahe na nais mong ipakita sa Graphical LCD at i- convert ito sa BMP, (kung wala ito sa format na BMP) gamit ang anumang application tulad ng MS Paint, Photoshop atbp O maaari kang makahanap ng maraming online website para sa conversion ng format ng Imahe. Mayroon kaming sa ibaba ng imahe ng BMP, na may sukat na 128x64:
Hakbang 3: Ngayon kunin ang file na BMP2ASM.zip, na na-download namin sa Hakbang 1 at buksan ang Bmp2asm.exe sa loob nito, at piliin ang imahe ng BMP.
Hakbang 4: Ngayon pindutin ang "I-convert" sa window ng application ng BMP2ASM.
Hakbang 5: Pagkatapos Kopyahin ang nabuong code at i-paste sa programa ng 8051 sa Keil uVision. Gumawa ng ilang mga pagbabago at ipagsama ang code.
Ngayon ang iyong code ay handa nang mag-upload sa 8051 Microcontroller.
Paliwanag sa Circuit:
Ang mga koneksyon sa circuit, para sa Interfacing Graphical LCD hanggang 8051 Microcontroller, ay madali at halos pareho tulad ng pagkonekta sa 16x2 LCD sa 8051. Ngunit ang 16x2 LCD ay may 16 na pin at ang GLCD ay may 20 pin.
Ang isang 10K palayok ay ginagamit para sa itinakdang kaibahan para sa GLCD. Ang mga Control Pins ng GLCD RS, R / W at E ay direktang konektado sa 89C52 pin number na P1.0, P1.1 at P1.2. Ang mga chip select pin na CS1 at CS2 ng LCD ay konektado sa pin P1.3 at P1.4 ayon sa pagkakabanggit. Ang mga data pin na DB0-DB7 ay direktang konektado sa PORT P2. Ang isang 7805 Voltage regulator ay ginagamit para sa regular na 5 volt supply. Sa demonstration Video, ginamit ko ang supply ng kuryente ng Arduino.
Paliwanag sa Programming:
Una sa lahat, nagsasama kami ng kinakailangang mga file ng header sa programa at tinutukoy ang mga bit para sa Control at Data Pins ng GLCD.
# isama
Pagkatapos nito, lumikha kami ng isang pagpapaandar na pagpapaandar.
walang bisa ang pagkaantala (int itime) {int i, j; para sa (i = 0; i
Ginagamit ang pagpapaandar ng void lcd_disp_on () para sa Pag-on sa display.
Ang function void setCursorY (int y) ay nilikha para sa pagtatakda ng haligi sa GLCD at Function void setCursorX (int x) ay nilikha para sa pagtatakda ng pahina sa GLCD. Ang kumpletong file ng Code ay ibinibigay sa ibaba ng Seksyon ng Code.
Matapos itakda ang Hanay at Pahina, nagsulat kami ng isang pagpapaandar para sa pagpapadala ng utos at data sa GLCD.
void lcdprint (char dat, int size) {unsigned int i; para sa (i = 0; i
Sa walang bisa na pangunahing () pag- andar, na-clear namin ang GLCD at pagkatapos ay itinakda ang Column at Page. Pagkatapos nito, magpadala ng data sa LCD sa pamamagitan ng paggamit ng void lcdprint (char dat, int size) na pagpapaandar.
void main () {int x, y; P3 = 0xff; habang (1) {lcdclear (); para sa (y = 0; y <8; y ++) {para sa (x = 0; x <128; x ++) {lcd_disp_on (); setCursorX (y); setCursorY (x); lcdprint (imahe, x); }}…………………..
Daloy ng Code:
- Una kapag pinalakas namin ang system, nililimas ng programa ang GLCD at Binubuksan ang display.
- Pagkatapos itakda ang cursor sa Column, mula sa kung saan nais naming isulat ang Data.
- Pagkatapos itakda ang cursor sa Pahina, mula sa kung saan nais naming isulat ang Data.
- Ngayon ang programa ay nagpapadala ng Data sa napiling lokasyon nang paisa-isa hanggang sa 128X8 Times. Dahil ang isang GLCD ay mayroong 8 pahina at 128 Column.