Đồ án Mạch đo nhiệt độ hiển thị số
          
        
            
               
            
 
            
                
                    MẠCH ĐO NHIỆT ĐỘ HiỂN THỊ SỐ
Thực hiện: Đào Minh Vũ
Vấn đề đo nhiệt độ rất cần thiết trong nhiều lĩnh vực sản xuất công nghiệp và trong đời sống. Nắm được tầm quan trọng này, em đã chọn đề tài thiết kế mạch đo nhiệt độ và hiển thị số.Tuy nhiên, đồ án chỉ giới hạn trong phạm vi là đồ án 1, nên tính hiệu quả thực tế của mạch không cao. 
 Khối cảm biến nhận nhiệt độ từ môi trường bên ngoài chuyển thành mức điện áp DC tương ứng đưa vào khối chuyển đổi tương tự số. Việc điều chỉnh nguồn tham chiếu cho ADC sẽ tạo ra độ phân giải cho mạch đo theo đúng yêu cầu. Hoạt động của ADC được điều khiển bởi vi xử lý 89C51. Vi điều khiển AT89C51 nhận dữ liệu dạng số từ khối chuyển đổi ADC và kèm theo các tín hiệu điều khiển led tới khối giải mã BCD Khối hiển thị gồm 4 led 7 đoạn tương ứng số hàng chục, đơn vị, số lẻ và chữ C
                
              
                                            
                                
            
 
            
                 26 trang
26 trang | 
Chia sẻ: lvcdongnoi | Lượt xem: 10956 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang tài liệu Đồ án Mạch đo nhiệt độ hiển thị số, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
0 
 ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH 
TRƯỜNG ĐẠI HỌC BÁCH KHOA 
Tp HCM, tháng 12/2009 
ĐỒ ÁN MÔN HỌC 1 
MẠCH ĐO NHIỆT ĐỘ HiỂN THỊ SỐ 
GIÁO VIÊN HƢỚNG DẪN: cô ĐẶNG NGỌC HẠNH 
 SINH VIÊN: ĐÀO MINH VŨ 40603054 
1 
Lời cảm ơn 
 Cám ơn cô 
Đặng Ngọc Hạnh đã 
giúp đỡ và hướng dẫn 
em trong suốt quá trình 
thực hiện đồ án này. 
ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH 
TRƯỜNG ĐẠI HỌC BÁCH KHOA 
Tp HCM, tháng 12/2009 
ĐỒ ÁN MÔN HỌC 1 
MẠCH ĐO NHIỆT ĐỘ HiỂN THỊ SỐ 
SINH VIÊN: ĐÀO MINH VŨ 40603054 
GIÁO VIÊN HƢỚNG DẪN: cô ĐẶNG NGỌC HẠNH 
2 
 Nội dung 
1. Lời nói đầu 
2. Giới thiệu đề tài 
3. Sơ đồ khối 
4. Chức năng các khối 
5. Sơ đồ nguyên lý 
6. Giải thuật chương trình 
7. Thi công lắp đặt 
8. Kết luận 
9. Tài liệu tham khảo 
3 
HIỂN THỊ 
LED 7 
ĐOẠN 
NGUỒN 
THAM CHIẾU 
0.64V 
Cảm biến LM35 AT89C51 
Giải mả BCD 
74LS47 
ADC0804 
1. LỜI NÓI ĐẦU: 
 Vấn đề đo nhiệt độ rất cần thiết trong nhiều lĩnh vực sản xuất công 
nghiệp và trong đời sống. Nắm được tầm quan trọng này, em đã chọn 
đề tài thiết kế mạch đo nhiệt độ và hiển thị số 
 Em đã cố gắng vận dụng những kiến thức đã học ở trường, cùng với 
sự tìm tòi nghiên cứu để hoàn thành tốt đồ án này 
 Tuy nhiên, đồ án chỉ giới hạn trong phạm vi là đồ án 1, nên tính hiệu 
quả thực tế của mạch không cao. 
2. GIỚI THIỆU ĐỀ TÀI: 
 Kyõ thuaät vi söû lyù hieän nay raát phaùt trieån, so vôùi kyõ thuaät soá thì kyõ thuaät vi 
söû lyù nhoû goïn hôn raát nhieàu, do noù ñöôïc tích hôïp laïi vaø ñöôïc laäp trình ñeå 
ñieàu khieån. 
 Vôùi tính öu vieät cuûa vi xöû lyù thì trong phaïm vi ñoà aùn nho û này, nó được 
ứng dụng trong việc điều khiển khối chuyển đổi tương tự sang số và khối 
hiển thị số. 
 Thieát keá maïch ño nhieät ñoä trong daûi töø 00C – 1000C hieån thò soá 
 Vieát chöông trình (phaàn meàm) và thiết lập phần cứng ñeå ñaùp öùng caùc yeâu 
caàu treân 
3. SƠ ĐỒ KHỐI: 
 Khối cảm biến nhận nhiệt độ từ môi trường bên ngoài chuyển thành 
 mức điện áp DC tương ứng đưa vào khối chuyển đổi tương tự số. 
 Việc điều chỉnh nguồn tham chiếu cho ADC sẽ tạo ra độ phân giải 
 cho mạch đo theo đúng yêu cầu. Hoạt động của ADC được điều 
 khiển bởi vi xử lý 89C51 
4 
 Vi điều khiển AT89C51 nhận dữ liệu dạng số từ khối chuyển đổi ADC 
 và kèm theo các tín hiệu điều khiển led tới khối giải mã BCD 
 Khối hiển thị gồm 4 led 7 đoạn tương ứng số hàng chục, đơn vị, số lẻ 
 và chữ oC 
4. CHỨC NĂNG CÁC KHỐI: 
4.1. Khối cảm biến nhiệt độ: 
 Có rất nhiều dụng cụ chuyên biệt hỗ trợ cho việc đo nhiệt độ như: 
 Caëp nhieät ñieän 
 Nhieät keá ñieän keá kim loaïi 
 Nhieät ñieän trôû kim loaïi 
 Nhieät ñieän trôû baùn daãn 
 Caûm bieán thaïch anh 
 Vieäc söû duïng caùc IC caûm bieán nhieät ñeå ño nhieät ñoä laø moät phöông phaùp 
 thoâng duïng và rẻ tiền 
 Nguyên lý hoạt động chung của IC cảm biến nhiệt: 
 IC ño nhieät ñoä laø moät maïch tích hôïp nhaän tín hieäu nhieät ñoä chuyeån thaønh 
tín hieäu ñieän döôùi daïng doøng ñieän hay ñieän aùp. Döïa vaøo ñaëc tính raát nhaïy 
cuûa caùc baùn daãn vôùi nhieät ñoä, taïo ra ñieän aùp hoaëc doøng ñieän, tæ leä thuaän 
vôùi nhieät ñoä tuyeät ñoái. Ño tín hieäu ñieän ta bieát ñöôïc giaù trò cuûa nhieät ñoä 
caàn ño 
 Có rất nhiều loại IC cảm biến nhiệt, nhưng được sử dụng thông dụng, rẻ 
tiền và dễ kiếm là IC LM35 
 LM35 có độ biến thiên theo nhiệt độ 10mV/1oC. Sai soá cöïc ñaïi 1,50C khi 
nhieät ñoä lôùn hôn 100
0
C. 
 Phaïm vi söû duïng –550C – 1500C 
 Tín hiệu ngõ ra tuyến tính liên tục với những thay đổi của ngõ vào 
 Giới hạn trong đề tài là đo nhiệt độ từ 0
0
C– 1500C 
 +Vs (4V to20V) 
 OUTPUT 
 0 mV+ 10mV/1oC 
LM35
5 
4.2. Khối chuyển đổi tƣơng tự số ADC: 
 Ñeå keát noái giöõa nguoàn tín hieäu töôïng töï vôùi caùc heä thoáng xöû lyù 
soá ngöôøi ta duøng caùc maïch chuyeån ñoåi töông töï sang soá (ADC) 
nhaèm bieán ñoåi tín hieäu töông töï sang soá 
 Chuyeån ñoåi ADC coù raát nhieàu phöông phaùp.Tuy nhieân,moãi phöông 
phaùp ñeàu coù nhöõng thoâng soá cô baûn khaùc nhau: 
 + Ñoä chính xaùc cuûa chuyeån ñoåi AD. 
 + Toác ñoä chuyeån ñoåi . 
 + Daõi bieán ñoåi cuûa tín hieäu töông töï ngoõ vaøo 
 Các phương pháp chuyển đổi AD: 
 Bộ bieán ñoåi A/D loaïi “Tracking” 
 Bộ bieán ñoåi A/D loaïi xaáp xæ lieân tieáp 
 Boä bieán ñoåi A/D moät ñoä doác 
 Bộ bieán ñoåi A/D tích phaân hai ñộ doác 
 Thông số kỹ thuật ADC0804: 
 Độ phân giải 8bit (dữ liệu ngõ ra song song). ADC0804 hoạt 
động theo phương pháp xấp xỉ liên tiếp. Sự so sánh điện áp tín 
hiệu vào và tín hiệu ra nhỏ hơn hoặc lớn hơn sẽ điều khiển sự 
chỉ thị tăng hoặc giảm của SAR (thanh ghi xấp xỉ liên tiếp) và 
đồng thời điều khiển hoạt động theo điện áp đo Vi. Sai số lớn 
nhất cho bộ biến đổi A/D là +1/2 LSB bit nhỏ nhất. 
 Tốc độ biến đổi tc = nTh, Th là chu kỳ xung clock của bộ 
biến đổi, n là số bit 
 Lối vào điện áp vi phân 
 Tín hiệu tương thích TTL 
 Bộ phát xung nhịp trên chip 
 Dải điện áp vào 0V-5V (Nguồn đơn) 
 Không cần chỉnh offset 
 Có thể dùng mạch tạo clock trong chip hoặc clk ngoài, thời 
gian chuyển đổi phụ thuộc vào tần số đồng hồ được cấp tới 
chân CLK R và CLK IN và không bé hơn 110μs 
6 
 Sơ đồ chân 
 Chân số 6 và chân số 7 là 2 đầu 
vào tương tự vi sai, trong đó 
 Vin = Vin (+) – Vin (-). Thông 
thường Vin (-) được nối mass, 
Vin (+) được dùng làm đầu vào 
tương tự và sẽ được chuyển đổi 
về dạng số. 
 Chân số 20: Vcc 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ở 
 Chân số 9: Vref/2 là chân điện áp 
đầu vào được dùng làm điện áp 
tham chiếu. 
 chân số 18 – 11 (D0 - D7) 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). 
 Độ phân giải 8 Bit → 256 mức ngõ 
 ra 
→ 
→ 
Yêu cầu độ phân giải 0.5oC, chọn Vref/2 = 0.64V 
→ Vin = 0 - 1.28V 
→ 
 Nếu nhiệt độ đo là 0.5oC thì Vin = 5mV → Dout = 1 
→ nhiệt độ tối đa ADC có thể chuyển đổi là 
 256 * 0.5 oC = 128oC 
 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 
0.64 0- 1.28 1.28/256=5 
7 
 Tạo xung nhịp cho ADC: 
Xung nhịp cho A/D có thể được lấy từ 
nguồn bên ngoài như CPU clock hay 
đơn giản hơn là dùng mạch RC tạo 
self-clocking như hình. CLK IN (chân 
số 4) tạo nên mạch Schmitt trigger. 
 R=10 k , C=150pF 
 → tần số f=606 kHz thời 
 gian chuyển đổi là 110 s. 
 Các chân chức năng: 
 Chân 1: CS chọn chip, đầu vào tích cực thấp để kích hoạt và 
truy cập ADC 
 Chân 2: RD là một tín hiệu vào tích cực thấp. khi CS=0, nếu có 
một xung cao xuống thấp đến chân RD thì tín hiệu ra 8 bit được 
đưa đến các chân DB0 – DB7 
 Chân số 3, chân vào tích cực thấp 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ì ADC 
 bắt đầu quá trình chuyển đổi. Khi việc chuyển đổi hoàn 
 tất thì chân INTR xuống mức thấp. 
 Chân số 5 : là chân ra. Bình thường trạng thái cao, khi chuyển 
đổi hoàn tất thì xuống thấp để báo dữ liệu sẵn sàng để lấy đi. 
Timing diagrams 
8 
 Hoạt động: 
 CS=0→ truy cập ADC → cấp 
 xung thấp tới WR → thực 
 hiện chuyển đổi → chờ 
 INTR=0 → cấp xung thấp tới 
 RD → dữ liệu 8 bit tới DB0- 
 DB7 
 Tuy nhiên ta có thể thực hiện 
 chế độ free-running như hình 
 vẽ 
9 
4.3. Khối điều khiển 8051: 
4.3.1. Bộ nhớ dữ liệu trên chip: 
IC vi ñieàu khieån 8051 thuoäc hoï MCS51 coù caùc ñaët ñieåm sau: 
 4 kbyte ROM (ñöôïc laäp trình bôûi nhaø saûn xuaát) 
 128 byte RAM 
 4 port I/0 8bit 
 Hai boä ñònh thôøi 16bit 
 Giao tieáp noái tieáp 
10 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5
P1.6
P1.7
RST
(RXD)P3.0
(TXD)P3.1
(T0)P3.4
(T1)P3.5
XTAL2
XTAL1
GND
(INT0)P3.2
(INT1)P3.3
(RD)P3.7
(WR)P3.6
Vcc
P0.0(AD0)
P0.1(AD1)
P0.2(AD2)
P0.3(AD3)
P0.4(AD4)
P0.5(AD5)
P0.6(AD6)
P0.7(AD7)
EA/VPP
ALE/PROG
PSEN
P2.7(A15)
P2.6(A14)
P2.5(A13)
P2.4(A12)
P2.3(A11)
P2.2(A10)
P2.1(A9)
P2.0(A8)
8051
(8031)
 64KB khoâng gian boä nhôù chöông trình môû roäng 
 64 KB khoâng gian boä nhôù döõ lieäu môû roäng 
 moät boä xöû lí luaän lí (thao taùc treân caùc bit ñôn) 
 210 bit ñöôïc ñòa chæ hoùa 
 boä nhaân / chia 4s 
4.3.2. 8051 Pin Diagram: 
 Chöùc naêng cuûa caùc chaân cuûa 8951 
 Port 0 : laø port coù 2 chöùc naêng ôû treân chaân töø 32 ñeán 39 (khoâng 
duøng boä nhôù môû roäng) coù hai chöùc naêng nhö caùc ñöôøng IO. Ñoái vôùi 
caùc thieát keá côõ lôùn (vôùi boä nhôù môû roäng) noù ñöôïc keát hôïp keânh giöõa 
caùc bus ) 
 Port 1 : laø moät port I/O treân caùc chaân 1-8. Caùc chaân ñöôïc kyù hieäu 
P1.0, P1.1, P1.2 … coù theå duøng cho caùc thieát bò ngoaøi neáu caàn. 
Port1 khoâng coù chöùc naêng khaùc, vì vaäy chuùng ta chæ ñöôïc duøng 
trong giao tieáp vôùi caùc thieát bò ngoaøi. 
11 
+5V
+5V
100
8,2K
10UF
 por t 2 : laø moät port coâng duïng keùp treân caùc chaân 21 – 28 ñöôïc duøng 
nhö caùc ñöôøng xuaát nhaäp hoaëc laø byte cao cuûa bus ñòa chæ ñoái vôùi 
caùc thieát keá duøng boä nhôù môû roäng. 
 Port 3 : laø moät port coâng duïng keùp treân caùc chaân 10 – 17. Caùc chaân 
cuûa port naøy coù nhieàu chöùc naêng 
 P3.0 RXD Döõ lieäu nhaän cho port noái tieáp 
 P3.1 TXD Döõ lieäu phaùt cho port noái tieáp 
 P3.2 INTO Ngaét 0 beân ngoaøi 
 P3.3 INT1 Ngaét 1 beân ngoaøi 
 P3.4 TO Ngoõ vaøo cuûa timer/counter 0 
 P3.5 T1 Ngoõ vaøo cuûa timer/counter 1 
 P3.6 WR Xung ghi boä nhôù döõ lieäu ngoaøi 
 P3.7 RD Xung ñoïc boä nhôù döõ lieäu ngoaøi 
 EA (External Access) : 
Tín hieäu vaøo EA treân chaân 31 thöôøng ñöôïc maéc leân möùc cao (+5V) 
hoaëc möùc thaáp (GND). Neáu ôû möùc cao, 8951 thi haønh chöông trình 
töø ROM noäi trong khoaûng ñòa chæ thaáp (4K). Neáu ôû möùc thaáp, 
chöông trình chæ ñöôïc thi haønh töø boä nhôù môû roäng. Neáu EA ñöôïc 
noái möùc thaáp boä nhôù beân trong chöông trình 8951 seõ bò caám vaø 
chöông trình thi haønh töø EPROM môû roäng. Ngöôøi ta coøn duøng chaân 
EA laøm chaân caáp ñieän aùp 21V khi laäp trình cho EPROM trong 
8951. 
 SRT (Reset) : 
Ngoõ vaøo RST treân chaân 9 laø ngoõ reset cuûa 8951. 
Khi tín hieäu naøy ñöôïc ñöa leân muùc cao (trong ít 
nhaát 2 chu kyø maùy ), caùc thanh ghi trong 8951 ñöôïc 
taûi nhöõng giaù trò thích hôïp ñeå khôûi ñoäng heä thoáng. 
12 
 Traïng thaùi caùc thanh ghi sau khi reset 
Thanh ghi Noäi dung 
Ñeám chöông trình 
Tích luõy 
B 
PSW 
SP 
DPTR 
Port 0-3 
IP 
IE 
Caùc thanh ghi ñònh thôøi 
SCON 
SBUF 
PCON(HMOS) 
PCON(CMOS) 
0000H 
00H 
00H 
00H 
07H 
0000H 
FFH 
XXX00000B 
0XX00000B 
00H 
00H 
00H 
0XXXXXXB 
0XXX0000B 
 Caùc ngoõ vaøo boä dao ñoäng treân chip : 
Nhö ñaõ thaáy trong caùc hình treân, 8951 coù moät boä dao ñoäng treân 
chip. Noù thöôøng ñöôïc noái vôùi thaïch anh giöõa hai chaân 18 vaø 19. Caùc 
tuï giöõa cuõng caàn thieát nhö ñaõ veõ. Taàn soá thaïch anh thoâng thöôøng laø 
12MHz. 
 Caùc bank thanh ghi : 
32 byte thaáp nhaát cuûa boä nhôù noäi laø daønh cho caùc bank thanh ghi. 
Boä leänh cuûa 8951 hỗ trôï 8 thanh ghi (RO ñeán R7) vaø theo maëc ñònh 
(sau khi Reset heä thoáng) caùc thanh ghi naøy ôû caùc ñòa chæ 00H-07H 
4.3.3. Tập lệnh 
Toùm taét caùc leänh được sử dụng cuûa VXL 89C51 
1. Nhoùm leänh xöû lyù soá hoïc: 
 MUL AB (1,4) Nhaân noäi dung thanh ghi A vôùi noäi dung thanh ghi B. 
 DIV AB (1,4) Chia noäi dung thanh ghi A cho noäi dung thanh ghi B. 
 ORL A,data (2,1): OR thanh ghi A vôùi moät döõ lieäu tröïc tieáp. 
 ORL A,#data (2,1): OR thanh ghi A vôùi moät döõ lieäu töùc thôøi. 
 SETB bit (2,1): Ñaët moät bit tröïc tieáp. 
13 
 CLR bit (2,1): xóa moät bit tröïc tieáp. 
2. Nhoùm leänh chuyeån döõ lieäu: 
 MOV A,Rn (1,1):Chuyeån noäi dung thanh ghi Rn vaøo thanh ghi A. 
 MOV A,#data (2,1): Chuyeån döõ lieäu töùc thôøi vaøo thanh ghi A. 
 MOV Rn,#data (2,1): Chuyeån döõ lieäu töùc thôøi vaøo thanh ghi Rn. 
 PUSH data (2,2) Chuyeån döõ lieäu tröïc tieáp vaøo ngaên xeáp vaø taêng SP 
 POP data (2,2) Chuyeån döõ lieäu tröïc tieáp vaøo ngaên xeáp vaø giaûm SP 
3. Nhoùm leänh chuyeàn ñieàu khieån: 
 ACALL addr11 (2,2): Goïi chöông trình con duøng ñòa chì tuyeät ñoái. 
 LCALL addr16 (3,2): Goïi chöông trình con duøng ñòa chæ daøi. 
 RET (1,2): Trôû veà töø leänh goïi chöông trình con. 
 RETI (1,2): Trôû veà töø leänh goïi ngaét. 
 SJMP rel (2,2):Nhaûy ngaén. 
 JB bit,rel (3,2): Nhaûy töông ñoái neáu bit tröïc tieáp ñöôïc ñaët. 
 JNB bit,rel (3,2) Nhaûy töông ñoái neáu bit tröïc tieáp khoâng ñöôïc ñaët. 
 CJNE Rn,#data,rel (3,2) So saùnh döõ lieäu töùc thôøi vôùi noäi dung thanh ghi 
 Rn vaø nhaûy neáu khoâng baèng. 
 DJNZ Rn,rel (2,2): Giaûn thanh ghi Rn vaø nhaûy neáu khoâng baèng 
4.4. Giải mã BCD 74LS47: 
14 
Pin Names 
Description 
• A0–A3 
• RBI 
• LT 
• BI/RO 
• a – g 
• Vcc 
• VIH 
• VHL 
• BCD Inputs 
• Ripple Blanking Input (Active LOW) 
• Lamp Test Input (Active LOW) 
• Blanking Input (Active LOW) or 
 Ripple Blanking Output (Active LOW) 
• Segment Outputs (Active LOW) 
• 4.75V – 5.25V 
• Min 2V 
• Max 0.8V 
15 
4.5. Hiển thị led 7 đoạn: 
 Led 7 đoạn có cấu tạo gồm 7 led đơn có xếp theo hinh 8 và có thêm một 
led đơn hình tròn nhỏ thể hiện dấu chấm tròn ở góc dưới, bên phải 
 8 led đơn trên led 7 đoạn có Anode (cực +) hoặc Cathode (cực -) được nối 
chung với nhau vào một điểm. 
 Nếu led 7 đoạn có Anode chung, đầu chung nay được nối với +Vcc 
Nếu led 7 đoạn có Cathode chung, đầu chung này được nối xuống mass 
 Vì led 7 đoạn chứa bên trong nó các led đơn, do đo khi kết nối cần đảm 
bảo dòng qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led. Nếu 
kết nối với nguồn 5V có thể hạn dòng bằng điện trở 330Ω trước các chân 
nhận tin hiệu điều khiển. 
 Dựa vào đặc tính sinh lý của mắt người, mỗi led delay khoảng 3-5ms, như 
thế mắt người sẽ có cảm giác 4 led cùng sang (phương pháp quét led). 
 Để điều khiển ON/OFF các led, sử dụng transitor loại PNP nhận dòng từ vi 
điều khiển, led ON khi tín hiệu từ vi điều khiển đến transitor ở mức 0. 
 Duøng IC7447 cho loaïi anod chung hoaëc duøng IC7448 cho loaïi cathod 
chung. 
16 
5. Sơ đồ nguyên lý: 
5.1. Khối nguồn 
 Cầu diod tạo ra điện áp DC, qua tụ C lọc bỏ thành phần gợn sóng, 
 sau đó qua IC7805 ổn áp ngõ ra 4.8V- 5.2V 
17 
5.2. Khối hiển thị: 
4 led 7 đoạn anod chung, được điều khiển ON/OFF bằng 
transistor nhận tín hiệu từ P0.4─P0.7 của vi xử lý, Led 7 đoạn sẽ 
được ON khi tin hiệu từ vi điều khiển đến transitor ở mức 0, đồng 
thời sử dụng IC74LS47 để giải mã BCD qua led 7 đoạn 
18 
5.3. Khối cảm biến và chuyển đổi: 
Zener ổn áp tạo 
nguồn ổn định 
cùng với biến 
trở 1K để tạo 
điện áp ≈ 0,64V 
19 
5.4. Khối điều khiển: 
Điện trở thanh RP1 dùng để 
Kéo port lên nguồn,hạn dòng 
Cho led 7 đoạn 
 Điện trở thanh thường dùng 
 khi cần nhiều điện trở giống 
 nhau, nhưng yêu cầu thiết 
 kế cho gọn 
20 
6. Giải thuật chƣơng trình: 
 Y N 
START 
KHỞI ĐỘNG ADC 
BIẾN ĐẾM R5=250 
LƯU LẠI GIÁ TRỊ NẠP ACC 
Chia A/2 
R6 ← Số dư 
A ← số nguyên 
Chia tiếp A/10 
A ← Số nguyên 
 B ← Số dư 
Hiền thị 
Lấy lại giá trị nạp ACC 
R5 ↓ 
R5=0 
HIỂN THỊ 
Cho phép 
led 1 
P0← A 
DeLay 
Cho phép led 
2 
A← B 
P0 ←A 
Delay 
Cho phép led 3 
A← R6 
P0 ←A 
Delay 
RET 
END 
21 
 Đầu tiên khởi động ADC CS=0, 
Nhận tín hiệu analog và bắt đầu 
quá trình chuyển đổi WR=0. Chờ 
chân INTR=0, đưa dữ liệu ra D0-D7 
RD=0. 
 8051 nhận tín hiệu qua port1 đưa 
vào thanh ghi ACC. Để tạo độ ổn 
định hiển thị (do LM35 rất nhạy) nên 
ta delay 5s cho mỗi lần lấy mẫu tín 
hiệu, bằng cách dùng vòng lặp và 
lưu lại lại giá trị ACC để biến đổi. 
 Do mỗi led sáng delay 5ms, 
 4 led sáng mất 20ms, nên lặp 
 vòng 250 lần để delay 5s cho mỗi 
 lần lấy tín hiệu. 
 Do giá trị nhận được gấp 2 lần nhiệt 
độ đo nên ta dùng phương pháp 
chia 2. Nếu số dư =1 thì ta xuất ra 
giá trị 5 ở số lẻ, nếu =0 thì xuất ra 
giá trị 0. Số nguyên thu được tiếp 
tục chia cho 10 để tách chữ số 
hàng đơn vị và chục, sau đó xuất ra 
led tương ứng. 
 Sử dụng phương pháp quét led với 
thời gian delay 5ms (sử dụng vòng 
lặp) 
 Để điều khiển led ta OR giá trị trong 
ACC với mã điều khiển led tương 
ứng 
#70XX,#0B0XX,#0D0XX,#0E0XX 
 LED cuối cùng dùng để hiễn thị 
 chữ C. 
DELAY 
R1←10 
R2←250 
R2 ↓ 
R2=0 
R1 ↓ 
R1=0 
RET 
22 
 ********Code chƣơng trình ******* 
LOOP: SETB P2.1;RD 
 SETB P2.0;CS 
 SETB P2.2;WR 
 CLR P2.0;CS 
 NOP 
 CLR P2.2;WR 
 NOP 
 SETB P2.2;WR 
 JB P2.3,$;INTR 
 CLR P2.1;RD 
 NOP 
 MOV A,P1 
 MOV R5,#250 
LOOP1: 
 PUSH ACC; lưu lại giá trị nhận 
 MOV B,#2 
 DIV AB; chia 2 
 MOV R6,B; số dư 
 MOV B,#10 
 DIV AB; chia 10 
HIENTHI:
 ORL A,#070H; cho phép led1 sáng 
 MOV P0,A 
 LCALL DELAY_5MS 
 MOV A,B 
 ORL A,#0B0H; cho phép led2 sáng 
 MOV P0,A 
 LCALL DELAY_5MS 
 MOV A,R6 
 MOV B,#5 
 MUL AB 
 ORL A,#0D0H; cho phép led3 sáng 
 MOV P0,A 
 LCALL DELAY_5MS 
 MOV A,#0E0H 
 MOV P0,A 
 LCALL DELAY_5MS 
 POP ACC 
 DJNZ R5,LOOP1 
 SJMP LOOP 
DELAY_5MS: 
 MOV R1,#10 
 LAP: MOV R2,#250 
 DJNZ R2,$ 
 DJNZ R1,LAP 
 RET 
 END 
23 
7. Thi công lắp đặt: 
7.1. Kiểm tra hoạt động của mạch trên testboard 
24 
7.2. Thiết kế mạch in: 
 Mạch vi xử lý+ADC Mạch led 
8. Kết luận: 
8.1. Những thuận lợi và khó khăn: 
 Sau khi nghiên cứu lý thuyết và lựa chọn phương án thực hiện, cùng 
với yêu cầu của giáo viên hướng dẫn cần thêm cảm biến độ ẩm, thì 
việc lựa chọn IC ADC0809 là phương án tốt nhất. IC0809 là IC 
chuyển đổi tương tự số ADC với 8 ngõ vào lựa chọn và 8 chân ngõ 
ra, tuy nhiên việc mô phỏng IC này không thành công trong việc cấp 
xung nhịp, hơn nữa cảm biến độ ẩm không tìm được cả về lý thuyết 
lẫn linh kiện trên thị trường, nên em đã chuyển hướng sang nghiên 
cứu IC0804. 
 Đồ án môn học này là cơ hội cho em liên hệ thực tế về lý thuyết vi xử 
lý và một số IC khác, cũng như nâng cao hơn kỹ năng về thực tập 
điện tử, tuy nhiên do kinh nghiệm và tay nghề còn kém nên sản phẩm 
làm ra chưa thực sự hoàn hảo. 
25 
8.2. Noäi dung chính cuûa ñeà taøi naøy bao goàm nhöõng 
 phaàn chính sau: 
 Khaûo saùt boä vi ñieàu khieån 8051 
 Caùc phöông phaùp chuyeån ñoåi töø töông töï sang soá. 
 Heä thoáng ño nhieät ñoä vaø caùc phöông phaùp ño nhieät ñoä. 
 Xaây döïng sô ñoà khoái toaøn maïch . 
 Xaây döng löu ñoà giaûi thuaät 
 Vieát chöông trình. 
 Thi coâng laép raùp vaø kieåm tra. 
8.3. Đánh giá sản phẩm và quá trình thực hiện đồ án: 
Do giáo viên hướng dẫn và các giáo viên khác đánh giá và cho ý kiến. 
Em xin chân thành cảm ơn những đóng góp ý kiến quý báu của quý 
thầy cô. 
9. Tài liệu tham khảo: 
 Vi xử lý ─ Hồ Trung Mỹ ─ NXB Đại học quốc gia TP.HCM 
 The 8051 Microcontroller –University of Guelph-I.SCOTT MACKENZIE 
 Bài giàng đo điện ─ thầy Đỗ Quốc Tuấn 
 DATA SHEET 89C51 
 DATA SHEET ADC0804 
 DATA SHEET LM35 
 DATA SHEET 74LS47 
            Các file đính kèm theo tài liệu này:
 Mạch Đo Nhiệt Độ Hiển Thị Số.pdf Mạch Đo Nhiệt Độ Hiển Thị Số.pdf