SlideShare a Scribd company logo
1 of 17
Download to read offline
BỘ CÔNG THƢƠNG 
TRƢỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI 
KHOA : ĐIỆN TỬ 
ĐỒ ÁN MÔN HỌC 
ĐỀ TÀI: THIẾT KẾ BỘ ĐO ĐIỆN ÁP Ở 3 DẢI ĐO 0-2.5V, 0-25V, 0-250V 
HIỂN THỊ TRÊN LCD. 
“Sai số cho phép là  10%” 
Giáo viên hướng dẫn: 
Nhóm sinh viên thực hiện: 
1.Nguyễn Duy Hân 
2.Trịnh Đình Thắng 
3.Nguyễn Hữu Từ
Mục lục 
Trang 
Mục lục……………………………………………………………………………2 
Lời nói đầu………………………………………………………………………..2 
Chƣơng I 
Mô tả ý tƣởng: mô hình ý niệm, xây dựng sơ đồ khối…………………...4 
I. Sơ đồ khối,sơ đồ mạch nguyên lý và mạch in …………….....................4 
II. Các vi mạch chính sử dụng trong từng khối và nguyên lý hoạt động của từng khối…………………………………………………………….….6 
Chƣơng II 
Quá trình thực hiện……………………………………………………………..17 
I. Code lập trình C cho vi điều khiển…………….………………………..18 
II. Hình dạng sản phẩm thƣc tế hoàn thành…………………...................19 
III.Tóm tắt bản báo cáo, những vấn đề chƣa làm đƣợc……….……..20
LỜI NÓI ĐẦU 
Sự ra đời của các bộ vi xử lí nói chung,các bộ vi điều khiển nói riêng đã tạo ra một bƣớc ngoặt lớn trong việc thiết kế các hệ thống xử lí thông tin,đo lƣờng điều khiển và truyền thông.Kết quả là đã tạo ra đƣợc những sản phẩm nhƣ máy ảnh số,máy chơi nhạc MP3,đầu dĩa DVD,các bộ biến tần,PLC…ngày càng rẻ hơn,nhỏ gọn hơn,thông minh hơn và tiện dụng hơn. 
Hơn nữa,kỹ thuật vi điều khiển hiện nay rất phát triển, nó đƣợc ứng dụng vào rất nhiều lĩnh vực sản xuất công nghiệp, tự động hóa, trong đời sống và còn nhiều lĩnh vực khác nữa. So với kỹ thuật số thì kỹ thuật vi điểu khiển nhỏ gọn hơn rất nhiều do nó đƣợc tích hợp lại và có khả năng lập trình đƣợc để điều khiển. Nên rất tiện dụng và cơ động. 
Với tính ƣu việt của vi điều khiển thì trong phạm vi đồ án nhỏ này, chúng em chỉ dùng vi điều hiển để đo điện áp ở ba dải đo 0-2.5V , 0-25 , 250V , đồng thời cho hiển thị lên LCD. 
Mục đích của đề tài hƣớng đến: tạo ra bƣớc đầu cho sinh viên thử nghiệm những ứng dụng của vi điều khiển trong thực tiễn để rồi từ đó tìm tòi, phát triển nhiều ứng dụng khác trong đời sống hằng ngày cần đến. 
Việc thực hiện xong đồ án môn học bằng các kiến thức đã học, một số sách tham khảo và một số nguồn tài liệu khác nên không tránh khỏi những thiếu sót. Vì vậy nhóm rất mong đƣợc sự góp ý của thầy cô và các bạn.
Chƣơng I 
Mô tả ý tƣởng,mô hình ý niệm,xây dựng sơ đồ khối 
I. Sơ đồ khối tổng quát,sơ đồ nguyên lý và mạch in 
1.Sơ đồ khối tổng quát: 
KHỐI ĐIỀU CHẾ VÀ KHUẾCH ĐẠI 
KHỐI XỬ LÝ TRUNG TÂM: 8051 
KHỐI CHUYỂN ĐỒI TƢƠNG TỰ SANG SỐ: ADC0804 
KHỐI NGUỒN ỔN ÁP SỬ DỤNG IC7805 
KHỐI HIỂN THỊ: 
SỬ DỤNG LCD 
ĐẦU RA ỨNG DỤNG 
(đo điện áp ở ba thang đo: 0-2.5 V, 0-25V va 0-250V)
2. Sơ đồ nguyên lý mô phỏng dùng proteus: 
3. sơ đồ mạch in :
II . Các vi mạch chính sử dụng trong từng khối và nguyên lý hoạt động của từng khối 
1. Các vi mạch chính sử dụng trong từng khối 
1. Khối xử lý trung tâm: AT89C52 
2. Trong khối điều chế và khuếch đại: LM358 
3. Khối chuyển đổi: ADC 0804 
4. Khối hiển thị: LCD 
5. Trong Khối ổn áp: IC7805 
2. Cấu tạo và nguyên lý hoạt động cơ bản của từng vi mạch 
2.1 Vi điều khiển AT89C52: 
2.1.2 cấu tạo và chức năng các khối của AT89S52. 
 CPU( CPU centralprocessing unit) bao gồm: 
 Thanh ghi tích lũy A 
 Thanh ghi tích lũy phụ B 
 Đơn vị logic học (ALU) 
 Thanh ghi từ trạng thái chƣơng trình 
 Bốn băng thanh ghi 
 Con trỏ ngăn xếp 
 Bộ nhớ chƣơng trình( ROM) gồm 8Kbyte Flash. 
 Bộ nhớ dữ liệu( RAM) gồm 256 byte. 
 Bộ UART, có chức năng truyền nhận nối tiếp. 
 3 bộ Timer/Counter 16 bit thực hiện chức năng định thời và đếm sự kiện. 
 Khối điều khiển ngắt với 2 nguồn ngắt ngoài và 4 nguồn ngắt trong. 
 Bộ lập trình( ghi chƣơng trình lên Flash ROM) cho phép ngƣời sử dụng có thể nạp các chƣơng trình cho chíp mà không cần các bộ nạp chuyên dụng. 
 Bộ chia tần số với hệ số chia là 12. 
 4 cổng xuất nhập với 32 chân. 
b, chức năng các chân của AT89C52 
 Port 0( P0.0=>P0.7) 
Port 0 gồm 8 chân, ngoài chức năng xuất nhập, port 0 còn là bus đa hợp dữ liệu và địa chỉ( AD0-AD7), chức năng này sẽ đƣợc sử dụng khi 89c52 giao tiếp với các thiết bị ngoài có kiến trúc Bus nhƣ các vi mạch nhớ, mạch PIO… 
 Port 1( P1.0=>P1.7) 
Chức năng duy nhất của Port 1 là chức năng xuất nhập cũng nhƣ các Port khác. Port1 có thể xuất nhập theo bit và theo byte. 
 Port 2( P2.0=>P2.7) 
Port 2 ngoài chức năng là cổng vào/ra nhƣ Port 0 và 1 còn là byte cao của bus địa chỉ khi sử dụng bộ nhớ ngoài.
Port 3 
Mỗi chân trên Port 3 ngoài chức năng xuất nhập còn có một chức năng riêng, cụ thể nhƣ sau: 
Bit 
Tên 
Chức năng 
P3.0 
RXD 
Dữ liệu nhận cho Port nối tiếp 
P3.1 
TXD 
Dữ liệu truyền cho Port nối tiếp 
P3.2 
INT0 
Ngắt bên ngoài 0 
P3.3 
INT1 
Ngắt ngoài 1 
P3.4 
TO 
Ngõ vào của Timer/counter0 
P3.5 
T1 
Ngõ vào của Timer/counter1 
P3.6 
/WR 
Xung ghi bộ nhớ dữ liệu ngoài. 
P3.7 
/RD 
Xung đọc bộ nhớ dữ liệu ngoài. 
 Chân /PSEN : là chân điều khiển đọc chƣơng trình ở bộ nhớ ngoài. 
 Chân ALE. 
ALE là tín hiệu điều khiển chốt địa chỉ có tần số bằng 1/6 tần số dao động của vi điều khiển. Tín hiệu ALE đƣợc dùng để cho phép vi mạch chốt bên ngoài nhƣ 7473. 
 Chân /EA. 
Tín hiệu /EA cho phép chọn bộ nhớ chƣơng trình là bộ nhớ trong hay ngoài. EA=1 thì thực hiện chƣơng trình trong RAM nội. EA=0 thực hiện ở RAM ngoài. 
 RST( reset) 
Ngõ vào reset trên chân số 9. khi RST=1 thì bộ vi điều khiển sẽ đƣợc khởi động lại thiết lập ban đầu. 
 XTAL1, XTAL2 
2 chân này đƣợc nối song song với thạch anh tần số max=33 Mhz. Để tạo dao động cho bộ vi điều khiển. 
 Vcc, GND : cung cấp nguồn nuôi cho bộ vi điều khiển. cấp qua chân 20 và 40. 
2.1.3 nguyên lý hoạt động 
+Chân 9 đƣợc nối với mạch reset. Khi nhấn SW1 thì bộ vi điều khiển sẽ đƣợc khởi động lại từ đầu. 
+điện trở băng U1: có tác dụng làm điện trở kéo lên nguồn. 
+ chân 18-19 đƣợc nối // với thạch anh 12Mhz. mạch có nhiệm vụ tạo dao động cho vi điều khiển. 
+từ chân P2.0=>P2.2 lần lƣợt đƣợc nối với Vee, RS, RW của LCD. Có nhiệm vụ điều khiển hoạt động của LCD. 
+chân P2.3=>P2.5 : 3 chân này đƣợc nối với lần lƣợt 3 chân của ADC : chân RD (Read), chân WR (Write) và chân Ngắt INTR (Interupt). Nhiệm vụ điều khiển hoạt động của bộ chuyển đổi số - tƣơng tự. 
+ chân P3.0=>P3.7. giao tiếp với ADC0804. Cổng P3 này có nhiệm vụ đọc điện áp thu đƣợc từ bộ chuyển đổi. 
+P0.0=>P0.7. Lần lƣợt đƣợc nối với đầu vào dữ liệu từ DB0=> DB7 của LCD. Có chức năng điều khiển hiển thị việc đo điện áp trên LCD . 
+P1.0=>P1.2 : đƣợc nối với switch kép để điều khiển chọn thang đo phù hợp. 
2.2 Khuếch đại LM358: 
a, cấu tạo 
LM358 gồm có 2 con khuếch đại thuật toán: 
Con thứ 1: chân 2 ,3 vào, chân 1ra 
Con thứ 2: chân 5,6 vào, chân 7 ra 
Công dụng: khuếch đại điện áp và dòng điện nhận đƣợc từ LM35 để sau đó chuyển tiếp đến đầu vào IN của ADC 0804
Sơ đồ cấu tạo: 
Tính toán và cân chỉnh: 
+tại OA2: 
Xét tại: N2: 
3 
0 
R 
Un 
= 
R4 
Un Ur 
=>Ur=Un . 
3 
3 4 
R 
R  R 
. 
Xét tại P2: 
R1 
Uv Up 
= 
R2 
Up 
. 
=> Up=Uv . 
1 2 
2 
R R 
R 
 
Mà coi nhƣ OA lý tƣởng. 
Uv=Up; 
 Ur=Uv. 
3 
3 4 
R 
R  R 
. 
1 2 
2 
R R 
R 
 
; 
Do điện áp đầu ra của bộ khuếch đại chỉ giới hạn trong khoảng từ 0-5V khi dùng nguồn đơn. Nên 
chọn giá trị R2= R4=3,9 K 
R1=R3= 1 K ;Khi đó Ur=Vin  4Uv; 
2.3 Bộ chuyển đổi tƣơng tự-số: ADC 0804: 
2.3.1 Cấu tạo: 
ADC 0804 là một bộ chuyển đổi tƣơng tự số. Gồm có 20 chân. 
DB0-DB7: là 8 chân ra dữ liệu. 
RD: lối vào đọc 
WR :lối vào ghi. 
INTR: lối ra ngắt. 
CLKR/CLKIN: các lối vào điều khiển xung nhịp. 
VIN: lối vào analog dƣơng
2.3.2 sơ đồ: 
Chip ADC0804 là bộ chuyển đổi tƣơng tự số thuộc họ ADC800 của h ãng National 
Semiconductor. Chip này cũng đƣợc nhiều hãng khác sản xuất. Chip có điện áp nuôi +5V và 
độ phân giải 8 bit. Ngoài độ phân giải thì thời gian chuyển đổi cũng là một tham số quan 
trọng khi đánh giá bộ ADC. Thời gian chuyển đổi đ ƣợc định nghĩa là thời gian mà bộ ADC 
cần để chuyển một đầu vào tƣơng tự thành một số nhị phân. Đối với ADC0804 thì thời gian 
chuyển đổi phụ thuộc vào tần số đồng hồ đƣợc cấp tới chân CLK và CLK IN và không bé hơn 
110s. Các chân khác của ADC0804 có chức năng nhƣ sau: 
CS (Chip select) 
Chân số 1, là chân chọn Chip, đầu vào tích cực mức thấp đƣợc sử dụng để kích hoạt 
Chip ADC0804. Để truy cập ADC0804 thì chân này phải ở mức thấp. 
RD (Read) 
Chân số 2, là một tín hiệu vào, tích cực ở mức thấp. Các bộ chuyển đổi đầu v ào tƣơng 
tự thành số nhị phân và giữ nó ở một thanh ghi trong. RD đ ƣợc sử dụng để có dữ liệu 
đã đƣợc chyển đổi tới đầu ra của ADC0804. 
Khi CS = 0 nếu có một xung cao xuống thấp áp đến chân RD thì dữ liệu ra dạng số 8 
bit đƣợc đƣa tới các chân dữ liệu (DB0 – DB7). 
WR (Write) 
Chân số 3, đây là chân vào tích cực mức thấp đƣợc dùng để báo cho ADC biết bắt đầu 
quá trình chuyển đổi. Nếu CS = 0 khi WR tạo ra xung cao xuống thấp th ì bộ 
ADC0804 bắt đầu quá trình chuyển đổi giá trị đầu vào tƣơng tự Vin về số nhị phân 8 
bit. Khi việc chuyển đổi hoàn tất thì chân INTR đƣợc ADC hạ xuống thấp. 
CLK IN và CLK R 
CLK IN (chân số 4), là chân vào nối tới đồng hồ ngoài đƣợc sử dụng để tạo thời gian. 
Tuy nhiên ADC0804 cũng có một bộ tạo xung đồng hồ riêng. Để dùng đồng hồ riêng 
thì các chân CLK IN và CLK R (chân s ố 19) đƣợc nối với một tụ điện và một điện trở 
(nhƣ hình vẽ). Khi ấy tần số đƣợc xác định bằng biểu thức: 
Với R=10 k, C=150pF và tần số f=606 kHz và thời gian chuyển đổi là 110 s.
Ngắt INTR (Interupt) 
Chân số 5, là chân ra tích cực mức thấp. Bình thƣờng chân này ở trạng thái cao và khi 
việc chuyển đổi hoàn tất thì nó xuống thấp để báo cho CPU biết l à dữ liệu chuyển đổi 
sẵn sàng để lấy đi. Sau khi INTR xuống thấp, cần đặt CS = 0 v à gửi một xung cao 
xuống thấp tới chân RD để đƣa dữ liệu ra. 
Vin (+) và Vin (-) 
Chân số 6 và chân số 7, đây là 2 đầu vào tƣơng tự vi sai, trong đó Vin = Vin (+) – Vin (-). 
Thông thƣờng Vin (-) đƣợc nối tới đất và Vin (+) đƣợc dùng làm đầu vào tƣộng tự và sẽ đƣợc 
chuyển đổi về dạng số. 
Vcc 
Chân số 20, là chân nguồn nuôi +5V. Chân này còn đƣợc dùng làm điện áp tham chiếu 
khi đầu vào Vref/2 để hở. 
Vref/2 
Chân số 9, là chân điện áp đầu vào đƣợc dùng làm điện áp tham chiếu. Nếu chân này 
hở thì điện áp đầu vào tƣơng tự cho ADC0804 nằm trong dải 0 - +5V. Tuy nhiên, có 
nhiều ứng dụng mà đầu vòa tƣơng tự áp đến Vin khác với dải 0 - +5V. Chân Vref/2 
đƣợc dùng để thực hiện các điện áp đầu ra khác 0 - +5V. 
Bảng quan hệ điện áp Vref/2 với Vin 
Vref/2 (V) Vin (V) Kích thƣớc bƣớc (mV) 
Hở 0 – 5 5/256 = 19.53 
2.0 0 – 4 4/256 = 15.62 
1.5 0 – 3 3/256 = 11.71 
1.28 0 – 2.56 2.56/256 = 10 
1.0 0 – 2 2/256 = 7.81 
0.5 0 – 1 1/256 = 3.90
. D0 - D7 
D0 - D7, chân số 18 – 11, là các chân ra dữ liệu số (D7 là bit cao nhất MSB và D0 là 
bit thấp nhất LSB). Các chân này đƣợc đệm ba trạng thái và dữ liệu đã đƣợc chuyển 
đổi chỉ đƣợc truy cập khi chân CS = 0 và chân RD đƣa xuống mức thấp. 
.CÁC BƢỚC CỦA QUÁ TRÌNH CHUYỂN ĐỔI. 
Đặt WR =RD=1; 
Bắt đầu biến đổi. Đặt WR=0, trễ( )ms. 
Đặt lại WR=1; 
Phát hiện điểm kết thúc của quá trình biến đổi khi INTR xuống mức thấp. (đƣợc sử dụng bởi ngắt) 
Đặt RD=0 và đọc dữ liệu từ DB0=>DB7. 
Đặt RD=1. => kết thúc chu trình. 
2.4 Hiển thị ( LCD 16x2) 
2.4.1 cấu tạo 
Chức năng các chân của Module LCD 16x2: 
Chân số 
Ký hiệu 
Mức logic 
I/O 
Chức năng 
1 
Vss 
- 
- 
Nguồn cung cấp(GND) 
2 
Vdd 
- 
- 
Nguồn cung cấp(+5V) 
3 
Vee 
- 
I 
Điện áp để điều chỉnh độ tƣơng phản 
4 
RS 
0/1 
I 
Lựa chọn thanh ghi 
0= thanh ghi lệnh 
1=thanh ghi dữ liệu 
5 
R/W 
0/1 
I 
0=ghi vào LCD module 
1=đọc từ LCD module 
6 
E 
1,1=>0 
I 
Tín hiệu cho phép 
7 
DB1 
0/1 
I/O 
Data bus line 0(LSB) 
8 
DB2 
0/1 
I/O 
Data bus line1 
9 
DB3 
0/1 
I/O 
Data bus line2 
10 
DB4 
0/1 
I/O 
Data bus line3 
11 
DB5 
0/1 
I/O 
Data bus line4 
12 
DB6 
0/1 
I/O 
Data bus line5 
13 
DB7 
0/1 
I/O 
Data bus line6 
14 
DB8 
0/1 
I/O 
Data bus line7(MSB) 
15 
Vcc 
- 
- 
Nguồn cung cấp 
16 
GND 
- 
- 
mass 
2.4.2 mạch trong đồ án:
2.4.3 nguyên tắc hiển thị ký tự trên LCD 
một chƣơng trình hiển thị ký tự trên LCD sẽ đi theo bốn bƣớc sau: 
1) Xóa toàn bộ màn hình. 
2) Đặt chế độ hiển thị. 
3) Đặt vị trí con trỏ (nơi bắt đầu của ký tự hiển thị). 
4) Hiển thị ký tự. 
Chú ý: 
+Các bƣớc 3, 4 có thể lặp lại nhiều lần nếu cần hiển thị nhiều ký tự. 
+ Mỗi khi thực hiện ghi lệnh hoặc ghi dữ liệu hiển thị lên LCD cần phải kiểm tra cờ bận trƣớc. Vì vậy, cần phải chủ động phân phối thời gian khi ra lệnh cho LCD( ví dụ sau khi xóa màn hình sau khoảng 2ms mới ra lệnh khác vì thời gian để LCD xóa màn hình là 1,64ms).+chế độ hiển thị mặc định sẽ là hiển thị dịch, vị trí con trỏ mặc định sẽ là đầu dòng thứ nhất. 
2.4.4 mã lệnh của LCD HD4480 
Lệnh 
Mã lệnh 
Mô tả 
Thời gian thi hành 
RS 
R/ W 
DB0 
DB1 
DB2 
DB3 
DB4 
DB5 
DB6 
DB7 
Xóa màn hình 
0 
0 
0 
0 
0 
0 
0 
0 
0 
1 
Xóa màn hình đƣa con trỏ về vị trí đầu 
1.64ms 
Đƣa con trỏ về vị trí đầu 
0 
0 
0 
0 
0 
0 
0 
0 
1 
x 
Đƣa con trỏ về vị trí đầu 
1.64ms 
Thiết lập chế độ 
0 
0 
0 
0 
0 
0 
0 
1 
I/D 
S 
Thiết lập hƣớng dịch chuyển con trỏ(I/D), dịch hiển thị(S) 
40us 
Bật tắt hiển thị 
0 
0 
0 
0 
0 
0 
1 
D 
C 
B 
Bật tắt hiển thị, con trỏ; bật tắt chế độ nhấp nháy con trỏ 
40us 
Dịch con trỏ hiển thị 
0 
0 
0 
0 
0 
1 
S/C 
R/L 
* 
* 
Thiết lập chiều dịch chuyển của con trỏ và hiển thị 
40us
Thiết lập chức năng 
0 
0 
0 
0 
1 
DL 
N 
F 
* 
* 
Thiết lập độ dài của dữ liệu, số dòng và font chữ 
40us 
Thiết lập địa chỉ CGRAM 
0 
0 
0 
1 
CGRAM address 
Thiết lập địa chỉ CGRAM 
40us 
Thiết lập địa chỉ DDRAM 
0 
0 
1 
DDRAM address 
Thiết lập địa chỉ DDRAM 
40us 
Đọc cờ báo bận và địa chỉ CGRAM/ 
DDRAM 
0 
1 
BF 
CGRAM/ DDRAM address 
Đọc cờ báo bận và địa chỉ của CGRAM hoặc DDRAM( tùy vào lệnh trƣớc đó) 
40us 
Ghi CGRAM/ 
DDRAM 
1 
0 
Write data 
Ghi dữ liệu vào CGRAM hoặc DDRAM. 
40us 
Đọc CGRAM/ 
DDRAM 
1 
1 
Read data 
Đọc dữ liệu từ CGRAM hoặc DDRAM 
40us 
2.4.5 các bit viết tắt trong mã lệnh: 
Tên bit 
Mô tả 
I/D 
0=không dịch chuyển vị trí con trỏ 
1=dịch chuyển vị trí con trỏ 
S 
=0 không dịch chuyển hiển thị 
=1 dịch chuyển hiển thị 
D 
0=tắt hiển thị 
=1 bật hiển thị 
C 
0=tắt con trỏ 
=1 bật con trỏ 
B 
0=con trỏ không nhấp nháy 
=1 con trỏ nhấp nháy 
S/C 
0=di chuyển con trỏ 
=1 dịch chuyển hiển thị 
R/L 
0= dịch trái 
=1 dịch phải 
DL 
0=chế độ 4bit dữ liệu 
=1 chế độ 8bit dữ liệu 
N 
0=1 dòng 
1= 2 dòng 
F 
0= font 5x7 
1= font 5x10 
BF 
0= không bận 
1= đang bận 
2.5 Khối ổn áp dùng IC 7805:
Chƣơng II 
Quá trình thực hiện 
I. Lập trình cho vi điều khiển: 
#include<REGX51.H> 
#include<stdio.h> 
sbit int_adc=P2^3; 
sbit rw_adc=P2^4; 
sbit rd_adc=P2^5; 
sbit EN_lcd=P2^2; 
sbit RW_lcd=P2^1; 
sbit RS_lcd=P2^0; 
sbit THANG1=P1^0; 
sbit THANG2=P1^1; 
sbit THANG3=P1^2; 
unsigned char x; 
float volt; 
void delay(unsigned int time) 
{ 
unsigned int i; 
for(i=0;i<time;++i); 
} 
void busy_flag(void) 
{ 
P0=0xff; 
RW_lcd=1; 
RS_lcd=0; 
do 
{ 
EN_lcd=1; 
delay(50); 
EN_lcd=0; 
x=P0; 
x=x&&0x80; //giu lai bit D7 de so sanh 
} 
while(x==0x80);// cho bit D7 bang 0 thi thoat 
} 
void write_command( unsigned char lcd_command) 
{ 
busy_flag(); 
P0=lcd_command; 
RW_lcd=0; 
RS_lcd=0; 
EN_lcd=1; 
delay(50); 
EN_lcd=0; 
delay(50); 
} 
void write_data(unsigned char lcd_data) 
{ 
busy_flag(); 
P0=lcd_data; 
RW_lcd=0; 
RS_lcd=1;
EN_lcd=1; 
delay(50); 
EN_lcd=0; 
delay(50); 
} 
void write_string(char *s) 
{ 
while(*s) 
{ 
write_data(*s); 
s++; 
} 
} 
void thiet_lap_ban_dau(void) 
{ 
write_command(0x03);//dua con tro ve vi tri dau dong 
write_command(0x038);//2dong,font 5*7 
write_command(0x06);//dich con tro sang phai 
write_command(0x0e);//bat hien thi,con tro nhap nhay 
} 
void hienthi() 
{ 
int tram,chuc,donvi,phan,phan1,phan2; 
int n; 
n=(int)(volt*100); 
tram=n/10000; 
chuc=(n%10000)/1000; 
donvi=((n%10000)%1000)/100; 
phan=((n%10000)%1000)%100; 
phan1=phan/10; 
phan2=phan%10; 
if(tram!=0) 
write_data(48+tram); 
if((tram!=0)&&(chuc==0)&&(donvi==0)) 
write_data(48); 
if((tram!=0)&&(chuc==0)&&(donvi!=0)) 
write_data(48); 
if(chuc!=0) 
write_data(48+chuc); 
if((donvi!=0)||(phan1!=0)||(phan2!=0)) 
{ 
write_data(48+donvi); 
write_data('.'); 
write_data(48+phan1); 
write_data(48+phan2); 
} 
if((donvi==0)&&(phan1==0)&&(phan2==0)) 
write_data(48); 
} 
void main(void) 
{ 
thiet_lap_ban_dau(); 
P3=0xff;
while(1) 
{ 
write_command(0x01);//xoa man hinh 
write_command(0x80);//tro ve dau dong thu nhat 
write_string("DIEN AP:"); 
rd_adc=0;//cong dem 3 trang thai o dau ra Dout luon mo 
rw_adc=0;//bat dau bien doi 
delay(3); 
rw_adc=1; 
while(int_adc==0); 
x=P3; 
if(THANG1==0) 
{ 
volt=(float)(x*5)/255; 
if((volt<0)||(volt>2.5)) 
{ 
write_command(0xc0);//tro ve dau dong thu hai 
write_string(" KHONG DO DUOC "); 
delay(50000); 
} 
else 
{ 
hienthi(); 
write_string("V"); 
write_command(0xc0);//tro ve dau dong thu hai 
write_string("--HAN-THANG-TU--"); 
delay(50000); 
} 
} 
if(THANG2==0) 
{ 
volt=(float)(x*50)/255; 
if((volt<0)||(volt>25)) 
{ 
write_command(0xc0);//tro ve dau dong thu hai 
write_string(" KHONG DO DUOC "); 
delay(50000); 
} 
else 
{ 
hienthi(); 
write_string("V"); 
write_command(0xc0);//tro ve dau dong thu hai 
write_string("--HAN-THANG-TU--"); 
delay(50000); 
} 
} 
if(THANG3==0) 
{ 
volt=(float)(x*500)/255; 
if((volt<0)||(volt>250)) 
{ 
write_command(0xc0);//tro ve dau dong thu hai
write_string(" KHONG DO DUOC "); 
delay(50000); 
} 
else 
{ 
hienthi(); 
write_string("V"); 
write_command(0xc0);//tro ve dau dong thu hai 
write_string("--HAN-THANG-TU--"); 
delay(50000); 
} 
} 
} 
}

More Related Content

What's hot

MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)
MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)
MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)nataliej4
 
Mô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiềuMô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiềuThanh Hoa
 
Đề tài_ Thiết kế mạch nghịch lưu.docx
Đề tài_ Thiết kế mạch nghịch lưu.docxĐề tài_ Thiết kế mạch nghịch lưu.docx
Đề tài_ Thiết kế mạch nghịch lưu.docxMan_Ebook
 
Chuong 05 transistor bjt
Chuong 05 transistor bjtChuong 05 transistor bjt
Chuong 05 transistor bjtJean Okio
 
Kĩ thuật đo lường
Kĩ thuật đo lường Kĩ thuật đo lường
Kĩ thuật đo lường Vũ Quang
 
Đồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba pha
Đồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba phaĐồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba pha
Đồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba phanataliej4
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Vũ Anh
 
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...Viết thuê báo cáo thực tập giá rẻ
 
Huong dan su dung phan mem Pspice
Huong dan su dung phan mem PspiceHuong dan su dung phan mem Pspice
Huong dan su dung phan mem PspiceNhu Ngoc Phan Tran
 
Công thức Máy điện 1 - Chương 2 - Máy biến áp
Công thức Máy điện 1 - Chương 2 - Máy biến ápCông thức Máy điện 1 - Chương 2 - Máy biến áp
Công thức Máy điện 1 - Chương 2 - Máy biến ápMan_Ebook
 
Tai lieu S7-1200.pdf
Tai lieu S7-1200.pdfTai lieu S7-1200.pdf
Tai lieu S7-1200.pdfMan_Ebook
 
đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659
đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659
đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659nataliej4
 
[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử lí[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử líHong Phuoc Nguyen
 
Bài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự độngBài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự độngNguyễn Nam Phóng
 
(Led nháy theo nhạc) báo cáo đồ án điện tử viễn thông 1
(Led nháy theo nhạc) báo cáo đồ án điện tử   viễn thông 1(Led nháy theo nhạc) báo cáo đồ án điện tử   viễn thông 1
(Led nháy theo nhạc) báo cáo đồ án điện tử viễn thông 1Huy Tuong
 
Chuong 04 mach logic
Chuong 04 mach logicChuong 04 mach logic
Chuong 04 mach logicAnh Ngoc Phan
 

What's hot (20)

ĐỒ ÁN: Thiết kế mạch đếm sản phẩm dùng cảm biến hồng ngoại!
ĐỒ ÁN: Thiết kế mạch đếm sản phẩm dùng cảm biến hồng ngoại!ĐỒ ÁN: Thiết kế mạch đếm sản phẩm dùng cảm biến hồng ngoại!
ĐỒ ÁN: Thiết kế mạch đếm sản phẩm dùng cảm biến hồng ngoại!
 
MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)
MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)
MẠCH KHUẾCH ĐẠI CÔNG SUẤT ÂM THANH TDA2030A File Word (Kèm File PROTEUS)
 
Mô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiềuMô phỏng động cơ điện 1 chiều
Mô phỏng động cơ điện 1 chiều
 
Đề tài_ Thiết kế mạch nghịch lưu.docx
Đề tài_ Thiết kế mạch nghịch lưu.docxĐề tài_ Thiết kế mạch nghịch lưu.docx
Đề tài_ Thiết kế mạch nghịch lưu.docx
 
Chuong 05 transistor bjt
Chuong 05 transistor bjtChuong 05 transistor bjt
Chuong 05 transistor bjt
 
Kĩ thuật đo lường
Kĩ thuật đo lường Kĩ thuật đo lường
Kĩ thuật đo lường
 
Đồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba pha
Đồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba phaĐồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba pha
Đồ án điện tử công suất: Thiết kế bộ chỉnh lưu hình tia ba pha
 
Đề tài: Đồ án mạch cảm biến ánh sáng, HAY
Đề tài: Đồ án mạch cảm biến ánh sáng, HAYĐề tài: Đồ án mạch cảm biến ánh sáng, HAY
Đề tài: Đồ án mạch cảm biến ánh sáng, HAY
 
Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520Tai lieu tra_cuu_pic 18f4520
Tai lieu tra_cuu_pic 18f4520
 
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
Đồ án tốt nghiệp điện tử Điều khiển và giám sát thiết bị điện gia đình - sdt/...
 
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PIDĐề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
Đề tài: Hệ thống điều khiển tốc độ động cơ DC sử dụng bộ PID
 
Huong dan su dung phan mem Pspice
Huong dan su dung phan mem PspiceHuong dan su dung phan mem Pspice
Huong dan su dung phan mem Pspice
 
Công thức Máy điện 1 - Chương 2 - Máy biến áp
Công thức Máy điện 1 - Chương 2 - Máy biến ápCông thức Máy điện 1 - Chương 2 - Máy biến áp
Công thức Máy điện 1 - Chương 2 - Máy biến áp
 
Đề tài: Hệ thống điều khiển nhiệt độ bằng máy tính qua card, HAY
Đề tài: Hệ thống điều khiển nhiệt độ bằng máy tính qua card, HAYĐề tài: Hệ thống điều khiển nhiệt độ bằng máy tính qua card, HAY
Đề tài: Hệ thống điều khiển nhiệt độ bằng máy tính qua card, HAY
 
Tai lieu S7-1200.pdf
Tai lieu S7-1200.pdfTai lieu S7-1200.pdf
Tai lieu S7-1200.pdf
 
đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659
đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659
đồ áN mạch điều khiển cho chỉnh lưu cầu ba pha 1439659
 
[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử lí[Cntt] bài giảng kĩ thuật vi xử lí
[Cntt] bài giảng kĩ thuật vi xử lí
 
Bài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự độngBài giảng kỹ thuật điều khiển tự động
Bài giảng kỹ thuật điều khiển tự động
 
(Led nháy theo nhạc) báo cáo đồ án điện tử viễn thông 1
(Led nháy theo nhạc) báo cáo đồ án điện tử   viễn thông 1(Led nháy theo nhạc) báo cáo đồ án điện tử   viễn thông 1
(Led nháy theo nhạc) báo cáo đồ án điện tử viễn thông 1
 
Chuong 04 mach logic
Chuong 04 mach logicChuong 04 mach logic
Chuong 04 mach logic
 

Viewers also liked

Chương 6: Nguyên lý LCD
Chương 6: Nguyên lý LCDChương 6: Nguyên lý LCD
Chương 6: Nguyên lý LCDviendongcomputer
 
Bao cao do an
Bao cao do an Bao cao do an
Bao cao do an Thao Thao
 
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản  - linh kiện điện tửGiáo trình tiếng việt điện tử cơ bản  - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tửHuytraining
 
Điều khiển động cơ sử dụng IC MCP4921
Điều khiển động cơ sử dụng IC MCP4921Điều khiển động cơ sử dụng IC MCP4921
Điều khiển động cơ sử dụng IC MCP4921Pham Hoang
 
57080715 dung-7805-như-thế-nao-la-hợp-lý
57080715 dung-7805-như-thế-nao-la-hợp-lý57080715 dung-7805-như-thế-nao-la-hợp-lý
57080715 dung-7805-như-thế-nao-la-hợp-lýtagbagtroj
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucmster_dang
 
Gioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picGioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picCu Bi
 
Vi dieukhien pic
Vi dieukhien picVi dieukhien pic
Vi dieukhien picmisuki_taro
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Ky Nguyen Ad
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Mr Giap
 
Tìm hiểu về đồng hồ vạn năng điện
Tìm hiểu về đồng hồ vạn năng điệnTìm hiểu về đồng hồ vạn năng điện
Tìm hiểu về đồng hồ vạn năng điệnLong Nguyễn
 
1. english sound system 2011
1. english sound system 20111. english sound system 2011
1. english sound system 2011Trang Đinh Văn
 
Các cách trả lời những câu hỏi thông dụng
Các cách trả lời những câu hỏi thông dụngCác cách trả lời những câu hỏi thông dụng
Các cách trả lời những câu hỏi thông dụngTiếng Anh Lê Nguyệt
 
托福博客网&Zinch中国赠送书目录201203
托福博客网&Zinch中国赠送书目录201203托福博客网&Zinch中国赠送书目录201203
托福博客网&Zinch中国赠送书目录201203shenchengfei
 
GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014
GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014
GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014Viet Nam Popodoo
 
Hướng dẫn cách học Effortless English
Hướng dẫn cách học Effortless English Hướng dẫn cách học Effortless English
Hướng dẫn cách học Effortless English Tiếng Anh Lê Nguyệt
 

Viewers also liked (20)

Chương 6: Nguyên lý LCD
Chương 6: Nguyên lý LCDChương 6: Nguyên lý LCD
Chương 6: Nguyên lý LCD
 
Bao cao do an
Bao cao do an Bao cao do an
Bao cao do an
 
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản  - linh kiện điện tửGiáo trình tiếng việt điện tử cơ bản  - linh kiện điện tử
Giáo trình tiếng việt điện tử cơ bản - linh kiện điện tử
 
Điều khiển động cơ sử dụng IC MCP4921
Điều khiển động cơ sử dụng IC MCP4921Điều khiển động cơ sử dụng IC MCP4921
Điều khiển động cơ sử dụng IC MCP4921
 
57080715 dung-7805-như-thế-nao-la-hợp-lý
57080715 dung-7805-như-thế-nao-la-hợp-lý57080715 dung-7805-như-thế-nao-la-hợp-lý
57080715 dung-7805-như-thế-nao-la-hợp-lý
 
Bai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautrucBai 001 vxl_pic_cautruc
Bai 001 vxl_pic_cautruc
 
Gioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-picGioi thieu-ve-vi-dieu-khien-pic
Gioi thieu-ve-vi-dieu-khien-pic
 
Vi dieu khien_pic
Vi dieu khien_picVi dieu khien_pic
Vi dieu khien_pic
 
Vi dieukhien pic
Vi dieukhien picVi dieukhien pic
Vi dieukhien pic
 
Bao cao vdk_va_pic
Bao cao vdk_va_picBao cao vdk_va_pic
Bao cao vdk_va_pic
 
ĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PIC
ĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PICĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PIC
ĐỒ ÁN TỐT NGHIỆP LẬP TRÌNH VDK PIC
 
Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr Giáo trình vi điều khiển avr
Giáo trình vi điều khiển avr
 
Chuong2 cấu trúc phần cứng 8051
Chuong2 cấu trúc phần cứng 8051Chuong2 cấu trúc phần cứng 8051
Chuong2 cấu trúc phần cứng 8051
 
Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52Vi Điều Khiển Ứng Dụng AT89s52
Vi Điều Khiển Ứng Dụng AT89s52
 
Tìm hiểu về đồng hồ vạn năng điện
Tìm hiểu về đồng hồ vạn năng điệnTìm hiểu về đồng hồ vạn năng điện
Tìm hiểu về đồng hồ vạn năng điện
 
1. english sound system 2011
1. english sound system 20111. english sound system 2011
1. english sound system 2011
 
Các cách trả lời những câu hỏi thông dụng
Các cách trả lời những câu hỏi thông dụngCác cách trả lời những câu hỏi thông dụng
Các cách trả lời những câu hỏi thông dụng
 
托福博客网&Zinch中国赠送书目录201203
托福博客网&Zinch中国赠送书目录201203托福博客网&Zinch中国赠送书目录201203
托福博客网&Zinch中国赠送书目录201203
 
GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014
GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014
GIÁO TRÌNH TIẾNG ANH CHO BÉ - BÚT THÔNG MINH POPODOO SMART ENGLISH MỚI NHẤT 2014
 
Hướng dẫn cách học Effortless English
Hướng dẫn cách học Effortless English Hướng dẫn cách học Effortless English
Hướng dẫn cách học Effortless English
 

Similar to Đồ Án Đo Điện Áp Hiển Thị Trên LCD

Tailieu.vncty.com do-an-vi-dieu-khien
Tailieu.vncty.com   do-an-vi-dieu-khienTailieu.vncty.com   do-an-vi-dieu-khien
Tailieu.vncty.com do-an-vi-dieu-khienTrần Đức Anh
 
Báo cáo thực tập công nhân hệ thống báo động phát hiện rò rỉ khí gas
Báo cáo thực tập công nhân   hệ thống báo động phát hiện rò rỉ khí gas Báo cáo thực tập công nhân   hệ thống báo động phát hiện rò rỉ khí gas
Báo cáo thực tập công nhân hệ thống báo động phát hiện rò rỉ khí gas nataliej4
 
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505Nguyen Luc
 
BAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxBAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxVnHun9
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxBùi Ngọc Bảo
 
đê Cương vi mach sô
đê Cương vi mach sôđê Cương vi mach sô
đê Cương vi mach sôCao Phong
 
418 giaotrinh avr
418 giaotrinh avr418 giaotrinh avr
418 giaotrinh avranhhoi12345
 
Giaotrinh avr tech24.vn
Giaotrinh avr tech24.vnGiaotrinh avr tech24.vn
Giaotrinh avr tech24.vnbibibobo2007
 
Thiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcdThiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcdnataliej4
 
Thiết kế biển quảng cáo, biển vẫy
Thiết kế biển quảng cáo, biển vẫyThiết kế biển quảng cáo, biển vẫy
Thiết kế biển quảng cáo, biển vẫytrungnb22
 
Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051Brooklyn Abbott
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thuTrần Đức Anh
 
BÁO cáo học tập về PLC MITSHUBISHI FX3U.pdf
BÁO cáo học tập về PLC MITSHUBISHI FX3U.pdfBÁO cáo học tập về PLC MITSHUBISHI FX3U.pdf
BÁO cáo học tập về PLC MITSHUBISHI FX3U.pdfMan_Ebook
 
BÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdf
BÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdfBÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdf
BÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdfMan_Ebook
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thư Viện Số
 
Tài liệu PCL tổng hợp
Tài liệu PCL tổng hợpTài liệu PCL tổng hợp
Tài liệu PCL tổng hợpMinh Hoàng
 

Similar to Đồ Án Đo Điện Áp Hiển Thị Trên LCD (20)

Tailieu.vncty.com do-an-vi-dieu-khien
Tailieu.vncty.com   do-an-vi-dieu-khienTailieu.vncty.com   do-an-vi-dieu-khien
Tailieu.vncty.com do-an-vi-dieu-khien
 
Báo cáo thực tập công nhân hệ thống báo động phát hiện rò rỉ khí gas
Báo cáo thực tập công nhân   hệ thống báo động phát hiện rò rỉ khí gas Báo cáo thực tập công nhân   hệ thống báo động phát hiện rò rỉ khí gas
Báo cáo thực tập công nhân hệ thống báo động phát hiện rò rỉ khí gas
 
Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc
Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.docĐồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc
Đồ án asembly thiết kế bộ đếm sản phẩm 6 kênh dùng on chip 89c51.doc
 
Nhóm-HM.docx
Nhóm-HM.docxNhóm-HM.docx
Nhóm-HM.docx
 
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
Do an lap_trinh_c_cho_vi_dieu_khien_8051_8462_1505
 
BAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docxBAOCAOTHUCTAPCOBAN.docx
BAOCAOTHUCTAPCOBAN.docx
 
Cau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xxCau truc phan cung pic16 f8xx
Cau truc phan cung pic16 f8xx
 
đê Cương vi mach sô
đê Cương vi mach sôđê Cương vi mach sô
đê Cương vi mach sô
 
418 giaotrinh avr
418 giaotrinh avr418 giaotrinh avr
418 giaotrinh avr
 
Giaotrinh avr tech24.vn
Giaotrinh avr tech24.vnGiaotrinh avr tech24.vn
Giaotrinh avr tech24.vn
 
Thiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcdThiết kế mạch đo và hiển thị nhiệt độ trên lcd
Thiết kế mạch đo và hiển thị nhiệt độ trên lcd
 
Chuong 2
Chuong 2Chuong 2
Chuong 2
 
Thiết kế biển quảng cáo, biển vẫy
Thiết kế biển quảng cáo, biển vẫyThiết kế biển quảng cáo, biển vẫy
Thiết kế biển quảng cáo, biển vẫy
 
Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051Đề tài Lập trình C cho họ vi điều khiển 8051
Đề tài Lập trình C cho họ vi điều khiển 8051
 
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thuTailieu.vncty.com   thiet-ke-dong-ho-thoi-gian-thu
Tailieu.vncty.com thiet-ke-dong-ho-thoi-gian-thu
 
BÁO cáo học tập về PLC MITSHUBISHI FX3U.pdf
BÁO cáo học tập về PLC MITSHUBISHI FX3U.pdfBÁO cáo học tập về PLC MITSHUBISHI FX3U.pdf
BÁO cáo học tập về PLC MITSHUBISHI FX3U.pdf
 
BÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdf
BÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdfBÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdf
BÁO CÁO ĐỒ ÁN MÔN HỌC MATRIX LED NHẬP TỪ BÀN PHÍM.pdf
 
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
Thiết kế đồng hồ thời gian thực sử dụng DS1307, hiển thị trên 6 Led 7 thanh v...
 
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đĐề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
Đề tài: Đo tốc độ động cơ dùng 8051, HAY, 9đ
 
Tài liệu PCL tổng hợp
Tài liệu PCL tổng hợpTài liệu PCL tổng hợp
Tài liệu PCL tổng hợp
 

More from Mr Giap

Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRViết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRMr Giap
 
Tài Liệu Điều Khiển Từ Xa Bằng Hồng Ngoại
Tài Liệu Điều Khiển Từ Xa Bằng Hồng NgoạiTài Liệu Điều Khiển Từ Xa Bằng Hồng Ngoại
Tài Liệu Điều Khiển Từ Xa Bằng Hồng NgoạiMr Giap
 
LED Vu-Metter LM3915 and LM386
LED Vu-Metter LM3915 and LM386LED Vu-Metter LM3915 and LM386
LED Vu-Metter LM3915 and LM386Mr Giap
 
1500 Câu Hỏi Về Điện
1500 Câu Hỏi Về Điện1500 Câu Hỏi Về Điện
1500 Câu Hỏi Về ĐiệnMr Giap
 
15 Ghép nối 8255
15 Ghép nối 825515 Ghép nối 8255
15 Ghép nối 8255Mr Giap
 
13 DC Bước - Bàn phím DAC
13 DC Bước - Bàn phím DAC13 DC Bước - Bàn phím DAC
13 DC Bước - Bàn phím DACMr Giap
 
12 LCD ADC - Cảm biến
12 LCD ADC - Cảm biến12 LCD ADC - Cảm biến
12 LCD ADC - Cảm biếnMr Giap
 
11 Lập trình ngắt
11 Lập trình ngắt11 Lập trình ngắt
11 Lập trình ngắtMr Giap
 
10 Truyền thông nối tiếp
10 Truyền thông nối tiếp10 Truyền thông nối tiếp
10 Truyền thông nối tiếpMr Giap
 
09 Bộ đếm và định thời
09 Bộ đếm và định thời09 Bộ đếm và định thời
09 Bộ đếm và định thờiMr Giap
 
08 Lệnh một Bit
08 Lệnh một Bit08 Lệnh một Bit
08 Lệnh một BitMr Giap
 
07 Lệnh Logic
07 Lệnh Logic07 Lệnh Logic
07 Lệnh LogicMr Giap
 
05 Chế độ danh địa chỉ
05 Chế độ danh địa chỉ05 Chế độ danh địa chỉ
05 Chế độ danh địa chỉMr Giap
 
04 Lập trình cổng vào ra
04 Lập trình cổng vào ra04 Lập trình cổng vào ra
04 Lập trình cổng vào raMr Giap
 
03 Các lệnh nháy
03 Các lệnh nháy03 Các lệnh nháy
03 Các lệnh nháyMr Giap
 
02 Lập trình hợp ngữ 8051
02 Lập trình hợp ngữ 805102 Lập trình hợp ngữ 8051
02 Lập trình hợp ngữ 8051Mr Giap
 
01 Các bộ Vi Điều Khiển 8051
01 Các bộ Vi Điều Khiển 805101 Các bộ Vi Điều Khiển 8051
01 Các bộ Vi Điều Khiển 8051Mr Giap
 
14 Ghép nối bộ nhớ ngoài
14 Ghép nối bộ nhớ ngoài14 Ghép nối bộ nhớ ngoài
14 Ghép nối bộ nhớ ngoàiMr Giap
 
Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051Mr Giap
 
Bảng tra cứu các phần tử bán dẫn và linh kiện điện tử
Bảng tra cứu các phần tử bán dẫn và linh kiện điện tửBảng tra cứu các phần tử bán dẫn và linh kiện điện tử
Bảng tra cứu các phần tử bán dẫn và linh kiện điện tửMr Giap
 

More from Mr Giap (20)

Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVRViết Ngôn Ngữ Lập Trình 8051 PIC AVR
Viết Ngôn Ngữ Lập Trình 8051 PIC AVR
 
Tài Liệu Điều Khiển Từ Xa Bằng Hồng Ngoại
Tài Liệu Điều Khiển Từ Xa Bằng Hồng NgoạiTài Liệu Điều Khiển Từ Xa Bằng Hồng Ngoại
Tài Liệu Điều Khiển Từ Xa Bằng Hồng Ngoại
 
LED Vu-Metter LM3915 and LM386
LED Vu-Metter LM3915 and LM386LED Vu-Metter LM3915 and LM386
LED Vu-Metter LM3915 and LM386
 
1500 Câu Hỏi Về Điện
1500 Câu Hỏi Về Điện1500 Câu Hỏi Về Điện
1500 Câu Hỏi Về Điện
 
15 Ghép nối 8255
15 Ghép nối 825515 Ghép nối 8255
15 Ghép nối 8255
 
13 DC Bước - Bàn phím DAC
13 DC Bước - Bàn phím DAC13 DC Bước - Bàn phím DAC
13 DC Bước - Bàn phím DAC
 
12 LCD ADC - Cảm biến
12 LCD ADC - Cảm biến12 LCD ADC - Cảm biến
12 LCD ADC - Cảm biến
 
11 Lập trình ngắt
11 Lập trình ngắt11 Lập trình ngắt
11 Lập trình ngắt
 
10 Truyền thông nối tiếp
10 Truyền thông nối tiếp10 Truyền thông nối tiếp
10 Truyền thông nối tiếp
 
09 Bộ đếm và định thời
09 Bộ đếm và định thời09 Bộ đếm và định thời
09 Bộ đếm và định thời
 
08 Lệnh một Bit
08 Lệnh một Bit08 Lệnh một Bit
08 Lệnh một Bit
 
07 Lệnh Logic
07 Lệnh Logic07 Lệnh Logic
07 Lệnh Logic
 
05 Chế độ danh địa chỉ
05 Chế độ danh địa chỉ05 Chế độ danh địa chỉ
05 Chế độ danh địa chỉ
 
04 Lập trình cổng vào ra
04 Lập trình cổng vào ra04 Lập trình cổng vào ra
04 Lập trình cổng vào ra
 
03 Các lệnh nháy
03 Các lệnh nháy03 Các lệnh nháy
03 Các lệnh nháy
 
02 Lập trình hợp ngữ 8051
02 Lập trình hợp ngữ 805102 Lập trình hợp ngữ 8051
02 Lập trình hợp ngữ 8051
 
01 Các bộ Vi Điều Khiển 8051
01 Các bộ Vi Điều Khiển 805101 Các bộ Vi Điều Khiển 8051
01 Các bộ Vi Điều Khiển 8051
 
14 Ghép nối bộ nhớ ngoài
14 Ghép nối bộ nhớ ngoài14 Ghép nối bộ nhớ ngoài
14 Ghép nối bộ nhớ ngoài
 
Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051
 
Bảng tra cứu các phần tử bán dẫn và linh kiện điện tử
Bảng tra cứu các phần tử bán dẫn và linh kiện điện tửBảng tra cứu các phần tử bán dẫn và linh kiện điện tử
Bảng tra cứu các phần tử bán dẫn và linh kiện điện tử
 

Đồ Án Đo Điện Áp Hiển Thị Trên LCD

  • 1. BỘ CÔNG THƢƠNG TRƢỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA : ĐIỆN TỬ ĐỒ ÁN MÔN HỌC ĐỀ TÀI: THIẾT KẾ BỘ ĐO ĐIỆN ÁP Ở 3 DẢI ĐO 0-2.5V, 0-25V, 0-250V HIỂN THỊ TRÊN LCD. “Sai số cho phép là  10%” Giáo viên hướng dẫn: Nhóm sinh viên thực hiện: 1.Nguyễn Duy Hân 2.Trịnh Đình Thắng 3.Nguyễn Hữu Từ
  • 2. Mục lục Trang Mục lục……………………………………………………………………………2 Lời nói đầu………………………………………………………………………..2 Chƣơng I Mô tả ý tƣởng: mô hình ý niệm, xây dựng sơ đồ khối…………………...4 I. Sơ đồ khối,sơ đồ mạch nguyên lý và mạch in …………….....................4 II. Các vi mạch chính sử dụng trong từng khối và nguyên lý hoạt động của từng khối…………………………………………………………….….6 Chƣơng II Quá trình thực hiện……………………………………………………………..17 I. Code lập trình C cho vi điều khiển…………….………………………..18 II. Hình dạng sản phẩm thƣc tế hoàn thành…………………...................19 III.Tóm tắt bản báo cáo, những vấn đề chƣa làm đƣợc……….……..20
  • 3. LỜI NÓI ĐẦU Sự ra đời của các bộ vi xử lí nói chung,các bộ vi điều khiển nói riêng đã tạo ra một bƣớc ngoặt lớn trong việc thiết kế các hệ thống xử lí thông tin,đo lƣờng điều khiển và truyền thông.Kết quả là đã tạo ra đƣợc những sản phẩm nhƣ máy ảnh số,máy chơi nhạc MP3,đầu dĩa DVD,các bộ biến tần,PLC…ngày càng rẻ hơn,nhỏ gọn hơn,thông minh hơn và tiện dụng hơn. Hơn nữa,kỹ thuật vi điều khiển hiện nay rất phát triển, nó đƣợc ứng dụng vào rất nhiều lĩnh vực sản xuất công nghiệp, tự động hóa, trong đời sống và còn nhiều lĩnh vực khác nữa. So với kỹ thuật số thì kỹ thuật vi điểu khiển nhỏ gọn hơn rất nhiều do nó đƣợc tích hợp lại và có khả năng lập trình đƣợc để điều khiển. Nên rất tiện dụng và cơ động. Với tính ƣu việt của vi điều khiển thì trong phạm vi đồ án nhỏ này, chúng em chỉ dùng vi điều hiển để đo điện áp ở ba dải đo 0-2.5V , 0-25 , 250V , đồng thời cho hiển thị lên LCD. Mục đích của đề tài hƣớng đến: tạo ra bƣớc đầu cho sinh viên thử nghiệm những ứng dụng của vi điều khiển trong thực tiễn để rồi từ đó tìm tòi, phát triển nhiều ứng dụng khác trong đời sống hằng ngày cần đến. Việc thực hiện xong đồ án môn học bằng các kiến thức đã học, một số sách tham khảo và một số nguồn tài liệu khác nên không tránh khỏi những thiếu sót. Vì vậy nhóm rất mong đƣợc sự góp ý của thầy cô và các bạn.
  • 4. Chƣơng I Mô tả ý tƣởng,mô hình ý niệm,xây dựng sơ đồ khối I. Sơ đồ khối tổng quát,sơ đồ nguyên lý và mạch in 1.Sơ đồ khối tổng quát: KHỐI ĐIỀU CHẾ VÀ KHUẾCH ĐẠI KHỐI XỬ LÝ TRUNG TÂM: 8051 KHỐI CHUYỂN ĐỒI TƢƠNG TỰ SANG SỐ: ADC0804 KHỐI NGUỒN ỔN ÁP SỬ DỤNG IC7805 KHỐI HIỂN THỊ: SỬ DỤNG LCD ĐẦU RA ỨNG DỤNG (đo điện áp ở ba thang đo: 0-2.5 V, 0-25V va 0-250V)
  • 5. 2. Sơ đồ nguyên lý mô phỏng dùng proteus: 3. sơ đồ mạch in :
  • 6. II . Các vi mạch chính sử dụng trong từng khối và nguyên lý hoạt động của từng khối 1. Các vi mạch chính sử dụng trong từng khối 1. Khối xử lý trung tâm: AT89C52 2. Trong khối điều chế và khuếch đại: LM358 3. Khối chuyển đổi: ADC 0804 4. Khối hiển thị: LCD 5. Trong Khối ổn áp: IC7805 2. Cấu tạo và nguyên lý hoạt động cơ bản của từng vi mạch 2.1 Vi điều khiển AT89C52: 2.1.2 cấu tạo và chức năng các khối của AT89S52.  CPU( CPU centralprocessing unit) bao gồm:  Thanh ghi tích lũy A  Thanh ghi tích lũy phụ B  Đơn vị logic học (ALU)  Thanh ghi từ trạng thái chƣơng trình  Bốn băng thanh ghi  Con trỏ ngăn xếp  Bộ nhớ chƣơng trình( ROM) gồm 8Kbyte Flash.  Bộ nhớ dữ liệu( RAM) gồm 256 byte.  Bộ UART, có chức năng truyền nhận nối tiếp.  3 bộ Timer/Counter 16 bit thực hiện chức năng định thời và đếm sự kiện.  Khối điều khiển ngắt với 2 nguồn ngắt ngoài và 4 nguồn ngắt trong.  Bộ lập trình( ghi chƣơng trình lên Flash ROM) cho phép ngƣời sử dụng có thể nạp các chƣơng trình cho chíp mà không cần các bộ nạp chuyên dụng.  Bộ chia tần số với hệ số chia là 12.  4 cổng xuất nhập với 32 chân. b, chức năng các chân của AT89C52  Port 0( P0.0=>P0.7) Port 0 gồm 8 chân, ngoài chức năng xuất nhập, port 0 còn là bus đa hợp dữ liệu và địa chỉ( AD0-AD7), chức năng này sẽ đƣợc sử dụng khi 89c52 giao tiếp với các thiết bị ngoài có kiến trúc Bus nhƣ các vi mạch nhớ, mạch PIO…  Port 1( P1.0=>P1.7) Chức năng duy nhất của Port 1 là chức năng xuất nhập cũng nhƣ các Port khác. Port1 có thể xuất nhập theo bit và theo byte.  Port 2( P2.0=>P2.7) Port 2 ngoài chức năng là cổng vào/ra nhƣ Port 0 và 1 còn là byte cao của bus địa chỉ khi sử dụng bộ nhớ ngoài.
  • 7. Port 3 Mỗi chân trên Port 3 ngoài chức năng xuất nhập còn có một chức năng riêng, cụ thể nhƣ sau: Bit Tên Chức năng P3.0 RXD Dữ liệu nhận cho Port nối tiếp P3.1 TXD Dữ liệu truyền cho Port nối tiếp P3.2 INT0 Ngắt bên ngoài 0 P3.3 INT1 Ngắt ngoài 1 P3.4 TO Ngõ vào của Timer/counter0 P3.5 T1 Ngõ vào của Timer/counter1 P3.6 /WR Xung ghi bộ nhớ dữ liệu ngoài. P3.7 /RD Xung đọc bộ nhớ dữ liệu ngoài.  Chân /PSEN : là chân điều khiển đọc chƣơng trình ở bộ nhớ ngoài.  Chân ALE. ALE là tín hiệu điều khiển chốt địa chỉ có tần số bằng 1/6 tần số dao động của vi điều khiển. Tín hiệu ALE đƣợc dùng để cho phép vi mạch chốt bên ngoài nhƣ 7473.  Chân /EA. Tín hiệu /EA cho phép chọn bộ nhớ chƣơng trình là bộ nhớ trong hay ngoài. EA=1 thì thực hiện chƣơng trình trong RAM nội. EA=0 thực hiện ở RAM ngoài.  RST( reset) Ngõ vào reset trên chân số 9. khi RST=1 thì bộ vi điều khiển sẽ đƣợc khởi động lại thiết lập ban đầu.  XTAL1, XTAL2 2 chân này đƣợc nối song song với thạch anh tần số max=33 Mhz. Để tạo dao động cho bộ vi điều khiển.  Vcc, GND : cung cấp nguồn nuôi cho bộ vi điều khiển. cấp qua chân 20 và 40. 2.1.3 nguyên lý hoạt động +Chân 9 đƣợc nối với mạch reset. Khi nhấn SW1 thì bộ vi điều khiển sẽ đƣợc khởi động lại từ đầu. +điện trở băng U1: có tác dụng làm điện trở kéo lên nguồn. + chân 18-19 đƣợc nối // với thạch anh 12Mhz. mạch có nhiệm vụ tạo dao động cho vi điều khiển. +từ chân P2.0=>P2.2 lần lƣợt đƣợc nối với Vee, RS, RW của LCD. Có nhiệm vụ điều khiển hoạt động của LCD. +chân P2.3=>P2.5 : 3 chân này đƣợc nối với lần lƣợt 3 chân của ADC : chân RD (Read), chân WR (Write) và chân Ngắt INTR (Interupt). Nhiệm vụ điều khiển hoạt động của bộ chuyển đổi số - tƣơng tự. + chân P3.0=>P3.7. giao tiếp với ADC0804. Cổng P3 này có nhiệm vụ đọc điện áp thu đƣợc từ bộ chuyển đổi. +P0.0=>P0.7. Lần lƣợt đƣợc nối với đầu vào dữ liệu từ DB0=> DB7 của LCD. Có chức năng điều khiển hiển thị việc đo điện áp trên LCD . +P1.0=>P1.2 : đƣợc nối với switch kép để điều khiển chọn thang đo phù hợp. 2.2 Khuếch đại LM358: a, cấu tạo LM358 gồm có 2 con khuếch đại thuật toán: Con thứ 1: chân 2 ,3 vào, chân 1ra Con thứ 2: chân 5,6 vào, chân 7 ra Công dụng: khuếch đại điện áp và dòng điện nhận đƣợc từ LM35 để sau đó chuyển tiếp đến đầu vào IN của ADC 0804
  • 8. Sơ đồ cấu tạo: Tính toán và cân chỉnh: +tại OA2: Xét tại: N2: 3 0 R Un = R4 Un Ur =>Ur=Un . 3 3 4 R R  R . Xét tại P2: R1 Uv Up = R2 Up . => Up=Uv . 1 2 2 R R R  Mà coi nhƣ OA lý tƣởng. Uv=Up;  Ur=Uv. 3 3 4 R R  R . 1 2 2 R R R  ; Do điện áp đầu ra của bộ khuếch đại chỉ giới hạn trong khoảng từ 0-5V khi dùng nguồn đơn. Nên chọn giá trị R2= R4=3,9 K R1=R3= 1 K ;Khi đó Ur=Vin  4Uv; 2.3 Bộ chuyển đổi tƣơng tự-số: ADC 0804: 2.3.1 Cấu tạo: ADC 0804 là một bộ chuyển đổi tƣơng tự số. Gồm có 20 chân. DB0-DB7: là 8 chân ra dữ liệu. RD: lối vào đọc WR :lối vào ghi. INTR: lối ra ngắt. CLKR/CLKIN: các lối vào điều khiển xung nhịp. VIN: lối vào analog dƣơng
  • 9. 2.3.2 sơ đồ: Chip ADC0804 là bộ chuyển đổi tƣơng tự số thuộc họ ADC800 của h ãng National Semiconductor. Chip này cũng đƣợc nhiều hãng khác sản xuất. Chip có điện áp nuôi +5V và độ phân giải 8 bit. Ngoài độ phân giải thì thời gian chuyển đổi cũng là một tham số quan trọng khi đánh giá bộ ADC. Thời gian chuyển đổi đ ƣợc định nghĩa là thời gian mà bộ ADC cần để chuyển một đầu vào tƣơng tự thành một số nhị phân. Đối với ADC0804 thì thời gian chuyển đổi phụ thuộc vào tần số đồng hồ đƣợc cấp tới chân CLK và CLK IN và không bé hơn 110s. Các chân khác của ADC0804 có chức năng nhƣ sau: CS (Chip select) Chân số 1, là chân chọn Chip, đầu vào tích cực mức thấp đƣợc sử dụng để kích hoạt Chip ADC0804. Để truy cập ADC0804 thì chân này phải ở mức thấp. RD (Read) Chân số 2, là một tín hiệu vào, tích cực ở mức thấp. Các bộ chuyển đổi đầu v ào tƣơng tự thành số nhị phân và giữ nó ở một thanh ghi trong. RD đ ƣợc sử dụng để có dữ liệu đã đƣợc chyển đổi tới đầu ra của ADC0804. Khi CS = 0 nếu có một xung cao xuống thấp áp đến chân RD thì dữ liệu ra dạng số 8 bit đƣợc đƣa tới các chân dữ liệu (DB0 – DB7). WR (Write) Chân số 3, đây là chân vào tích cực mức thấp đƣợc dùng để báo cho ADC biết bắt đầu quá trình chuyển đổi. Nếu CS = 0 khi WR tạo ra xung cao xuống thấp th ì bộ ADC0804 bắt đầu quá trình chuyển đổi giá trị đầu vào tƣơng tự Vin về số nhị phân 8 bit. Khi việc chuyển đổi hoàn tất thì chân INTR đƣợc ADC hạ xuống thấp. CLK IN và CLK R CLK IN (chân số 4), là chân vào nối tới đồng hồ ngoài đƣợc sử dụng để tạo thời gian. Tuy nhiên ADC0804 cũng có một bộ tạo xung đồng hồ riêng. Để dùng đồng hồ riêng thì các chân CLK IN và CLK R (chân s ố 19) đƣợc nối với một tụ điện và một điện trở (nhƣ hình vẽ). Khi ấy tần số đƣợc xác định bằng biểu thức: Với R=10 k, C=150pF và tần số f=606 kHz và thời gian chuyển đổi là 110 s.
  • 10. Ngắt INTR (Interupt) Chân số 5, là chân ra tích cực mức thấp. Bình thƣờng chân này ở trạng thái cao và khi việc chuyển đổi hoàn tất thì nó xuống thấp để báo cho CPU biết l à dữ liệu chuyển đổi sẵn sàng để lấy đi. Sau khi INTR xuống thấp, cần đặt CS = 0 v à gửi một xung cao xuống thấp tới chân RD để đƣa dữ liệu ra. Vin (+) và Vin (-) Chân số 6 và chân số 7, đây là 2 đầu vào tƣơng tự vi sai, trong đó Vin = Vin (+) – Vin (-). Thông thƣờng Vin (-) đƣợc nối tới đất và Vin (+) đƣợc dùng làm đầu vào tƣộng tự và sẽ đƣợc chuyển đổi về dạng số. Vcc Chân số 20, là chân nguồn nuôi +5V. Chân này còn đƣợc dùng làm điện áp tham chiếu khi đầu vào Vref/2 để hở. Vref/2 Chân số 9, là chân điện áp đầu vào đƣợc dùng làm điện áp tham chiếu. Nếu chân này hở thì điện áp đầu vào tƣơng tự cho ADC0804 nằm trong dải 0 - +5V. Tuy nhiên, có nhiều ứng dụng mà đầu vòa tƣơng tự áp đến Vin khác với dải 0 - +5V. Chân Vref/2 đƣợc dùng để thực hiện các điện áp đầu ra khác 0 - +5V. Bảng quan hệ điện áp Vref/2 với Vin Vref/2 (V) Vin (V) Kích thƣớc bƣớc (mV) Hở 0 – 5 5/256 = 19.53 2.0 0 – 4 4/256 = 15.62 1.5 0 – 3 3/256 = 11.71 1.28 0 – 2.56 2.56/256 = 10 1.0 0 – 2 2/256 = 7.81 0.5 0 – 1 1/256 = 3.90
  • 11. . D0 - D7 D0 - D7, chân số 18 – 11, là các chân ra dữ liệu số (D7 là bit cao nhất MSB và D0 là bit thấp nhất LSB). Các chân này đƣợc đệm ba trạng thái và dữ liệu đã đƣợc chuyển đổi chỉ đƣợc truy cập khi chân CS = 0 và chân RD đƣa xuống mức thấp. .CÁC BƢỚC CỦA QUÁ TRÌNH CHUYỂN ĐỔI. Đặt WR =RD=1; Bắt đầu biến đổi. Đặt WR=0, trễ( )ms. Đặt lại WR=1; Phát hiện điểm kết thúc của quá trình biến đổi khi INTR xuống mức thấp. (đƣợc sử dụng bởi ngắt) Đặt RD=0 và đọc dữ liệu từ DB0=>DB7. Đặt RD=1. => kết thúc chu trình. 2.4 Hiển thị ( LCD 16x2) 2.4.1 cấu tạo Chức năng các chân của Module LCD 16x2: Chân số Ký hiệu Mức logic I/O Chức năng 1 Vss - - Nguồn cung cấp(GND) 2 Vdd - - Nguồn cung cấp(+5V) 3 Vee - I Điện áp để điều chỉnh độ tƣơng phản 4 RS 0/1 I Lựa chọn thanh ghi 0= thanh ghi lệnh 1=thanh ghi dữ liệu 5 R/W 0/1 I 0=ghi vào LCD module 1=đọc từ LCD module 6 E 1,1=>0 I Tín hiệu cho phép 7 DB1 0/1 I/O Data bus line 0(LSB) 8 DB2 0/1 I/O Data bus line1 9 DB3 0/1 I/O Data bus line2 10 DB4 0/1 I/O Data bus line3 11 DB5 0/1 I/O Data bus line4 12 DB6 0/1 I/O Data bus line5 13 DB7 0/1 I/O Data bus line6 14 DB8 0/1 I/O Data bus line7(MSB) 15 Vcc - - Nguồn cung cấp 16 GND - - mass 2.4.2 mạch trong đồ án:
  • 12. 2.4.3 nguyên tắc hiển thị ký tự trên LCD một chƣơng trình hiển thị ký tự trên LCD sẽ đi theo bốn bƣớc sau: 1) Xóa toàn bộ màn hình. 2) Đặt chế độ hiển thị. 3) Đặt vị trí con trỏ (nơi bắt đầu của ký tự hiển thị). 4) Hiển thị ký tự. Chú ý: +Các bƣớc 3, 4 có thể lặp lại nhiều lần nếu cần hiển thị nhiều ký tự. + Mỗi khi thực hiện ghi lệnh hoặc ghi dữ liệu hiển thị lên LCD cần phải kiểm tra cờ bận trƣớc. Vì vậy, cần phải chủ động phân phối thời gian khi ra lệnh cho LCD( ví dụ sau khi xóa màn hình sau khoảng 2ms mới ra lệnh khác vì thời gian để LCD xóa màn hình là 1,64ms).+chế độ hiển thị mặc định sẽ là hiển thị dịch, vị trí con trỏ mặc định sẽ là đầu dòng thứ nhất. 2.4.4 mã lệnh của LCD HD4480 Lệnh Mã lệnh Mô tả Thời gian thi hành RS R/ W DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 Xóa màn hình 0 0 0 0 0 0 0 0 0 1 Xóa màn hình đƣa con trỏ về vị trí đầu 1.64ms Đƣa con trỏ về vị trí đầu 0 0 0 0 0 0 0 0 1 x Đƣa con trỏ về vị trí đầu 1.64ms Thiết lập chế độ 0 0 0 0 0 0 0 1 I/D S Thiết lập hƣớng dịch chuyển con trỏ(I/D), dịch hiển thị(S) 40us Bật tắt hiển thị 0 0 0 0 0 0 1 D C B Bật tắt hiển thị, con trỏ; bật tắt chế độ nhấp nháy con trỏ 40us Dịch con trỏ hiển thị 0 0 0 0 0 1 S/C R/L * * Thiết lập chiều dịch chuyển của con trỏ và hiển thị 40us
  • 13. Thiết lập chức năng 0 0 0 0 1 DL N F * * Thiết lập độ dài của dữ liệu, số dòng và font chữ 40us Thiết lập địa chỉ CGRAM 0 0 0 1 CGRAM address Thiết lập địa chỉ CGRAM 40us Thiết lập địa chỉ DDRAM 0 0 1 DDRAM address Thiết lập địa chỉ DDRAM 40us Đọc cờ báo bận và địa chỉ CGRAM/ DDRAM 0 1 BF CGRAM/ DDRAM address Đọc cờ báo bận và địa chỉ của CGRAM hoặc DDRAM( tùy vào lệnh trƣớc đó) 40us Ghi CGRAM/ DDRAM 1 0 Write data Ghi dữ liệu vào CGRAM hoặc DDRAM. 40us Đọc CGRAM/ DDRAM 1 1 Read data Đọc dữ liệu từ CGRAM hoặc DDRAM 40us 2.4.5 các bit viết tắt trong mã lệnh: Tên bit Mô tả I/D 0=không dịch chuyển vị trí con trỏ 1=dịch chuyển vị trí con trỏ S =0 không dịch chuyển hiển thị =1 dịch chuyển hiển thị D 0=tắt hiển thị =1 bật hiển thị C 0=tắt con trỏ =1 bật con trỏ B 0=con trỏ không nhấp nháy =1 con trỏ nhấp nháy S/C 0=di chuyển con trỏ =1 dịch chuyển hiển thị R/L 0= dịch trái =1 dịch phải DL 0=chế độ 4bit dữ liệu =1 chế độ 8bit dữ liệu N 0=1 dòng 1= 2 dòng F 0= font 5x7 1= font 5x10 BF 0= không bận 1= đang bận 2.5 Khối ổn áp dùng IC 7805:
  • 14. Chƣơng II Quá trình thực hiện I. Lập trình cho vi điều khiển: #include<REGX51.H> #include<stdio.h> sbit int_adc=P2^3; sbit rw_adc=P2^4; sbit rd_adc=P2^5; sbit EN_lcd=P2^2; sbit RW_lcd=P2^1; sbit RS_lcd=P2^0; sbit THANG1=P1^0; sbit THANG2=P1^1; sbit THANG3=P1^2; unsigned char x; float volt; void delay(unsigned int time) { unsigned int i; for(i=0;i<time;++i); } void busy_flag(void) { P0=0xff; RW_lcd=1; RS_lcd=0; do { EN_lcd=1; delay(50); EN_lcd=0; x=P0; x=x&&0x80; //giu lai bit D7 de so sanh } while(x==0x80);// cho bit D7 bang 0 thi thoat } void write_command( unsigned char lcd_command) { busy_flag(); P0=lcd_command; RW_lcd=0; RS_lcd=0; EN_lcd=1; delay(50); EN_lcd=0; delay(50); } void write_data(unsigned char lcd_data) { busy_flag(); P0=lcd_data; RW_lcd=0; RS_lcd=1;
  • 15. EN_lcd=1; delay(50); EN_lcd=0; delay(50); } void write_string(char *s) { while(*s) { write_data(*s); s++; } } void thiet_lap_ban_dau(void) { write_command(0x03);//dua con tro ve vi tri dau dong write_command(0x038);//2dong,font 5*7 write_command(0x06);//dich con tro sang phai write_command(0x0e);//bat hien thi,con tro nhap nhay } void hienthi() { int tram,chuc,donvi,phan,phan1,phan2; int n; n=(int)(volt*100); tram=n/10000; chuc=(n%10000)/1000; donvi=((n%10000)%1000)/100; phan=((n%10000)%1000)%100; phan1=phan/10; phan2=phan%10; if(tram!=0) write_data(48+tram); if((tram!=0)&&(chuc==0)&&(donvi==0)) write_data(48); if((tram!=0)&&(chuc==0)&&(donvi!=0)) write_data(48); if(chuc!=0) write_data(48+chuc); if((donvi!=0)||(phan1!=0)||(phan2!=0)) { write_data(48+donvi); write_data('.'); write_data(48+phan1); write_data(48+phan2); } if((donvi==0)&&(phan1==0)&&(phan2==0)) write_data(48); } void main(void) { thiet_lap_ban_dau(); P3=0xff;
  • 16. while(1) { write_command(0x01);//xoa man hinh write_command(0x80);//tro ve dau dong thu nhat write_string("DIEN AP:"); rd_adc=0;//cong dem 3 trang thai o dau ra Dout luon mo rw_adc=0;//bat dau bien doi delay(3); rw_adc=1; while(int_adc==0); x=P3; if(THANG1==0) { volt=(float)(x*5)/255; if((volt<0)||(volt>2.5)) { write_command(0xc0);//tro ve dau dong thu hai write_string(" KHONG DO DUOC "); delay(50000); } else { hienthi(); write_string("V"); write_command(0xc0);//tro ve dau dong thu hai write_string("--HAN-THANG-TU--"); delay(50000); } } if(THANG2==0) { volt=(float)(x*50)/255; if((volt<0)||(volt>25)) { write_command(0xc0);//tro ve dau dong thu hai write_string(" KHONG DO DUOC "); delay(50000); } else { hienthi(); write_string("V"); write_command(0xc0);//tro ve dau dong thu hai write_string("--HAN-THANG-TU--"); delay(50000); } } if(THANG3==0) { volt=(float)(x*500)/255; if((volt<0)||(volt>250)) { write_command(0xc0);//tro ve dau dong thu hai
  • 17. write_string(" KHONG DO DUOC "); delay(50000); } else { hienthi(); write_string("V"); write_command(0xc0);//tro ve dau dong thu hai write_string("--HAN-THANG-TU--"); delay(50000); } } } }