![]() |
|
Tài trợ cho PIC Vietnam |
PIC - Thiết kế và Ứng dụng Ý tưởng cho các sản phẩm sử dụng PIC/dsPIC và các sản phẩm của Microchip |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
Help! Viết ký hiệu chữ "phi" lên LCD 2 hàng 16 cột
Mình đang dùng PIC6F877 để điều khiển hiển thị lên màn hình LCD 2 hàng 16 cột, nhưng không biết làm thế nào để hiển thị được ký tự "phi" (có hình đính kèm). Mình dùng 4 bit điều khiển LCD. Rất mong được các cao thủ chỉ giáo.
|
![]() |
![]() |
![]() |
#2 |
Trưởng lão PIC bang
|
Bạn đọc lại tài liệu hướng dẫn cho chip HD44780U (đa số LCD ký tự dùng chip điều khiển tương thích với chip này), tìm phần hướng dẫn cách dùng bộ tạo ký tự trong RAM (CGRAM) và cách hiển thị các ký tự bằng CGRAM.
Thân,
__________________
Biển học mênh mông, sức người có hạn. Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau: http://www.picvietnam.com/forum/showthread.php?t=1263 |
![]() |
![]() |
![]() |
#3 | |
Đệ tử 4 túi
Tham gia ngày: Mar 2006
Bài gửi: 83
: |
![]() Trích:
Có cách nào để tạo ra các ký tự đặc biệt như phi hay alpha...... bằng chương trình PICC không? chứ nếu viết bằng asm hay truy xuất thanh ghi của nó thì dài quá. |
|
![]() |
![]() |
![]() |
#4 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
Bạn đã thương thì thương cho trót, thử viết giúp mình đoạn code bằng asm đi!!!
|
![]() |
![]() |
![]() |
#5 |
Đệ tử 4 túi
Tham gia ngày: Feb 2006
Bài gửi: 66
: |
Vùng CGRAM của LCD1602 cho phép người dùng định nghĩa tối đa 8 ký tự đặc biệt với font 5x7, cách mã hóa giống như mã hóa Led ma trận.Bạn có thể dùng kỹ thuật bảng để xuất ký tự mong muốn với mỗi phần tử trong bảng là một hàng của ký tự phi.
|
![]() |
![]() |
![]() |
#6 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
Mình hiểu rồi, thanks bạn nhé!!!
|
![]() |
![]() |
![]() |
#7 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
À tiện thể cho em hỏi có bác nào có tài liệu hướng dẫn điều khiển LCD bằng tiếng Việt thì cho em xin với, thank các bác nhìu!
|
![]() |
![]() |
![]() |
#8 |
Đệ tử 1 túi
Tham gia ngày: Sep 2006
Bài gửi: 17
: |
hi hi xuất lcd dùng ngôn ngữ ccs là dễ nhất.các bạn lên trang này để tìm code nè rồi về làm.
www.ccsinfo.com/forum chú mèo đihia tái bút: thanks |
![]() |
![]() |
![]() |
#9 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
Mình đã làm được việc hiển thị ký thự phi lên LCD 16x2 rồi. Xin post CODE lên đây để làm tài liệu tham khảo cho những người đi sau. Đầu tiên là các công việc phải làm :
1. Vẽ chữ phi :xem file attach. 2. Xác định giá trị và thứ tự các byte để out ra cổng hiển thị LCD. Theo như hình vẽ thì giá trị các byte sẽ là : Byte0 0x13 Byte1 0x15 Byte2 0x15 Byte3 0x0E Byte4 0x04 Byte5 0x04 Byte6 0x04 Byte7 0x00 3. Viết chương trình Code:
WriteCGChar: movlw 0x40 call WriteCommand ; Put the Cursor to the Start of CGRAM CharLoop: call CGChar call WriteData ; Output the ASCII Character incf Count,1 ; Do 8x movlw .8 xorwf Count,0 btfss STATUS,Z goto CharLoop movlw 0x80 ;Move the Cursor Back into LCD Memory Space call WriteCommand movlw .0 ; Display the Character call WriteData return CGChar: movf Count,0 addwf PCL,1 retlw 0x13 retlw 0x15 retlw 0x15 retlw 0x0E retlw 0x04 retlw 0x04 retlw 0x04 retlw 0x00 thay đổi nội dung bởi: Jerry, 17-11-2007 lúc 08:14 AM. |
![]() |
![]() |
![]() |
#10 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
attach ký tự phi
|
![]() |
![]() |
![]() |
#11 |
Nhập môn đệ tử
Tham gia ngày: Nov 2007
Bài gửi: 2
: |
![]() bác nào chỉ em chút về vấn đề này dc ko? em viet code rui ma den luc nap vao PIC no ko chạy . cứu em
|
![]() |
![]() |
![]() |
#12 |
Đệ tử 5 túi
Tham gia ngày: Sep 2006
Bài gửi: 100
: |
Bạn phải đưa code lên đây thì mọi người mới giúp được
__________________
Do more than exist, LIVE |
![]() |
![]() |
![]() |
#13 |
Nhập môn đệ tử
Tham gia ngày: Oct 2007
Bài gửi: 3
: |
giúp mình với
mình đang muốn hiển thị chuỗi ký tự lên lcd nhưng không được đây là code của mình Code:
/////////////////////////////////////////////////////////// //Hien thi ky tu ra man hinh void lcd_display_char(int1 line, int8 pos, char ch) { lcd_write(0x80 + 0x40 * line + pos, WRITE_COMMAND); lcd_write(ch, WRITE_DATA); lcd_write(0x0c, WRITE_COMMAND); // Bo nhap nhay? } /////////////////////////////////////////////////////////// void lcd_display_str(int1 line, int8 posc, char str[]) { int8 i,j; j=strlen(str); for (i = posc; i < j+posc ; i++) { lcd_display_char(line, i, str[i-posc]); //delay_ms(1); } } mình cũng dùng hàm lcd_display_char() để hiển thị chuỗi số thì hiển thị bình thường mình không biết có lỗi gì nữa. đây là hàm hiển thị chuỗi số của mình /////////////////////////////////////////////////////////// void lcd_display_int16(int1 line, int8 posi, int16 x,int dauphay,int1 dau ) { int8 i; char str[5]; char s[6]; itoa(x,10,str); if(dau==1) s[0]=minus[0];//xac dinh dau else s[0]=pe[3]; // xu ly chuoi so if((0<=x)&(x<10)) { for (i = 0; i < 3 ; i++)//hien thi 3 so không dang truoc gia tri s[i+1]=z[0]; s[4+dauphay]=str[0];//gia tri } if((10<=x)&(x<100)) { for (i = 0; i < 2 ; i++) s[i+1]=z[0]; s[3]=str[0]; s[4+dauphay]=str[1]; } if((100<=x)&(x<1000)) { s[1]=z[0]; s[2]=str[0]; s[3]=str[1]; s[4+dauphay]=str[2]; } if((1000<=x)&(x<10000)) { for (i = 0; i < 3 ; i++) s[i+1]=str[i]; s[4+dauphay]=str[3]; } if(dauphay==1) s[4]=phay[0]; for (i = posi; i < posi+5+dauphay ; i++)// hien thi chuoi so lcd_display_char(line, i, s[i-posi]); nhưng chỉ có hàm hiển thị số là hiển thị tốt còn hàm hiển thị sâu ký tự thì không hiển thị được. |
![]() |
![]() |
![]() |
#14 |
Đệ tử 1 túi
Tham gia ngày: Aug 2007
Bài gửi: 12
: |
Hiển thị chuỗi kí tự lên LCD
dùng thư viện lcd.c và String.c trong CCS Code:
#include <16f877a.h> #use delay (clock = 20000000) #include <lcd.c> void main () { lcd_init(); lcd_putc("PIC Viet Nam"); }
__________________
Trịnh Đức Hạnh HCMC University Of Technology. thay đổi nội dung bởi: trinhduchanh, 11-07-2009 lúc 05:56 PM. |
![]() |
![]() |
![]() |
#15 |
Đệ tử 1 túi
Tham gia ngày: Jul 2007
Bài gửi: 17
: |
có ai dùng C để ghi dữ liệu vào CGRAM của lcd 1602 không
giúp mình code = C với.mình lên mạng tìm nhưng chỉ tìm đc code = ASM thôi. mà asm mình chẳng biết gì hết đọc chẳng hiểu .hic |
![]() |
![]() |
![]() |
|
|
![]() |
||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
"PIC16F877A!NÀO TA CÙNG CHAT!" | ntc | Cơ bản về vi điều khiển và PIC | 75 | 27-12-2010 05:32 PM |
bác fall cho em hỏi tý về CCSC tại sao lại "Out of ROM" sớm thế? | MoH | Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) | 12 | 20-10-2006 11:31 AM |
Hội thảo: "Tầm nhìn dientuvietnam 2006" | falleaf | Đóng góp ý kiến | 2 | 03-08-2006 06:48 PM |
"Mechatronics handbook " | elecminh | Điều khiển | 3 | 07-09-2005 12:42 AM |
Nộp bài tập "Hoc PIC trong 1 ngày" | teo | Cơ bản về vi điều khiển và PIC | 5 | 02-06-2005 01:11 AM |