mình đang muốn làm về LCD graphic màu nhưng không hiểu cách khởi tạo cho nó, không biết nó có khác so với GLCD nền xanh chữ đen ko, mình dùng PÍC6F887 để điều khiển. a e nào có làm rồi xin hướng dẫn mình bước cơ bản. àh với ở tphcm a e nào biết chổ bán con IC ADS7843 dùng cho màn hình cảm ứng. cảm ơn các bạn giúp đỡ.
Thông báo
Collapse
No announcement yet.
LCD graphic và touch screen
Collapse
X
-
Màn hình cảm ứng
Cuối cùng mình cũng xử lý xong cái glcd giờ tới con ADS7843 của màn hình cảm ứng. mình dùng PIC18f4620 để dk nhưng trong proteus ko mô phỏng dc nên dùng tạm 18f452 chương trình mình xem rất kỹ ko biết lỗi gì mà ko chạy. bạn nào nghiên cứu qua thì giúp mình.
đây là code:
#include <18f452.h>
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz)
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOBROWNOUT //Reset when brownout detected
#FUSES NOPUT //No Power Up Timer
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#use delay(clock=20000000)
#define SPI_MODE_0 (SPI_L_TO_H | SPI_XMIT_L_TO_H)
////////////////////////////////////////////////////////////////////////////////
//////////////dinh nghia PIN/////////////////////
#define ADS7843_CS PIN_C1
#define ADS7843_BUSY PIN_C2
#define ADS7843_PENIRQ PIN_B0
////////////////////////////////////////////////////////////////////////////////
//////////////Cchuong trinh con/////////////////////
int16 ads7843_read(mode)
{
int8 lsb, msb;
int16 retval;
output_low(ADS7843_CS); //cho phep chon chip
spi_write(mode);
while (input (ADS7843_BUSY)== 1){;}
msb = spi_read(0);
lsb = spi_read(0);
output_high(ADS7843_CS); //khong phep chon chip
retval = make16(msb, lsb); // tra ve gia tri 16bit ket hop tu 2 bien (msb va lsb) msb la byte cao
retval >>= 4;
return(retval); //tra ve gia tri la: [x][x][x][x][x][x][x][x][x][x][x][x][] [] [] []
}
///////////////////////////////////////////////////////////////////////////////
void main()
{
output_high(ADS7843_CS); // Inactive state (disenable)
setup_spi(SPI_MASTER | SPI_MODE_0 | SPI_CLK_DIV_4); //khoi tao chuan SPI
int16 x,y;
output_low(ADS7843_CS); // Inactive state (enable)
delay_ms(5);
while (TRUE)
{
while( input(ADS7843_PENIRQ) ==0 ) // is screen touch
{
x = ads7843_read (0x94);
delay_us (2);
y = ads7843_read (0xD4);
delay_ms (1);
if ((x<50)&& (y <50)) //neu vung duoc bam co gtri x,y <50 thi bat den chi thi RB7
{
output_bit( PIN_B7, 1);
delay_ms (100);
output_bit( PIN_B7, 0);
delay_ms (50);
}
}
}
}Attached Files
Comment
-
GLCD tôi đã giải quyết mượt mà phần hiển thị bitmap đa năng(Y chang led matrix) dùng phần mềm build bitmap của a Bvhoang. Phần hiển thị kí tự với font 5x7 cũng đã ok, nhưng hiện tại đang gặp rắc rối nhỏ là giờ mình muốn hiển thị cả 1 chuỗi kí tự dài vd"DTVN" thì chưa thực hiện đc, rắc rối nằm ở chỗ lấy mã ascii của từng phần tử trong chuỗi đó, giờ tôi chỉ cần cắt đc từng kí tự ra khỏi chuỗi đó là ok. CCS ko hỗ trợ hàm cắt kí tự như VB. Pro nào có cao kiến xin chỉ giáo.
Add: 97 Quán Nam - Lê Chân - Hải Phòng.
Tel: 031 518648 Phone: 0904 283 505
Comment
-
Nguyên văn bởi hoangdai Xem bài viếtGLCD tôi đã giải quyết mượt mà phần hiển thị bitmap đa năng(Y chang led matrix) dùng phần mềm build bitmap của a Bvhoang. Phần hiển thị kí tự với font 5x7 cũng đã ok, nhưng hiện tại đang gặp rắc rối nhỏ là giờ mình muốn hiển thị cả 1 chuỗi kí tự dài vd"DTVN" thì chưa thực hiện đc, rắc rối nằm ở chỗ lấy mã ascii của từng phần tử trong chuỗi đó, giờ tôi chỉ cần cắt đc từng kí tự ra khỏi chuỗi đó là ok. CCS ko hỗ trợ hàm cắt kí tự như VB. Pro nào có cao kiến xin chỉ giáo.
Ngô Đông Y
********
Mobile : 0984053088
Yahoo :
Email :
Comment
-
Nguyên văn bởi leson87 Xem bài viếtMàn hình cảm ứng
Cuối cùng mình cũng xử lý xong cái glcd giờ tới con ADS7843 của màn hình cảm ứng. mình dùng PIC18f4620 để dk nhưng trong proteus ko mô phỏng dc nên dùng tạm 18f452 chương trình mình xem rất kỹ ko biết lỗi gì mà ko chạy. bạn nào nghiên cứu qua thì giúp mình.
đây là code:
#include <18f452.h>
#FUSES NOWDT //No Watch Dog Timer
#FUSES HS //High speed Osc (> 4mhz)
#FUSES NOPROTECT //Code not protected from reading
#FUSES NOBROWNOUT //Reset when brownout detected
#FUSES NOPUT //No Power Up Timer
#FUSES NODEBUG //No Debug mode for ICD
#FUSES NOLVP //No low voltage prgming, B3(PIC16) or B5(PIC18) used for I/O
#use delay(clock=20000000)
#define SPI_MODE_0 (SPI_L_TO_H | SPI_XMIT_L_TO_H)
////////////////////////////////////////////////////////////////////////////////
//////////////dinh nghia PIN/////////////////////
#define ADS7843_CS PIN_C1
#define ADS7843_BUSY PIN_C2
#define ADS7843_PENIRQ PIN_B0
////////////////////////////////////////////////////////////////////////////////
//////////////Cchuong trinh con/////////////////////
int16 ads7843_read(mode)
{
int8 lsb, msb;
int16 retval;
output_low(ADS7843_CS); //cho phep chon chip
spi_write(mode);
while (input (ADS7843_BUSY)== 1){;}
msb = spi_read(0);
lsb = spi_read(0);
output_high(ADS7843_CS); //khong phep chon chip
retval = make16(msb, lsb); // tra ve gia tri 16bit ket hop tu 2 bien (msb va lsb) msb la byte cao
retval >>= 4;
return(retval); //tra ve gia tri la: [x][x][x][x][x][x][x][x][x][x][x][x][] [] [] []
}
///////////////////////////////////////////////////////////////////////////////
void main()
{
output_high(ADS7843_CS); // Inactive state (disenable)
setup_spi(SPI_MASTER | SPI_MODE_0 | SPI_CLK_DIV_4); //khoi tao chuan SPI
int16 x,y;
output_low(ADS7843_CS); // Inactive state (enable)
delay_ms(5);
while (TRUE)
{
while( input(ADS7843_PENIRQ) ==0 ) // is screen touch
{
x = ads7843_read (0x94);
delay_us (2);
y = ads7843_read (0xD4);
delay_ms (1);
if ((x<50)&& (y <50)) //neu vung duoc bam co gtri x,y <50 thi bat den chi thi RB7
{
output_bit( PIN_B7, 1);
delay_ms (100);
output_bit( PIN_B7, 0);
delay_ms (50);
}
}
}
}
Địa chỉ toạ độ X ( 0x90), toạ độ Y( 0xD0);
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Hỏi về cách hàn linh kiện ( giúp tớ với )bởi vi van phamUống rượu 1 mình, thấy trang này nhớ lại cách đây vài chục năm hàn thiếc với inox cực kỳ khó, phải dùng acid Hcl tác dụng lên kẻm Zn để có Zncl2 làm thuốc trợ hàn, lúc đó làm gì có acid Hcl và thuốc trợ hàn?
Cái khó bó cái...Hôm qua, 23:05 -
Trả lời cho Tiếng Anh cho người Việtbởi nhathung1101Nếu chú tâm thì học tiếng Việt cũng đủ rồi, thừa sức làm việc rồi.
Học tiếng Anh cũng chỉ phụ trợ để đọc thêm tài liệu, hướng dẫn.
Nhưng có hiểu điều đó không mới là vấn đề. Khi mà học ngoại ngữ để đi đạp xích lô đón khách???...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 21:27 -
-
bởi xenopus123Cần hỗ trợ mạch đồng hồ vạn niên 89c52 ds1302 ds18b20 dùng 16 led 7 đoạn
-
Channel: Hỗ trợ học tập
Hôm qua, 21:24 -
-
Trả lời cho tìm mua đồng hồ vạn năngbởi nhathung1101Nhìn kỹ hàng đi cu. Chứ ra đường cứ thấy đàn bà rồi bảo:
- Tôi cũng có vợ như thế....
Đảm bảo cu nát người luôn....-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 21:04 -
-
Trả lời cho tìm mua đồng hồ vạn năngbởi matnetgia99Ồ, cái này mình cũng có nè, có ai mua không, đồ cũ dùng từ năm 2008, hư 1 2 giai gì đấy bỏ xó hơn năm nay...
-
Channel: Điện tử dành cho người mới bắt đầu
17-02-2025, 14:40 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi dinhthuong80À, sản phẩm họ thiết kế ra, họ yêu cầu mình chứng minh là sau chỉnh sửa thì 1 là gỡ jump cắm lại không hư mạch, 2 là gỡ jump thì 220Vdc vẫn dùng được led áp thấp 20V mà không hư led như mình báo, nên họ hiểu rõ mà....
-
Channel: Điện tử công suất
17-02-2025, 06:08 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Tôi biết và tôi biết.
Sẽ bắt đầu với cái Sồn La, rồi mấy mạch nguồn vớ vỉn.... Rồi sẽ đèn led...
Cuộc đời là những chuyến xe, nên sẽ có:
Xe đạp điện, xe máy điện, xe ô tô điện, xe cấp cứu điện, xe tang điện.
Rồi xem.-
Channel: Điện tử công suất
17-02-2025, 01:38 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nhathung1101Vấn đề là thu ánh sáng rồi phát ra ánh sáng cơ. Hồi mẫu giáo cô bảo đừng làm, lão không nhớ à?
Tốt nhất im mồm....-
Channel: Điện tử công suất
17-02-2025, 01:26 -
-
Trả lời cho Tiếng Anh cho người Việtbởi bqvietBài học kiểu trực tuyến dù là loại đơn giản bậc nhất cũng vẫn cần chú tâm. Chỉ bật tai nghe lên thì không có loại nào thấm nổi đâu. Cách hay hơn, dễ hơn là kiếm phim tiếng Anh nào đó xem, ban đầu bật phụ đề tiếng Việt, nghe và...
-
Channel: Tâm tình dân kỹ thuật
14-02-2025, 16:15 -
-
Trả lời cho Giúp em về mạch MPPT và Solar Panel với!?bởi nguyendinhvanỞ đtvn này mới biết đến 2 loại mạch
1 step down
2 step up
Bây giờ anh lưu vong làm thuê bên nước lạ còn làm ra cái mach vừa up vùa dow luôn.
Tính chất là:
1 Đầu vào bằn ra cho nối thẳng
2 Đầu vào cao hơn...-
Channel: Điện tử công suất
14-02-2025, 00:51 -
Comment