Chương 1: Giới thiệu về vấn đề đo điện áp xoay chiều.
1.1. Khái niệm đo điện áp.
Đo điện áp là ta dùng một thiết bị có khả năng chuyển từ tín hiệu tương tự sang
một tín hiệu khác mà chúng ta có thể đọc nhìn thấy được giá trị của chúng một
cách cụ thể nhất.
1.2. Các phương pháp đo điện áp, hoạt động mạch đo điện áp.
Có nhiều cách mà chúng ta có thể đo được điện áp 2 cách mà chúng ta thường
sử dụng đó là:
+ Dùng các loại đồng hồ đo
+ Sử dụng mạch vi xử lý
1.3Các đặc điểm của hệ vi xử lý 89C51.
Vi điều khiển (VĐK) là một hệ vi xử lý được tổ chức trong một chíp. Nó
bao gồm:
+ Bộ vi xử lý
+ Có 40 chân
+ 4 kbyte ROM. 1, có thể ghi xoá được 1000 lần
+ 4 kbyte EPROM.
+ Dải tần số hoạt động từ 0MHz đến 24Mhz
+ Có 4 port xuất nhập (I/O) 8 bit
+ Có 128 byte RAM
+ 2 bộ định thời 16 bit
+ Mạch giao tiếp nối tiếp
+ Không gian nhớ chương trình (mã) ngoài 64k byte.
+ Không gian nhớ Data ngoài 64k byte.
+ Bộ xử lý bit thao tác trên các bit riêng.
+ 210 vị trí nhớ định địa chỉ, mỗi vị trí một bit.
+ Các thanh ghi chức năng, cơ chế điều khiển ngắt .
+ Các bộ thời gian dùng trong limh vực chia tần số và tạo thời gian thực.
+ Có thể lập trình được qua cổng nối tiếp
+ Bộ vi điều khiển có thể lạp chương trình để điều khiển các thiết bị thông
tin, viễn thông thiết bị đo lường,thiết bị điều chỉnh cũng nhuu các ứng dụng
P3.3 INT1 Ngõ vào ngắt ngoài 1
P3.4 T0 Ngõ vào bên ngoài của bộ định thời 1
P3.5 T1 Ngõ vào bên ngoài của bộ định thời 0
P3.6 WR Điều khiển ghi bộ nhớ dữ liệu ngoài
P3.7 RD Điều khiển đọc bộ nhớ dữ liệu ngoài
+ RST (chân 9)
Ngõ vào reset. Mức cao trên chân này trong hai chu kỳ máy trong khi bộ
dao động đang hoạt động sẽ reset AT89C51
+ ALE/PROG (chân 30)
ALE là một xung ngõ ra để chốt byte thấp của địa chỉ trong khi xuất bộ nhớ
ngoài. Chân này cũng làm ngõ vào chân lập trình (PROG) trong thời gian lạp
trình cho Flash. Khi hoạt động bình thường xung ngõ ra luôn có tần số không
đổi là 1/6 tần số của mạch dao động, có thể được dùng cho các mục đích định
thời bên ngoài. Khi cần, hoạt động chân ALE có thể được vô hiệu hoá bằng
cách set bit 0 của thanh ghi chức năng đặc biệt có địa chỉ 8Eh. Khi bit này
được set, ALE chỉ tích cực trong thời gian thực hiện lệnh MOVX hoặc MOVC.
Ngược lại chân này sẽ được kéo lên cao. Việc set bit không cho phép hoạt động
chôt byte thấp của địa chỉ sẽ không có tác dụng nếu bộ vi điều khiển đang ở chế
độ thực thi chương trình ngoài.
+ PSEN (chân 29): PSEN (program Store Enable) là xung điều khiển truy
xuất chương trình ngoài. Khi AT89C51 đang thực thi chương trình từ bộ nhớ
chương trình ngoài, PSEN được kích hoạt hai lần mỗi chu kỳ máy, nhưng hai
hoạt động PSEN sẽ bị bỏ qua mỗi khi truy cập bộ nhớ dữ liệu ngoài.
+ EA vpp (chân 31): Là chân cho phép truy xuất bộ nhớ chương trình ngoài
( địa chỉ từ 0000 H tới FFFF H). EA = 0 cho phép truy xuát bộ nhớ chương
trình ngoài, ngược lại EA = 1 sẽ thực thi chương trình bên trong chip. Tuy
nhiên, lưu ý rằng nếu bít khoá 1 được lập trình EA được chốt bên trong khi
reset.
+ XTAL1&XTAL2: Là hai ngõ vào ra của hai bộ khuyếch đại đảo của
BANK 2
10
0F
BANK 1
08
07
Bank thanh ghi 0 ( mặc định cho R0-R7)
00
CẤU TRÚC RAM NỘI
Có 2 đặc tính đáng lưu ý:
+ Các thanh ghi và các port I/O được định địa chỉtheo kiểu ánh xạ bộ nhớ
và được truy xuất như một vị trí nhớ trong bộ nhớ.
+ Vùng track thường trú trong RAM trên chip thay vì ở trong RAM ngoài
như đối với các bộ vi xử lý.
Vùng RAM đa mục đích: Có 80 byte, địa chỉ từ 30H đến 7FH.
Bất cứ vị trí nào trong vùng RAM ta đều có thể truy xuất tự do bằng cách sử
dụng định địa chỉ trực tiếp hoặc gián tiếp.
Ví dụ:
+ Kiểu định địa chỉ trực tiếp:
MOV A,5FH ;Đọc nội dung tại địa chỉ 5FH của RAM
+ Kiểu định địa chỉ gián tiếp: (Qua các thanh ghi R0,R1)
MOV R0,#5FH ; Di chuyển giá trị5FH vào thanh ghi R0
MOV A,@R0 ; Di chuyển dữ liệu trỏ tới R0 và thanh chứa A
Vùng RAM định địa chỉ:
Chip 8951 chứa 210 vị trí định địa chỉ in đó có 128 byte chứa trong các byte
ở địa chỉ 20H đến 2FH (16 byte x 8 = 128 bits), phần còn lại chứa trong các
thanh ghi chức năng đặc biệt.
Công dụng: + Truy xuất các bit riêng rẽ thông qua các phần mền.
+ Các port có thể địng địa chỉ từng bit, làm đơn giản việc giao
tiếp băng phần mền với các thiết bị xuất nhập đơn bit.
sự kiện.
- Bộ định thời 0: địa chỉ 8AH (TL0 ) va 8CH (TH0)
- Bộ định thời 1: địa chỉ 8bH (TL1 ) va 8DH (TH1)
Hoạt động của bộ định thời được thiết lậpbởi thanh ghi chế độ định thời
TMOD ở địa chỉ 89H và thanh ghi điều khiển bộ định thời TCON ở địa chỉ 88H
(chỉ có TCON được định địa chỉ từng bit)
+ Các thanh ghi của port nối tiếp: Chip 8951 có 1 port nối tiếp để truyền
thông với các thiết bị như các thiết bị đầu cuối hoặc model
+ Các thanh ghi ngắt: có một cấu trúc ngắt với 2 mức ưu tiên và 5 nguyên
nhân ngắt. Các ngắt bị vô hiệu hoá sau khi Reset hệ thống và được phép bằng
cách vào thanh ghi IE ở địa chỉA8H. Mức ưu tiên ngắt được thiết lập bơit thanh
ghi IP ở địa chỉ B8H.
+ Thanh ghi điều khiển nguồn: PCON có địa chỉ 87H.
Chương 2: Thiết kế mạch phần cứng.
2.1. Sơ đồ khối mạch phần cứng.
Cấu trúc chung của hệ thống
- Khối nguồn: để cung cấp nguồn cho bộ chuyển đổi, vi xử lí, và khối hiển thị.
- Bộ chuyển đổi ADC: chuyển đổi tín hiệu Analog từ khối công suất thành tín
hiệu Digital.
- Khối hiển thị: để hiển thị giá trị đo.
Điện áp
Đo Vi xử lý
Bộ chuyển
đổi ADC
Nguồn
Khối
hiển thị
- Vi xử lí: nhận tín hiệu từ bộ chuyển đổi ADC hiển thị dữ liệu trên Led 7
vạch.
D
8.20
=
- Tầm nhiệt độ chịu được khi kéo tải:
CT
0
15030
→−=
- Dòng ra đạt được:
mAI 100
0
=
2.2.2. Bộ chuyển đổi ADC.
Chip ADC 0804
Chíp ADC 0804 là bộ chuyển đổi tương tự sang số. Nó làm việc với +5V và
có độ phân giải là 8 bít. Ngoài độ phân giải thì thời gian chuyển đổi cũng là một
yếu tố quan trọng khác khi đánh giá một bộ ADC. Thời gian chuyển đổi được
định nghĩa như 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. Trong ADC 0804 thời gian chuyển đổi thay đổi phụ
thuộc vào tần số đồng hồ được cấp tới chân CLK R và CLK IN nhưng không
thể nhanh hơn 110µs. Các chân của ADC 0804 được mô tả như sau:
1. Chân
CS
(chọn chíp)
Là một đầu vào tích cực mức thấp được sử dụng để kích hoạt chíp ADC
0804. Để truy cập ADC 0804 thì chân này phải ở mức thấp.
2. Chân
RD
được gọi là bộ tạo đồng hồ riêng) của 0804 thì các chân CLK IN và CLK R
được nối tới một tụ điện và một điện trở. Trong trường hợp này tần số đồng hồ
được xác định bằng biểu thức:
f =
Giá trị tiêu biểu của các đại lượng trên là R = 10kΩ và C= 150pF và tần số
nhận được là f = 606kHz và thời gian chuyển đổi sẽ mất là 110µs.
5. Chân ngắt
INTR
(ngắt hay gọi chính xác hơn là “kết thúc chuyển đổi’).
Đây là chân đầu ra tích cực mức thấp. Bình thường nó ở 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
được chuyển đổi sẵn sàng để lấy đi. Sau khi
INTR
xuống thấp, ta đặt CS = 0 và
gửi một xung cao xuống - thấp tới chân
RD
lấy dữ liệu ra của 0804.
6, 7. Chân V
in
(+) và V
in
(-).
Đây là các đầu vào tương tự vi sai mà V
in
= V
in
(+) - V
in
(-). Thông thường
V
11 – 18. Các chân dữ liệu D0 - D7.
Các chân dữ liệu D0 - D7 (D0 là bít thấp nhất LSB và D7 là bít cao nhất
MSB) là các chân đầu ra dữ liệu số. Đây là những chân đượ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
bị
đưa xuống thấp. Để tính điện áp đầu ra ta có thể sử dụng công thức sau:
buocthuockich
V
D
in
out
=
Với D
out
là đầu ra dữ liệu số (dạng thập phân). V
in
là điện áp đầu vào tương
tự và độ phân dải là sự thay đổi nhỏ nhất được tính như là (2 × V
ref
/2) chia cho
256 đối với ADC 8 bít.
Hình 2.1: Sơ đồ chân của ADC0804
Bảng 2.2: Điện áp V
ref/2
liên hệ với dải V
in
.
V
in
out
=
Với D
out
là đầu ra dữ liệu số (dạng thập phân). V
in
là điện áp đầu vào tương
tự và độ phân dải là sự thay đổi nhỏ nhất được tính như là (2 × V
ref
/2) chia cho
256 đối với ADC 8 bít. Tương tự các giá trị điện áp khác được chuyển đổi
tương tự.
2.4. Mạch phần cứng .
class="bi x5d yfa w18 h25"
CHƯƠNG 3: Thiết kế phần mềm
3.1 Lưu đồ thuật toán.
Đọc Giá
Trị ADC
End
a
1
Hiển thị số
Hàng chục
a3=a1
Hiển thị số
Hàng đơn vị
Hiển thị số
Hàng thập phân
mov b,#100
div ab
lcall nhan
mov a,b
mov b,#10
div ab
add a,#30h
lcall nhan
mov a,b
add a,#30h
lcall nhan
sjmp manhinh
nhan:
jnb ti,$
clr ti
mov sbuf,a
ret
;#######################
delay:
mov r0,#10
w3:mov r1,#100
w2:mov r2,#100
w1:djnz r2,$
djnz r1,w2
djnz r0,w3
ret
end
3.3. Kết quả đạt được .
- Kết quả đạt được có độ chính xác cao ,có độ chính xác mà các loại đồng hồ cơ