Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 16 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
16
Dung lượng
673 KB
Nội dung
Đonhiệt độ
MỤC LỤC
Chương I: GIỚI THIỆU ĐỀ TÀI
1.1. Lời mở đầu
Ngày nay với sự phát triển của công nghiệp vi điện tử, kỹ thuật số các hệ thống
điều khiển dần được tự động hóa. Với những kỹ thuật tiên tiến như vi xử lý, vi mạch
số được ứng dụng vào lĩnh vực điều khiển.
Trong quá trình sản xuất ở các nhà máy, xí nghiệp hiện nay, việc đo và khống
chế nhiệtđộ tự động là một yêu cầu hết sức cần thiết và quan trọng. Vì nếu nắm bắt
được nhiệtđộ làm việc của các hệ thống, dây chuyền sản xuất giúp ta biết được tình
trạng làm việc của các yêu cầu và có những xử lý kiệp thời tránh được những hư hỏng
và sự cố có thể xảy ra.
Để đáp ứng được nhu cầu đonhiệtđộ tự động, thì có nhiều phương pháp để thực
hiện, nghiên cứu khảo sát vi điều khiển AT89c51 nhóm thực hiện nhận thấy rằng: ứng
dụng vi điều khiển AT89c51 và việc đonhiệtđộ tự động là phương pháp tối ưu. Nhóm
đã tiến hành thực hiện đề tài "THIẾT KẾ MẠCHĐONHIỆTĐỘ DÙNG VI ĐIỀU
KHIỂN AT89c51"
1.2. Sơ lượt về linh kiện
SVTH: Trang 1
Đonhiệt độ
Linh kiện gồm có:
AT89C51
ADC0809
LM35
LED 7 đoạn
IC7414
………
Chương II: GIỚI THIỆU LINH KIỆN
2.1 Giới thiệu MSC-51 (AT89c51)
IC 89c51 là vi điều khiển do hãng Intel của mỹ sản xuất. Các đăc điểm như sau:
+ 4KB EPROM bên trong.
+ 128 byte RAM nội.
+ 4 Port I/O 8 bit
+ Giao tiếp nối tiếp .
+ 64KB vùng nhớ ngoài
+ 64KB vùng nhớ dữ liệu ngoại.
+ Xử lý Boolean ( hoạt động trên bit đơn ).
+ 210 vị trí nhớ có thể định vị bít.
+ 4 micro/s cho hoạt động nhân hoặc chia.
SVTH: Trang 2
Đonhiệt độ
Hình 2.1 Sơ đồ khối 8051
Phần chính của vi điều khiển 8051/8951 là bộ xử lý trung tâm (CPU: Central
Processing Unit).
Đơn vị xử lý trung tâm nhận trực tiếp xung từ bộ tạo dao động, ngoài ra còn có
khả năng đưa một tín hiệu giữ nhịp từ bên ngoài.
Chương trình đang chạy có thể dừng lại nhờ khối điều khiển ngắt ở bên trong.
Các nguồn ngắt có thể là: các biến cố ở bên ngoài, sự tràn bộ đếm định thời hoặc cũng
có thể là giao diện nối tiếp
Hai bộ định thời 16 bit hoạt động như một bộ đếm.
Các cổng (port0, port1, port2, port3) sử dụng vào mục đích điều khiển.
Bộ nhớ gồm bộ nhớ ROM, RAM.
2.1.1 Khảo sát sơ đồ chân AT89c51 và chức năng từng chân
2.1.1.1.Sơ đồ chân AT89c51
SVTH: Trang 3
Đonhiệt độ
Hình 2.2 Sơ đồ chân 8951
2.1.1.2. chức năng các chân của AT89c51
89c51 có tất cả 40 chân có chứa năng như các đường xuất nhập. Trong đó có 24
chân có dụng kép( có nghĩa là một chân có 2 chức năng ) mỗi đường có thể hoạt động
như đường xuất nhập hoặc như đường điều khiển hoặc là thành phần của các bus dử
liệu và bus địa chỉ.
a. Các port
Port 0:
Port 0 là port có chức năng ở các chân 32-39 của IC89c51. trong các thiết kế cở
nhỏ không dùng bộ nhớ mở rộng nó chức năng như đường I/O. đối với các thiết kế cở
lớn có bộ nhớ mở rộng, nó được kết hợp bus địa chỉ và bus dử liệu.
Prort 1:
Port 1 là port I/O trên các chân 1-8. các chân được kí hiệu P1.0, P1.1, P1.2, P1.3,
P1.4, P1.7 có thể dùng cho các giao tiếp với các thiết bị ngoài nếu cần. Port không
có chức năng khác, vì vậy chúng chỉ dùng cho các giao tiếp bên ngoài.
Port 2:
Port 2 là 1 port có tác dụng trên các chân 21-28 được dùng như các đừng xuất
nhập hoặc byte cao của bus địa chỉ đối với các thiết bị bộ nhớ mở rộng.
Port 3:
Port 3 là port có túc dụng trên chân từ 10-17. các chân của port này có nhiều
chức năng, có công dụng chuyển đổi các số liên hệ với các đặt tính đặc biệt của 89c51
như ở bảng sau:
bảng 2.1
SVTH: Trang 4
Đonhiệt độ
b. Các ngõ tín hiệu điều khiển
Ngõ tín hiệu PSEN (Program store enable)
PSEN là tín hiệu ngỏ ra ở chân 29 cso tác dụng cho phép đọc bộ nhớ chương
trình mở rộng thường được nối đến chân OE\ ( out enable) của Eprom cho phép đọc
các byte mã lệnh.
PSEN ở mức thấp trong thời gian Microcontroller 89c51 lấy lệnh. Các mã lệnh
của chương trình được đọc từ Eprom qua bus dữ liệu và được chót vào thanh ghi lệnh
bênh trong 89c51 để giải mã lệnh. Khi 89c51 thi hành chương trình trong EPROM nội
PSEN sẽ ở mức logic 1.
Ngõ tín hiệu điều khiển ALE (Address Latch Enable)
Khi AT89c51 truy xuất bộ nhớ ngoài, port 0 có chức năng là bus địa chỉ và bus
dử liệudođó phải tách các đường dử liệu và địa chỉ. Tín hieuj ra ALE ở chân thứ 30
dừng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kêt nối
chúng với IC chốt.
Tín hiệu ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò là
địa chỉ thấp nên chốt địa chỉ hoàn toàn tự động.
Các xung tín hiệu ALE có tốc độ bằng 1/6 lần tần số dao động trên chip và có thể
dùng làm tín hiệu clock cho các phần khác của hệ thống. Chân ALE được dùng làm
ngõ vào xung lập trình cho EPROM trong 89c51.
Ngõ tín hiệu EA\ (External Access)
Tín hiệu vào EA\ ở chân 31 thường được mắt lên mức 1 hoặc mức 0. Nếu ở mức
1, 89c51 thi hành chương trình từ EPROM nội trong khoảng địa chỉ thấp 4K byte.
Nếu ở mức 0, 89c51 sẽ thi hành chương trình ở bộ nhớ mở rộng. Chân EA\ được lấy
làm chân cấp nguồn 12V khi lập trình cho EPROM trong 89c51.
Ngõ tín hiệu RST (Reset)
Ngõ vào RST ở chân 9 là ngõ vào reset của 89c51. Khi ngõ vào tín hiệu này đưa
lên cao ít nhất là 2 chu kỳ máy, các thanh ghi bên trong được nạp những giá trị thích
hợp để khởi động hệ thống. Khi cấp điện tự động Reset.
Các ngõ vào bộ dao động X1, X2
SVTH: Trang 5
Đonhiệt độ
Bộ dao động được tích hợp bên trong 89c51, khi sử dụng 89c51 người thiết kế
chier cần kết nối thêm thạch anh vào các tụ. Tần số thạch anh thường sử dụng cho
89c51 là 12MHz.
Chân 40 (Vcc) được nối với nguồn 5V
2.1.2. Cấu trúc bên trong của vi điều khiển
2.1.2.1. Tổ chức bộ nhớ
Bảng 2.2: Tóm tắt các vùng nhớ 89c51
Bộ nhớ trong IC AT89c51 bao gồm EPROM và RAM. RAM trong AT89c51 bao
gồm nhiều thành phần: phần lưu trữ đa dụng, phần lưu trữ địa chỉ hóa từng bit, các
thanh ghi và các thanh ghi đặt biệt.
89c51 có bộ nhớ theo cấu trúc Harvard: có những vùng nhớ riêng biệt cho
chương trình và dữ liệu. chương trình và dữ liệu có thể chứa bên trong 89c51 nhưng
89c51 vẫn có thể kết nối với 64K byte bộ nhớ chương trình và 64K byte dữ liệu.
a.Bộ nhớ chương trình (ROM)
Bộ nhớ ROM dùng để lưu chương trình do người viết chương trình viết ra. Bộ
nhớ ROM được tích hợp trong chip Vi điều khiển với dung lượng tùy vào chủng loại
cần dùng, đối với 89S52 là 8 KByte. Bộ nhớ bên trong Vi điều khiển 89Sxx là bộ nhớ
Flash ROM cho phép xóa bộ nhớ ROM bằng điện và nạp vào chương trình mới cũng
bằng điện và có thể nạp xóa nhiều lần.
Bộ nhớ ROM được định địa chỉ theo từng Byte, các byte được đánh địa chỉ theo
số hex, số thập lục phân, bắt đầu từ địa chỉ 0000H, khi viết chương trình cần chú ý đến
địa chỉ lớn nhất trên ROM, chương trình được lưu sẽ bị mất khi địa chỉ lưu vượt qua
vùng này.
Ngoài ra Vi điều khiển còn có khả năng mở rộng bộ nhớ ROM với việc giao tiếp
với bộ nhớ ROM bên ngoài lên đến 64KByte(địa chỉ từ 0000H đến FFFFH).
b. Bộ nhớ dữ liệu (RAM)
RAM bên trong 89c51 được phân chia như sau:
+ Các bank thanh ghi có địa chỉ từ 00H =>1FH.
+ RAM địa chỉ từ bit có địa chỉ từ 20H=> 2FH.
+ RAM đa dụng từ 30H => 7FH.
SVTH: Trang 6
Đonhiệt độ
+ Các thanh ghi chức năng đặt biệt từ 80H => FFH.
RAM đa dụng
RAM dụng chiếm các địa chỉ từ 30H đến 7FH, 32 byte dưới từ 00H đến 1FH
cũng có thể dùng với mục đích tương tự( mặc dù các địa chỉ này đã có mục đích khác).
Mọi địa chỉ trong vùng RAM đa dụng đều có thể truy xuất tự do dung kiểu địa
chỉ trực tiếp hoặc gián tiếp.
Vùng RAM truy xuất từng bit
8951 chứa 210 bit được địa chỉ hóa, trong đó có 128 bit có chứa các byte có chứa
địa chỉ từ 20H đến 2FH và các bit còn lại chứa trong các nhóm thanh ghi có chức năng
đặc biệt.
Các bit có thể được đặt, xóa, AND, OR với một lệnh đơn. Đa số các
microcontroller xử lý đòi hỏi một chuỗi lệnh đọc-sửa-ghi để đạt được mục đích tương
tự. ngoài ra các port cũng truy xuất được từng bit.
128bit có chứa các byte địa chỉ từ 00H - 1FH cũng truy xuất như các byte hoặc
các byte hoặc các bit phụ thuộc vào lệnh được dùng.
Các bank thanh ghi
32 byte thấp của bộ nhớ nội được dành cho các bank thanh ghi. Bộ lệnh 8951 hổ
trợ 8 thanh ghi có tên là R0-R7 và theo mặt định sau khi reset hệ thống, các thanh ghi
này có các địa chỉ từ 00H-07H.
Các lệnh dùng các thanh ghi R0-R7 sẽ ngắn hơn và nhanh hơn so với các lệnh có
chức năng tương ứng dùng kiểu địa chỉ trực tiếp, các thanh ghi này được đặt mặc định
trong bank 1. Có 4 bank thanh ghi và tại mỗi thời điểm chỉ có một bank thanh ghi
được truy xuất với các thanh ghi từ R0 đến R7, để thay đổi việc truy xuất các thanh ghi
trên các bank thanh ghi, người dùng phải thay đổi giá trị các bit chọn bank trong thanh
ghi trạng thái bằng các câu lệnh trong chương trình.
Ngoài ra, có thể truy xuất thanh ghi trên các bank thanh ghi như với các ô nhớ
bình thường khác. Ví dụ: nguời dùng có thể truy xuất đến thanh ghi R7 bằng ô nhớ
07H.
Thanh ghi có chức năng đặt biệt
Các thanh ghi này được định địa chỉ byte, một số được định thêm địa chỉ bit, có
địa chỉ của các thanh ghi này nằm trong khoảng 80H đến FFH. Các thanh ghi đặc biệt
này này được dùng để xác lập trạng thái hoạt động cần thiết cho Vi điều khiển.
Vùng RAM định địa chỉ gián tiếp
89c51 có thêm 128 byte RAM trên chip từ địa chỉ 80H đến FFH. Điều này không
xung đột với các thanh ghi chức năng đặc biệt (có cùng địa chỉ) vì 128 byte RAM
thêm vào chỉ có thể truy xuất bằng cách dùng kiểu định địa chỉ gián tiếp.
2.2. Giới thiệu ADC0809
Bộ ADC0809 là một thiết bị CMOS tích hợp với một bộ chuyển đổi từ tương tự
sang số 8 bit , bộ chọn 8 kênh và một bộ logic điều khiển tương thích. Bộ chuyển đổi
AD 8 bit này dùng phương pháp chuyển đổi xấp xỉ tiếp. Bộ chọn kênh có thể truy xuất
bất kỳ kênh nào trong các ngõ vào tương tự một cách độc lập.
SVTH: Trang 7
Đonhiệt độ
Thiết bị này loại trừ khả năng cần thiết điều chỉnh điểm 0 bên ngoài và khả năng
điều chỉnh tỉ số làm tròn nên ADC0809 dễ dàng giao tiếp với các bộ vi xử lý.
Sơ đồ chân ADC0809
Hình 2.3: sơ đồ chân ADC0809
Ý nghĩa các chân:
IN0 => IN7: 8 ngõ vào tương tự
A, B,C: Giải mã chọn một trong 8 ngõ vào
2
-1
=> 2
-8
: Ngõ ra song song 8 bit
ALE: Cho phép chốt địa chỉ
START: Xung bắt đầu chuyển đổi
CLK: Xung đồng hồ
REF(+): Điện thế tham chiếu (+)
REF(-): Điện thế tham chiếu (-)
Các đặt điểm của ADC0809
Độ phân giải 8 bit
Tổng sai số chưa chỉ định (+) (-) LSB, (+) (-) 1LSB
Thời gian chuyển đổi: 100 µs ở tần số 640kHz
Nguồn cung cấp +5V
Điện áp ngõ vào 0=>5V
Tần số xung Clock 10kHz – 1280kHz
Nhiệtđộ hoạt động -40(0C) đến 85
0
C
Dễ dàng giao tiếp với vi xử lý hoặc dùng riêng
SVTH: Trang 8
Đonhiệt độ
2.3. Giới thiệu cảm biến nhiệtđộ LM35
2.3.1 sơ đồ LM35
LM35 có độ biến thiên theo nhiệtđộ : 10mV/1
0
C.
Độ chính xác cao, tính năng cảm biến nhiệtđộ rất nhạy, ở nhiệtđộ 25
0
C nó có sai
số không quá 1%. Với tầm đo từ 0
0
C => 128
0
C, tín hiệu ngõ ra tuyến tính liên tục với
những những thay đổi của tín hiệu ngõ vào.
Thông số kỹ thuật:
Tiêu tán công suất thấp
Dòng làm việc từ 400µA đến 5mA.
Dòng ngược 15mA.
Dòng thuận 10mA
Độ chính xác: khi làm việc ở nhiệtđộ 25
0
C với dòng làm việc 1mA thì điện áp
ngõ ra từ 2,94V đến 3,04V
Đặc tính điện:
Theo thông số của nhà sản xuất LM35, quan hệ giữa điện áp và ngõ ra như sau:
Vout =0.01*T(
0
K)=2,73+0,01*T(
0
C)
Vậy ứng với tầm hoạt động từ 0
0
C =>100
0
C ta có thể biến thiên điện áp ngõ ra là:
Ở 0
0
C thì điện áp ngõ ra Vout = 2,73V
Ở 5
0
C thì điện áp ngõ ra Vout = 2,78V
Ở 10
0
C thì điện áp ngõ ra Vout = 2,83V
Ở 15
0
C thì điện áp ngõ ra Vout = 2,88V
Ở 20
0
C thì điện áp ngõ ra Vout = 2,93V
Ở 25
0
C thì điện áp ngõ ra Vout = 2,98V
………………………………………
Ở 100
0
C thì điện áp ngõ ra Vout = 3.7V
Tầm biến thiên điện áp tương ứng với nhiệtđộ từ 0
0
C=>100
0
C là 1V
2.4. IC 7414
2.4.1 Sơ đồ
SVTH: Trang 9
Đonhiệt độ
2.4.2 Chức năng
IC 74HC14 để tạo ra xung mà lối ra là các cổng đảo và hai hệ ghi dịch 8 bit
chuyển đổi dữ liệu vào nối tiếp ra song song. Một bộ phận của hệ tạo xung ( chân số 1 và
2 của IC 74HC14 ) tạo ra tín hiệu xung clock cho hệ ghi dịch. Hai bộ phận tạo xung còn lại
được dùng để đưa vào các chân reset và load khi nguồn được mở. Tín hiệu ngõ ra ở
chân số 8 của hệ tạo xung phải ở mức cao trong suốt thời gian xung clock đầu tiên
chuyển trạng thái từ mức cao sang mức thấp tại chân số 8 của hệ dịch, và chuyển sang
mức thấp trước khi tới cạnh lên thứ 2 của xung clock, để load có được 1 bit đơn. Nếu
tốc độ của xung clock được tăng lên thì chiều dài tín hiệu ở chân số 9 của hệ tạo xung
kích phải được giảm xuống một cách tương ứng để tín hiệu ở chân load của hệ ghi
dịch không lớn hơn 1 bit.
2.5. LED 7 đoạn
2.5.1 Điều khiền Led 7 đoạn
Led 7 đoạn được ứng dụng khá phổ biến khi cần hiển thị số tự nhiên hoặc vài chữ
cái nhất định. Led 7 đoạn có thể có kích thước lớn nhỏ khác nhau, màu sắc khác nhau
nhưng về hình dáng cơ bản vẫn giống nhau.
Led 7 đoạn bao gồm nhiều led tích hợp bên trong, các led được nối chung nhau 1
chân. Trong thực tế có 2 loại led 7 đoạn là led 7 đoạn A-nốt chung và led 7 đoạn Ka-
tốt chung. Led loại A-nốt chung, các led sẽ có chung nhau chân nguồn (chân dương),
chân còn lại của led nào được nối đất thì led đó sẽ sáng. Led loại Ka-tốt chung, các led
sẽ nối chung nhau chân đất (chân âm), chân còn lại của led nào được nối nguồn thì led
đó sẽ sáng.
2.5.2. Các hiển thị của Led 7 đoạn
2.5.1 sơ đồ led 7 đoạn:
SVTH: Trang 10
[...]... 0 7 ĐỘNG BỘ CHUYỂN ĐỔI ADC, ĐỌC KẾT QUẢ ĐO 1 1 1 KẾT QUẢ VÀO RA 1 1 8 LƯU 1 0 0 1 1 9 Chương III: NỘI DUNG CHUYỂN ĐỔI GIÁ TRỊ ĐO HEX_BCD 3.1 Sơ đồ nguyên lý mạchđonhiệtđộ MÃ LED BCD_7SEG CHUYỂN ĐỔI 3.1.2 Lưu đồ thuật toán HIỂN THỊ RA LED 7 ĐO N SVTH: TẠO TRỄ DELAY KẾT THÚC Trang 11 Đonhiệtđộ 3.1.2 Sơ đồ nguyên lý SVTH: Trang 12 Đo nhiệt độ 3.2 Sơ đồmạch in SVTH: Trang 13 Đo nhiệt độ 3.3.. .Đo nhiệt độ Trong mạch ta dụng led 7 đo n sử dụng là loại led A-nốt chung, chân A-nốt chung sẽ được nối nguồn 5V thông qua transistor, cần phải nối trở hạn chế dòng cho led 7 đo n để tránh cháy led Bảng 2.3 Bảng hiển thị Led 7 đo n a 1 0 1 1 0 1 0 1 1 1 b 1 1 1 1 1 0 0 1 1 1 LED 7 ĐO N c d e f g 1 1 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 2 1 1 0 0 1... cdoi: setb ale ;set gia tri len 1 clr ale setb start jb eoc,$ ;nhay ve gia tri ban dau clr start mov r7,#150 de: lcall hienthi djnz r7,de ;so sanh voi 0, #0 thi nhay len 1 ; SVTH: Trang 14 Đo nhiệt độ mov a,p2 ret ; chuyen doi bcd -hex_bcd: mov b,#10 div ab mov 10h,b mov b,#10 div ab mov 11h,b mov 12h,a ret ; du lieu quet led -bcd_7doan: mov dptr,#900h... p1,#0feh delay p0,#0ffh p1,#0ffh mov p0,21h mov p1,#0fdh lcall delay mov p0,#0ffh mov p1,#0ffh djnz r1,ht ret ; tao thoi gian tre -delay: mov 7fh,#20 djnz 7fh,$ ret SVTH: Trang 15 Đo nhiệt độ db ; bang ma led 7 seg ORG 900H 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h END 3.4 Mô phỏng 3.5 Thực tế SVTH: Trang 16 . ĐO N
TẠO TRỄ DELAY
KẾT THÚC
Đo nhiệt độ
3.1.2 Sơ đồ nguyên lý
SVTH: Trang 12
Đo nhiệt độ
3.2 Sơ đồ mạch in
SVTH: Trang 13
Đo nhiệt độ
3.3 Mã chương trình. khiển AT89c51 và việc đo nhiệt độ tự động là phương pháp tối ưu. Nhóm
đã tiến hành thực hiện đề tài "THIẾT KẾ MẠCH ĐO NHIỆT ĐỘ DÙNG VI ĐIỀU
KHIỂN