Đề tài :”Ứng dụng họ vi điều khiển 8051 đo,cảnh báo nhiệt độ có giải đo 0800 C sử dụng nhiệt điện trở PT 100”.Mục đích chính của đề tài là thiết kế một bộ đo cảnh báo nhiệt độ sử dụng 8051 và nhiệt điện trở PT100 ,có thể đưa ra được kết quả hiển thị trực quan với độ chính xác cao.Bài tập lớn gồm có 3 chương:•CHƯƠNG 1: CƠ SỞ LÝ THUYẾT•CHƯƠNG 2: TÍNH TOÁN VÀ THIẾT KẾ MẠCH ĐO•CHƯƠNG 3: KẾT QUẢLỜI NÓI ĐẦU2Chương 1. Cơ sở lý thuyết31.1. Mục đích và yêu cầu31.1.1. Mục đích31.1.2. Yêu cầu31.2. Các phương pháp đo31.2.1. Nhiệt điện trở31.2 Cặp nhiệt ngẫu71.3. Các linh kiện dùng trong bài91.3.1. Vi điều khiển 89C5191.3.2. Cấu trúc VĐK 8051, chức năng từng chân121.3.3. Các thanh ghi đặc biệt131.3.4. Ngắt và xử lí các ngắt141.3.5. Địa chỉ vecto ngắt151.4. Bộ chuyển đổi tương tự sang số(ADC0804)151.4.1. Tổng quan về chuyển đổi tín hiệu tương tự số151.4.2. Sơ đồ khối và ý nghĩa các chân của ADC0804161.4.3. Các bước để chuyển đổi của ADC191.4.4. Giản đồ xung giao tiếp IC ADC 0804191.5. Hiển thị LCD201.5.1. Giới thiệu màn hình hiển thị LCD201.5.2. Mô tả các chân LCD211.6. Nhiệt điện trở PT100231.6.1. Khái quát về pt100231.6.2. Cấu tạo của Pt100241.6.3. Nguyên lý hoạt động của Pt100241.6.4. Đặc điểm của Pt10025Chương 2. Thiết kế hệ thống272.1. Sơ đồ khối272.2. Nguyên lí hoạt động272.3. Tính toán và thiết kế272.4. Lưu đồ thuật toán302.5. Chương trình trên keil c 322.6. Thiết kế chương trình trên proteus36Chương 3. Kết quả373.1. Các kết quả đạt được373.2. Các hạn chế tồn tại của bản thiết kế và phương pháp khắc phục37
Trang 1Mục lục
LỜI NÓI ĐẦU 2
Chương 1 Cơ sở lý thuyết 3
1.1 Mục đích và yêu cầu 3
1.1.1 Mục đích 3
1.1.2 Yêu cầu 3
1.2 Các phương pháp đo 3
1.2.1 Nhiệt điện trở 3
1.2 Cặp nhiệt ngẫu 7
1.3 Các linh kiện dùng trong bài 9
1.3.1 Vi điều khiển 89C51 9
1.3.2 Cấu trúc VĐK 8051, chức năng từng chân 12
1.3.3 Các thanh ghi đặc biệt 13
1.3.4 Ngắt và xử lí các ngắt 14
1.3.5 Địa chỉ vecto ngắt 15
1.4 Bộ chuyển đổi tương tự sang số(ADC0804) 15
1.4.1 Tổng quan về chuyển đổi tín hiệu tương tự - số 15
1.4.2 Sơ đồ khối và ý nghĩa các chân của ADC0804 16
1.4.3 Các bước để chuyển đổi của ADC 19
1.4.4 Giản đồ xung giao tiếp IC ADC 0804 19
1.5 Hiển thị LCD 20
1.5.1 Giới thiệu màn hình hiển thị LCD 20
1.5.2 Mô tả các chân LCD 21
1.6 Nhiệt điện trở PT100 23
1.6.1 Khái quát về pt100 23
1.6.2 Cấu tạo của Pt100 24
1.6.3 Nguyên lý hoạt động của Pt100 24
1.6.4 Đặc điểm của Pt100 25
Trang 2Chương 2 Thiết kế hệ thống 27
2.1 Sơ đồ khối 27
2.2 Nguyên lí hoạt động 27
2.3 Tính toán và thiết kế 27
2.4 Lưu đồ thuật toán 30
2.5 Chương trình trên keil c 32
2.6 Thiết kế chương trình trên proteus 36
Chương 3 Kết quả 37
3.1 Các kết quả đạt được 37
3.2 Các hạn chế tồn tại của bản thiết kế và phương pháp khắc phục 37
Trang 3LỜI NÓI ĐẦUNgày nay cùng với sự tiến bộ của khoa học kỹ thuật ,đặc biệt là ngành kỹthuật điện tử dẫn đến đời sống xã hội ngày càng phát triển hơn dựa trên những ứngdụng của khoa học vào đời sống Vì vậy mà những công cụ điện tử mang tính tựđộng ngày càng được ứng dụng rộng rãi.Trong đó có sự góp không nhỏ của kỹthuật vi điều khiển Các bộ vi điều khiển đang được ứng dụng rộng rãi và thâmnhập ngày càng nhiều trong các lĩnh vực kĩ thuật và đời sống xã hội Hầu hết cácthiết bị được điều khiển tự động từ các thiết bị văn phòng cho đến các thiết bị tronggia đình đều dùng các bộ vi điều khiển nhằm đem lại sự tiện nghi cho con ngườitrong thời đại công nghiệp hóa ,hiện đại hóa.
Với mong muốn làm rõ các kiến thức đã học và giới thiệu các ứng dụng cơbản của họ vi điều khiển ,nhóm chúng em thực hiện đề tài :”Ứng dụng họ vi điềukhiển 8051 đo,cảnh báo nhiệt độ có giải đo [0-800] C sử dụng nhiệt điện trở PT100”
Mục đích chính của đề tài là thiết kế một bộ đo cảnh báo nhiệt độ sử dụng
8051 và nhiệt điện trở PT100 ,có thể đưa ra được kết quả hiển thị trực quan với độchính xác cao
Bài tập lớn gồm có 3 chương:
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
CHƯƠNG 2: TÍNH TOÁN VÀ THIẾT KẾ MẠCH ĐO
CHƯƠNG 3: KẾT QUẢ
Trong quá trình thực hiên bài tập lớn, chúng em đã được củng cố và tiếp thuthêm các kiến thức mới về các cảm biến đo nhiệt độ trong công nghiệp Hơn thếnữa chúng em đã học tập và rèn luyện phương pháp làm việc, nghiên cứu một cáchchủ động hơn, linh hoạt hơn, và đặc biệt là phương pháp làm việc theo nhóm
Qua đây, chúng em xin gửi lời cảm ơn đến Thầy: Phạm Văn Hùng đã giúp
đỡ chúng em nhiệt tình trong quá trình học tập và làm bài tập lớn Mặc dù cố gắngtìm hiểu thực hiện nhưng do còn thiếu kinh nghiệm và thời gian nên trong bài khótránh khỏi những sai sót,chúng em rất mong được sự hướng dẫn thêm của thầy
Chúng em xin chân thành cảm ơn!
Trang 4Chương 1 Cơ sở lý thuyết
Mục đích của đề tài là ứng dụng họ vi điều khiển 8051 đo và cảnh báo nhiệt
độ có giải đo từ [0-800]oC.Từ đó chúng ta có thể biết được nhiệt độ của chúng ta
Nhiệt độ là một trong những đại lượng vật lý được quan tâm nhiều nhất Bởi
vì nhiệt độ có vai trò quyết định trong nhiều tính chất của vật chất Một trongnhững đặc điểm tác động của nhiệt độ là làm thay đổi một cách liên tục các đạilượng chịu sử ảnh hưởng của nó,ví dụ như áp suất,thể tích của một chất khí.Bởivậy,trong nghiên cứu khoa học ,trong công nghiệp và đời sống hàng ngày việc đonhiệt độ là điều rất cần thiết Tuy nhiên ,để đo được trị số chính xác của nhiệt độlại là điều không đơn giản
Cùng với sự ra đời và phát triển mạnh mẽ của các hệ vi xử lí ,việc đo nhiệt độ
áp dụng vi xử lí ,vi điều khiển đã mở ra nhiều hướng ,đưa đến nhiều phương phápkhác nhau ,linh hoạt và chính xác hơn Có nhiều cách để đo nhiệt độ ,trong đó cóthể liệt kê một số phương pháp sau đây:
Phương pháp quang dựa trên sự phân bố bức xạ nhiệt do dao động nhiệt(dohiệu ứng Doppler)
Phương pháp cơ dựa trên sự dãn nở của vật rắn ,của chất lỏng hoặc khí (với
áp suất không đổi ),hoặc dựa trên tốc độ âm
Phương pháp dựa trên sự phụ thuộc của điện trở vào nhiệt độ ,hiệu ứngsebeck hoặc dựa trên sự thay đổi tần số dao động của thạch anh
Trước tiên nói về các cảm biến nhiệt độ ,đó là các cảm biến được sử dụng vàocác quá trình nhiệt như :đốt nóng ,làm lạnh ,trao đổi nhiệt v.v Đại lượng vào củacảm biến nhiệt độ là nhiệt độ và đại lượng ra là tín hiệu (dòng,áp).Một số cảm biếnthường sử dụng:
1.2.1 Nhiệt điện trở
Trang 5Nhiệt điện trở là sự thay đổi theo sự thay đổi nhiệt độ của nó: R =f(t ) T , đoT
R có thể suy ra nhiệt độ.
Cảm biến nhiệt điện trở có 2 loại chính là:
Nhiệt điện trở kim loại
Nhiệt điện trở bán dẫn
a, Nhiệt điện trở kim loại (RTD)
Nhiệt điện trở kim loại có đặc điểm là quan hệ giữa điện trở của nó và nhiệt
độ hầu như tuyến tính, tính lặp lại của quan hệ ấy rất cao nên thiết bị đơngiản.Nhiệt điện trở kim loại được chia ra làm nhiệt điện trở kim loại quý và kimloại không quý
Cấu tạo
Nhiệt điện trở kim loại hay còn được gọi là nhiệt kế điện trở thường đượcchế tạo thành những can nhiệt có hình dáng bề ngoài như hình vẽ:
Hình 1: Cấu tạo bên trong RTD
Đây là loại thiết kế đơn giản nhất Sợi dây cảm biến được quấn xung quanh 1cái lõi hoặc trục Lõi có thể là tròn hoặc phẳng, nhưng quan trọng là phải cách điệnđược Người ta cách điện bằng cách đặt lõi và dây quấn trong 1 cái ống bằng sứhoặc một ống thép không gỉ Dây cảm biến được nối ra ngoài bằng những sợi dâylớn hơn Khi làm việc trong các nhà máy, lò đốt, …, (nơi có nhiệt độ môi trườngxung quanh tương đối cao) các dây dẫn từ những đầu đo của can nhiệt này lại phải
có độ dài lớn dẫn đến tồn tại điện trở trên dây dẫn và giá trị này không ổn định vàgây nên sai số lớn cho phép đo Để bù sai số nhiệt độ các nhà sản xuất sẽ tạo ranhững loại RTD 3 đầu đo hay 4 đầu đo Ngoài loại RTD dây nối trên, RTD cònmột loại goi là RTD loại bề mặt hay màng mỏng (Thin Film Element) Người ta
Trang 6phủ 1 lớp bạch kim mỏng (dày khoảng 10-7 mm đến 10-6 mm) lên 1 cái đế bằng
sứ Ưu điểm của loại này là giá thành thấp và khối lượng tác dụng nhiệt thấp, làmcho chúng đáp ứng nhanh và dễ dàng đặt vào các vỏ nhỏ Nhưng nó không làmviệc ổn định
Trang 7Bảng1: số liệu về vật liệu thông dụng sản xuất RTD
Mạch đo
Mạch đo sử dụng nguồn dòng
Mạch đo sử dụng nguồn dòng
RTD được mắc nối tiếp với một nguồn
dòng chuẩn, Vout = I.R = I.(R+∆R)
cũng tuyến tính với nhiệt độ đo được
Từ tín hiệu điện áp thu được ta có thể
đưa ra các bộ chuyển đổi để hiện thị
giá trị nhiệt độ đo được
Mạch đo có dạng mạch cầu.
Mạch đo có dạng mạch cầu
RTD được mắc vào một mạch cầu như hình vẽ trên Khi ở 0ºC, ∆R = 0 mạch cầu cân bằng
b, Nhiệt điện trở bán dẫn
Cấu tạo
Trang 8Nhiệt điện trở bán dẫn được làm từ hỗn hợp oxit kim loại: mangan, cô-ban,…
Hình 3: Cấu tạo nhiệt điện trở bán dẫn
Quan hệ giữa điện trở và nhiệt độ
- R : điện trở tại nhiệt0
độ chuẩn T (Kelvin).0
- R: điện trở tại nhiệt độ đo T (K)
- β: hằng số thực nghiệm phụ thuộc vào vật liệu chế tạo cảm biến có giá trịtrong khoảng 3000-4400K
Giả thiết nếu β=4000K, T=298K, α=-0.045 K-1
Hệ số nhiệt độ nhiệt điện trở bán dẫn có giá trị âm, có độ lớn gấp 6 đến 10 lần nhiệt điện trở kim loại vì thế được dùng trong các mạch khống chế nhiệt độ, hoặc đo nhiệt độ trong phạm vi nhỏ
Mạch đo
0
1 1
β ( - ) T 0
T
R = R e
Trang 9Hình 4:Mạch đo với nhiệt điện trở bán dẫn
Hình 5: Cấu tạo đơn giản cặp nhiệt điện
Cũng như RTD, cảm biến nhiệt loại cặp nhiệt ngẫu được sử dụng nhiềutrong công nghiệp dưới dạng can nhiệt
Hình 6: Cấu tạo cặp nhiệt ngẫu
b Nguyên lí làm việc
Trang 10Cặp nhiệt điện là cảm biến đo nhiệt độ, chuyển tín hiệu nhiệt độ sang tínhiệu điện áp dựa trên hiện tượng nhiệt điện Hiện tượng này như sau: Nếu lấy haidây dẫn có bản chất kim loại khác nhau nối chặt lại với nhau ở hai đầu rồi đốt nóngmột đầu thì trong vòng dây sẽ xuất hiện dòng điện Dòng điện này được gọi làdòng điện nhiệt sự xuất hiện dòng nhiệt điện này có thể giải thích bằng hiện tượngkhuếch tán điện tử tự do Ở đây tồn tại hai hiện tượng: hiện tượng khuếch tán điện
tử tự do giữa hai dây dẫn tại điểm tiếp xúc và hiện tượng khuếch tán điện tử trongmỗi dây dẫn khi có sự chênh lệch nhiệt độ ở hai đầu dây
Khi hai dây dẫn khác nhau được gắn tiếp xúc với nhau, thì do hai dây có sốlượng điện tử tự do khác nhau nên tại điểm tiếp xúc sẽ có sự khuếch tán điện tử tự
do Dây nào có điện tử tự do n hiều hơn thì số lượng tử tự do của nó khuếch tánsang dây kia sẽ nhiều hơn sự khuếch tán ngược lại, vì vậy bản thân nó sẽ thiếu điện
tử tự do và mang điện tích dương Phía bên dây còn lại sẽ thừa điện tử tự do nênmang điện tích âm như vậy tại điểm tiếp xúc sẽ xuất hiện sức điện động mà điệntrường của nó chống lại sự khuếch tán điện tử từ dây có số lượng điện tử tự donhiều hơn sang dây có ít hơn Giá trị sức điện động tiếp xúc phụ thuộc vào bảnchất của hai dây dẫn và nhiệt độ của điểm tiếp xúc Nhiệt độ càng tăng thì hoạt tínhcủa các điện tử càng tăng, khả năng khuếch tán tăng lên, giá trị sức điện động tănglên
Nếu đốt nóng một đầu của dây dẫn thì hoạt tính của điện từ tự do ở đầu đốtnóng sẽ tăng lên vì vậy có dòng điện khuếch tán từ đầu nóng đến đầu lạnh làm chođầu nóng thiếu điện tử tự do nên mang điện tích dương còn đầu lạnh thừa điện tử
tự do nên mang điện tích âm Giữa hai đầu của dây dẫn sẽ xuất hiện một sức điệnđộng
Một số loại cặp nhiệt ngẫu thường dùng:
Trang 11Bảng2: một số cặp nhiệt điện thông dụng.
a, Khái quát chung về vi điều khiển:
Bộ vi điều khiển viết tắt là Micro-controller, là mạch tích hợp trên một chíp
có thể lập trình được, dùng để điều khiển hoạt động của một hệ thống Theochương trình điều khiển đã nạp sẵn bên trong chip, bộ vi điều khiển tiến hành đọc,lưu trữ thông tin, xử lý thông tin, sau đó dựa vào kết quả của quá trình xử lý để đưa
ra các thông báo, tín hiệu điều khiển tiến hành điều khiển quá trình hoạt động củacác thiết bị bên ngoài Vi điều khiển được ứng dụng trong rất nhiều sản phẩm côngnghiệp và tiêu dùng Trong các thiết bị điện và điện tử dân dụng, các bộ vi điềukhiển điều khiển hoạt động của TV, máy giặt, đầu đọc laser, điện thoại, lò vi-ba Trong hệ thống sản xuất tự động, bộ vi điều khiển được sử dụng trong Robot, dâychuyền tự động Các hệ thống càng thông minh thì vai trò của hệ vi điều khiểncàng quan trọng
b, Lịch sử phát triển của vi điều khiển
Trang 12Bộ vi điều khiển thực ra là một loại vi xử lí trong tập hợp các bộ vi xử lý nóichung Bộ vi điều khiển được phát triển từ bộ vi xử lí, từ những năm 1970 do sựphát triển và hoàn thiện về công nghệ vi điện tử dựa trên kỹ thuật MOS (Metal-Oxide-Semiconductor), mức độ tích hợp của các linh kiện bán dẫn trong một chipngày càng cao.
Năm 1971 xuất hiện bộ vi xử lí 4 bit loại TMS1000 do công ty texasInstruments vừa là nơi phát minh vừa là nhà sản xuất Nhìn tổng thể thì bộ vi xử lýchỉ có chứa trên một chip những chức năng cần thiết để xử lý chương trình theomột trình tự, còn tất cả bộ phận phụ trợ khác cần thiết như: bộ nhớ dữ liệu, bộ nhớchương trình, bộ chuyển đổi AD, khối điều khiển, khối hiển thị, điều khiển máy in,nối đồng hồ và lịch là những linh kiện nằm ở bên ngoài được nối vào bộ vi xử lý.Mãi đến năm 1976 công ty INTEL (Intelligen-Elictronics) mới cho ra đời bộ
vi điều khiển đơn chip đầu tiên trên thế giới với tên gọi 8048 Bên cạnh bộ xử lýtrung tâm, 8048 còn chứa bộ nhớ dữ liệu, bộ nhớ chương trình, bộ đếm và phátthời gian, các cổng vào ra digital trên một chip Các công ty khác cũng lần lượccho ra đời các bộ vi điều khiển 8 bit tương tự như 8048 và hình thành họ vi điềukhiển MCS-48
Đến năm 1980 công ty INTEL cho ra đời thế hệ thứ hai của bộ vi điều khiểnđơn chip với tên gọi 8951 Và sau đó hàng loạt các vi điều khiển cùng loại với
8951 ra đời và hình thành họ vi điều khiển MCS-51
Đến nay họ vi điều khiển 8 bit MCS51 đã có đến 250 thành viên và hầu hếtcác công ty hàng dẫn đầu thế giới chế tạo Đứng đầu là công ty INTEL và rất nhiềucông ty khác như : AMD, SIEMENS, PHILIPS, DALLAS, OKI …
c, Sơ đồ khối của một bộ vi điều khiển
Sơ đồ khối chung của hầu hết các bộ vi điều khiển bao gồm CPU, bộ nhớROM hay EPROM và RAM, mạch giao tiếp, mạch giao tiếp song song, bộ địnhthời gian, hệ thống ngắt và các BUS được tích hợp trên cùng một chip
d, Kiến trúc của vi điều khiển 8951
IC vi điều khiển 8951 thuộc họ MCS51 có các đặc điểm sau :
4 KB ROM bên trong
128 Byte RAM nội
4 Port xuất /nhập I/O 8 bit
Giao tiếp nối tiếp
64 KB vùng nhớ mã ngoài
64 KB vùng nhớ dữ liệu ngoại
Trang 13 Xử lý Boolean (hoạt động trên bit đơn).
210 vị trí nhớ có thể định vị bit
4 s cho hoạt động nhân hoặc chia
Bảng mô tả sự khác nhau của các IC trong họ MSC-51:
Bảng 3: Sự khác nhau của các IC trong họ MCS-51
Hình 7: Cấu trúc từng chân VĐK 8051
Trang 14Chức năng hoạt động của từng chân (pin) được tóm tắt như sau:
Từ chân 1 8 Port 1 (P1.0, , P1.7) dùng làm Port xuất nhập I/O để giao tiếp bênngoài
Chân 9 (RST) là chân để RESET cho 8051 Bình thường các chân này ởmức thấp Khi ta đưa tín hiệu này lên cao (tối thiểu 2 chu kỳ máy) Thìnhững thanh ghi nội của 8051 được LOAD những giá trị thích hợp để khởiđộng lại hệ thống
Từ chân 1017 là Port3 (P3.0, P3.1, , P3.7) dùng vào hai mục đích : dùng
là Port xuất / nhập I/O hoặc mỗi chân giữ một chức năng cá biệt được tómtắt sơ bộ như sau:
P3.0 (RXD) : Nhận dữ liệu từ Port nối tiếp
P3.1 (TXD) : Phát dữ liệu từ Port nối tiếp
P3.2 (INT0) : Ngắt 0 bên ngoài
P3.3 (INT1) : Ngắt 1 từ bên ngoài
P3.4 (T0) : Timer/Counter 0 nhập từ bên ngoài
P3.5 (T1) : Timer/Counter 1 nhập từ bên ngoài
P3.6 (WR) : Tín hiệu Strobe ghi dữ liệu lên bộ nhớ bên ngoài
P3.7 (RD) : Tín hiệu Strobe đọc dữ liệu lên bộ nhớ bên ngoài
Các chân 18,19 (XTAL2 và XTAL1) được nối với bộ dao động thạch anh 12MHz để tạo dao động trên CHIP Hai tụ 30 pF được thêm vào để ổn định daođộng
Chân 20 (Vss) nối đất (Vss = 0)
Từ chân 2128 là Port 2 (P2.0, P2.1, , P2.7) dùng vào hai mục đích: làmPort xuất/nhập I/O hoặc dùng làm byte cao của bus địa chỉ thì nó không còntác dụng I/O nữa Bởi vì ta muốn dùng EPROM và RAM ngoài nên phải sửdụng Port 2 làm byte cao bus địa chỉ
Chân 29 (PSEN) là tín hiệu điều khiển xuất ra của 8051, nó cho phép chọn
bộ nhớ ngoài và được nối chung với chân của OE (Outout Enable) củaEPROM ngoài để cho phép đọc các byte của chương trình Các xung tínhiệu PSEN hạ thấp trong suốt thời gian thi hành lệnh Những mã nhị phâncủa chương trình được đọc từ EPROM đi qua bus dữ liệu và được chốt vàothanh ghi lệnh của 8051 bởi mã lệnh
Chân 30 (ALE : Adress Latch Enable) là tín hiệu điều khiển xuất ra của
8051, nó cho phép phân kênh bus địa chỉ và bus dữ liệu của Port 0
Chân 31 (EA : Eternal Acess) được đưa xuống thấp cho phép chọn bộ nhớ
mã ngoàiđối với 8031
Trang 15 Chân 40 (Vcc) được nối lên nguồn 5V.
*IE Thanh ghi cho phép che chắn các ngắt OB8H
TMOD Thanh ghi chọn chế độ Timer/Counter 0,1 OA8H
*TCON Thanh ghi điều khiển Timer/Counter 0,1 89H
*T2CON Thanh ghi điều khiển Timer/Counter2 88H
THO Byte cao của bộ đếm trong Timer/Counter0 OC8H
T1O Byte thấpcủa bộ đếm trong Timer/Counter0 8CH
TH1 Byte cao của bộ đếm trong Timer/Counter1 8AH
T11 Byte thấp của bộ đếm trong Timer/Counter 1 8DH
TH2 Byte cao của bộ đếm trong Timer/Counter 2 OCDH
T12 Byte thấp của bộ đếm trong Timer/Counter 2 OCCH
RCAP2L Byte thấp của thanh ghi Capture/Reload trong TIC2 OCAH
RCAP2
H Byte cao của thanh ghi Capture/Reload trong TIC2 OCBH
*SCON Thanh ghi điều khiển cổng truyền thông nối tiếp 98H
SBUF Bộ đếm cổng truyền thông nối tiếp 99H
PCON Thanh ghi công suất tiêu thụ của 8051 87H
Trang 161.3.4 Ngắt và xử lí các ngắt
-Ngắt tràn của T0,T1:TF0,TF1
-Ngắt cổng truyền thông nối tiếp:RI,TI
-Ngắt bên ngoài vi điều khiển: INT0,INT1
-Ngắt của Timer 2:TF2
Thanh ghi cho phép ngắt IE
+EA: Cho phép /cấm tất cả ngắt ngoài
Các bộ chuyển đổi tương tự-sô, viết tắt là ADC thực hiện hai chức năng cơbản là lượng tử hóa và mã hóa Lượng tử hóa là gán cho những mã nhị phân chotừng giá trị rời rạc sinh ra trong quá trình lượng tử hóa
Biến đổi tương tự – số (analog – digital) là thành phần cần thiết trong việc
xử lý thông tin và các cách điều khiển sử dụng phương pháp số Tín hiệu thực ở
Trang 17Analog Một hệ thống tiếp nhận dữ liệu phải có các bộ phận giao tiếp Analog –Digital (A/D).
Các bộ chuyển đổi tương tự số, viết tắt là ADC thực hiện hai chức năng cơbản là lượng tử hóa và mã hóa Lượng tử hóa là gán cho những mã nhị phân chotừng giá trị rời rạc sinh ra trong quá trình lượng tử hóa
Hình 8: Quan hệ vào ra các khối ADC
Nếu bộ ADC xuất mã ra gồm n bit thì số mức ra rời rạc là 2n Đối quan hệtuyến tính, tần vào được lượng tử hóa theo đúng mức này Mỗi mức như vậy là mộttín hiệu Analog được phân biệt với hai mã kế tiếp nhau, nó chính là kích thước củaLSB (Least Significant Bit)
Trang 18Chíp ADC 0804 là bộ chuyển đổi tương tự sang số trong họ các loạt ADC
0800 từ hãng National Semiconductor Nó cũng được nhiều hãng khác sản xuất,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 gianchuyển đổi cũng là một yếu tố quan trọng khác khi đánh giá một bộ ADC Thờigian 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 đổithay đổi phụ thuộc vào tần số đồng hồ được cấp tới chân CLK và CLK IN nhưngkhông thể nhanh hơn 110s Các chân của ADC 804 được mô tả như sau:
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 804 Để truy cập ADC 804 thì chân này phải ở mức thấp
Chân RD :(đọc): Đây là một tín hiệu đầu vào được tích cực mức thấp Các
bộ ADC chuyển đổi đầu vào tương tự thành số nhị phân tương đương với nó
và giữ nó trong một thanh ghi trong RD được sử dụng để nhận dữ liệu đượcchuyển đổi ở đầu ra của ADC 804 Khi CS = 0 nếu một xung cao - xuống -thấp được áp đến chân RD thì đầu ra số 8 bít được hiển diện ở các chân dữ liệuD0 - D7 Chân RD cũng được coi như cho phép đầu ra
Chân ghi WR :(thực ra tên chính xác là “Bắt đầu chuyển đổi”) Đây là chân
đầu vào tích cực mức thấp được dùng để báo cho ADC 804 bắt đầu quá trình
Trang 19chuyển đổi Nếu CS = 0 khi WR tạo ra xung cao - xuống - thấp thì bộ ADC 804bắt đầu chuyển đổi giá trị đầu vào tương tự Vin về số nhị phân 8 bít Lượng thờigian cần thiết để chuyển đổi thay đổi phụ thuộc vào tần số đưa đến chân CLK
IN và CLK
R Khi việc chuyển đổi dữ liệu được hoàn tất thì chân INTR được ép xuốngthấp bởi ADC 804
Chân CLK IN và CLK R:Chân CLK IN là một chân đầu vào được nối tới một
nguồn đồng hồ ngoài khi đồng hồ ngoài được sử dụng để tạo ra thời gian Tuynhiên 804 cũng có một bộ tạo xung đồng hồ Để sử dụng bộ tạo xung đồng hồtrong (cũng còn được gọi là bộ tạo đồng hồ riêng) của 804 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ở như chỉ ra trên hình3.6.1.Trong trường hợp này tần số đồng hồ được xác định bằng biểu thức:
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à 110s
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ệcchuyển đổi hoàn tất thì nó xuống thấp để báo cho CPU biết là dữ liệu đượcchuyển đổi sẵn sàng để lấy đi Sau khi INTR xuống thấp, ta đặt CS = 0 và gửimột xung cao 0 xuống - thấp tới chân RD lấy dữ liệu ra của 804
Chân Vin (+) và Vin (-):Đây là các đầu vào tương tự vi sai mà Vin = Vin (+) -
Vin
(-) Thông thường Vin (-) được nối xuống đất và Vin (+) được dùng như đầuvào tương tự được chuyển đổi về dạng số
Trang 20Chân VCC:Đây là chân nguồn nuôi +5v, nó cũng được dùng như điện áp
tham chiếu khi đầu vào Vref/2 (chân 9) để hở
Chân Vref/2:Chân 9 là một điện áp đầu vào được dùng cho điện áp tham chiếu.
Nếu chân này hở (không được nối) thì điện áp đầu vào tương tự cho ADC 804 nằmtrong dải 0 đến +5v (giống như chân VCC) Tuy nhiên, có nhiều ứng dụng mà đầuvào tương tự áp đến Vin cần phải khác ngoài dải 0 đến 5v Chân Vref/2 đượcdùng
để thực thi các điện áp đầu vào khác ngoài dải 0 - 5v Ví dụ, nếu dải đầu vào tương
tự cần phải là 0 đến 4v thì Vref/2 được nối với +5v
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
Để tính điện áp đầu ra ta tính theo công thức sau :
Dout = Vin / Kích thước bước.
Cách tính giá trị điện áp đầu vào :
+ Vin= Độ mịn x Giá trị số đầu ra
+ Độ mịn = Điện áp tham chiếu / Độ phân giải
Ví dụ điện áp tham chiếu là 5V, độ phân giải 8 bit = 2^8 = 256
Giá trị đầu ra là 128 => Vin = 128x 5/256=2,5V
+Chọn kênh ngõ vào
+Chốt địa chỉ kênh vào
+Bắt đầu chuyển dổi
+Chờ chuyển đổi xong đọc kết quả