View Single Post
Old 11-11-2009, 05:38 PM   #4
nhanh0112
Đệ tử 4 túi
 
Tham gia ngày: May 2007
Bài gửi: 81
:
Driver cho LCD CCS có sẵn thư viện mà bạn. chỉ cần khai báo
#include <lcd.c>//đường dẫn đến driver của thư viện
hoặc
#include "lcd.c" // đường dẫn đến driver nằm cùng thư mục project
sau #use delay là đc
còn định nghĩa cho các chân thì bạn thêm đoạn này vào đoạn đầu của driver lcd.c
Code:
#define LCD_ENABLE_    PIN  PIN_B3                                    ////
#define LCD_RS_PIN      PIN_B1                                    ////
#define LCD_RW_PIN     PIN_B2                                    ////
#define LCD_DATA0       PIN_B4                                    ////
#define LCD_DATA1       PIN_B5                                    ////
#define LCD_DATA2       PIN_B6                                    ////
#define LCD_DATA3       PIN_B7                                    ////
(đã test trên cả proteus và mạch thật với 16F877A)
Nếu bạn nào chưa có (hoặc có nhưng phiên bản khác thì có thể tham khảo) file đính kèm http://www.mediafire.com/?iqzzwmiurtm
(sao diễn đàn ko up đc file nhỉ?!)

Ý tưởng ADC của bạn khá hay nhưng phải làm mạch ngoài và vref khá chính xác
Tui có thể nói lại ý tưởng của bạn như sau:
Chia đôi mức điện áp với Vref bằng mức điện áp chia đôi này giả sử Vref=2.5V
Vậy từ 0-2.5V bạn đưa vào AN0. Từ 2.5 đến 5V bạn đưa vào AN1 (có thể dùng điôt ổn áp hoặc mạch giới hạn để mức điện áp vào từ 2.5-5V đưa vào AN1 cũng là 0 -2.5v)
trong phần mềm... bạn đọc giá trị của AN0 và AN1 rồi cộng dồn... sẽ đc 11bit ngay.
Mạch ngoài cũng khá phức tạp đây
nhanh0112 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn