Tìm kiếmĐăng ký thành viên  >  Đăng nhập    Liên hệ     
  

Trang chủ



Thảo luận



 SỰ KIỆN ĐẶC BIỆT TẠI VAGAM/ EVENTS & SEMINARS
 Thông tin chung
 Điện – điện tử: căn bản và các chuyên đề
 Cảm biến và cơ cấu chấp hành
 Lập trình vi xử lý, vi điều khiển và điều khiển logic
- Vi điều khiển 89c51
- Vi điều khiển AVR.
- Vi điều khiển PIC.
- Các trao đổi về Vi điều khiển khác
 Giao tiếp máy tính - truyền dữ liệu - xử lý ảnh số
 Phần mềm và ngôn ngữ lập trình trong kỹ thuật
 Điều khiển tự động
 Thiết kế và mô phỏng hệ thống cơ khí
 Các chuyên đề ÔTÔ, XE MÁY - ROBOT - AUTOMATION
 Anh văn kỹ thuật
 Chia sẻ tài liệu cùng các thành viên
 Các chủ đề thảo luận chung
 Mã nguồn mở



Tài liệu tham khảo









http://hocdelam.org

http://labview.hocdelam.org

http://vagam.dieukhien.net/index.php?tpid=5&catid=10&chapid=83

http://vagam.dieukhien.net/index.php?tpid=5&catid=24&chapid=75

http://vagam.dieukhien.net/index.php?tpid=5&catid=5&chapid=33

http://vagam.dieukhien.net/index.php?arid=37

http://vagam.dieukhien.net/discuss.php?thid=148&pagenum=1

http://vagam.dieukhien.net/discuss.php?thid=456

http://vagam.dieukhien.net/discuss.php?thid=497&pagenum=1

http://vagam.dieukhien.net/discuss.php?ftopid=12&fcatid=44

http://www.dieukhien.net

http://dieukhientudong.com

http://suno.vn


http://spkt.net/diendan/

http://sanpham.hocdelam.org

http://robot.kut.ac.kr

http://labview.hocdelam.org/vn/Nghien-cuu/Hoi-thao-khoa-hoc.nso

http://www.phone4vn.com




Bài 4 : Lập trình hiển thị LCD (Chữ chạy)

| 1 | 2 | > Tiếp >> Cuối 
 giotdang | 13:44:11 01-01-08 | Posts: 191 1
Tóm tắt : Qua bài viết này bạn sẽ sử dụng thành thạo thư viện lcd.h của codevision .Sử dụng linh hoạt , tạo ra dòng chữ chạy trên lcd .

Giới thiệu :
Phần cứng : bạn nối lcd như sơ đồ dưới đây



LCD giao tiếp theo chuẩn logic TTL thông thường (5V cho logic 1 và 0V cho logic 0) cho nên có thể kết nối trực tiếp với VĐK
+ Chân dữ liệu (những chân dùng để "ra lệnh") của LCD từ chân 7 đến chân 14 (được nhà sản xuất đặt tên là DB0-DB7)
+ Chân tín hiệu là các chân 4(RS), 5(RW), 6(E)
Giả sử bạn lập trình với port C
PortC0 - RS
PortC1 - RD
PortC2 - EN

PortC4 - D4
PortC5 - D5
PortC6 - D6
PortC7 - D7

port có thể thay đổi(PORT A,B hay C) nhưng các thứ tự chân phải đúng như trên .(do cách lập trình trong thư viện lcd.h) Nếu bạn lập trình bộ thư viện riêng , cách chân phần cứng có thể bố trí thoải mái theo ý người lập trình.
Hai nữa khi lập trình LCD các bạn chú ý ở chân VEE (chân số 3 lcd) phải có mức điện áp gần bằng 0V, thường các mạch có 1 con điện trở để chỉnh cường độ sáng tối cho LCD.Để đơn giản bạn có thể nối chân đó với GND(0V) lcd sẽ luôn hiển thị rõ tối đa .

Để tìm hiểu thêm về LCD bạn có thể tham khảo bài viết của trietnguyen :

Giới thiệu về LCD

Khi sử dụng codevision bạn sẽ có một bộ thư viện viết sắn bao gồm các hàm cơ bản sau đây :

void lcd_clear(void)
Xóa hết màn hình
void lcd_gotoxy(unsigned char x, unsigned char y)
Nhảy tới vị trí x và dòng thứ y (0 là dòng 1 và 1 là dòng thứ 2 với lcd 2 dòng )
void lcd_putchar(char c)
Hiển thị 1 kí tự
void Lcd_puts(char *str)
Hiển thị 1 chuỗi kí tự trên RAM
void lcd_putsf(char flash *str)
Hiển thị 1 chuỗi kí tự trên FLASH(thường dùng lệnh này để tiết kiệm ram


Code
c code
  1.  
  2. /*****************************************************
  3. This program was produced by the
  4. CodeWizardAVR V1.24.8d Professional
  5. Automatic Program Generator
  6. © Copyright 1998-2006 Pavel Haiduc, HP InfoTech s.r.l.
  7. http://www.hpinfotech.com
  8.  
  9. Project :
  10. Version :
  11. Date : 1/1/2008
  12. Author : LENGOCTUAN
  13. Company : VAGAM
  14. Comments:
  15.  
  16.  
  17. Chip type : ATmega16
  18. Program type : Application
  19. Clock frequency : 8.000000 MHz
  20. Memory model : Small
  21. External SRAM size : 0
  22. Data Stack size : 256
  23. *****************************************************/
  24.  
  25. #include <mega16.h>
  26. #include <delay.h>
  27. // Alphanumeric LCD Module functions
  28. #asm
  29. .equ __lcd_port=0x15 ;PORTC
  30. #endasm
  31. #include <lcd.h>
  32.  
  33. // Declare your global variables here
  34. unsigned char i; //bien dem de chay chu
  35. char flash *str="<- "; //chuoi ki tu viet tren Flash
  36.  
  37. void main(void)
  38. {
  39.  
  40. // LCD module initialization
  41. lcd_init(16);//khoi tao lcd 16 cot 2 dong
  42. i=16;
  43. while (1)
  44. {
  45. // Place your code here
  46. i--;
  47. lcd_gotoxy(i,1);
  48. lcd_putsf(str);
  49.  
  50. if(i==0) {i=16; lcd_gotoxy(0,1);lcd_putsf(" ");}
  51. lcd_gotoxy(0,0);
  52. lcd_putsf("Happy new year ");
  53. delay_ms(500);
  54.  
  55. };
  56. }
  57.  
  58.  




giotdang1985@yahoo.com

 giotdang | 15:40:38 01-01-08 | Posts: 1912
Kết quả:

Attachment(s)
File Type: imagePicture 001.jpg (13.0 KB, 1573 lần tải)




giotdang1985@yahoo.com