intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đề tài: Đo và hiển thị nhiệt độ dùng LM35&8051

Chia sẻ: Hiep Nguyen | Ngày: | Loại File: DOC | Số trang:21

248
lượt xem
66
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

RESET: (Tín hi u vào): Dùng để khởi động hệ thống khi chương trinh đang chạy mà gặp lỗi RxD,TxD: Là hai chân nhận và truyền số liệu của cổng truyền thông nối tiếp INT0,INT1: Là hai chân nhận tín hiệu ngắt từ bên ngoài WR ( Tín hiệu ra) Cho phép viết dữ liệu tới các ngoại vi, bộ nhớ bên ngoài vi điều khiển

Chủ đề:
Lưu

Nội dung Text: Đề tài: Đo và hiển thị nhiệt độ dùng LM35&8051

  1. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L MỤC LỤC 1.2.3 Các bước để chuyển đổi của ADC............................................................................... 8 1.4.1. Giới thiệu chung về họ LM35.................................................................................... 10 1.4.2 Đặc tính của họ LM35:................................................................................................ 10 1.4.3 Cách chọn cảm biến ho LM35: ..................................................................................11 PHẦN I 1.1 VI ĐIỀU KHIỂN 89C51 1.1.1. Sơ đồ khối và ý nghĩa các chân của 89c51 8051 có 4 cổng vào/ra số • P0 có 8 bit là P0.0 đến P0.7 • P0 có 8 bit là P1.0 đến P1.7 • P0 có 8 bit là P2.0 đến P2.7 • P0 có 8 bit là P3.0 đến P3.7 Ngoài chức năng là các cổng vào/ra số thì P0 còn là 8 bit (D0 đến D7) của bus dữ liệu hoặc là 8 bit thấp (A0 đến A7) của bus địa chỉ ,P2 lá 8 bit cao (A8 đến A15) của bus địa chỉ khi cần thiết mở rộng thêm các ngoại vi, bộ nhớ ngoài cho 8051 SVTH: 1 Líp: C§-§H§iÖn 2_K5
  2. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L * RESET: (Tín hiệu vào): Dùng để khởi động lại toàn bộ hệ thống khi chương trinh đang chạy mà gặp lỗi * RxD,TxD: Là hai chân nhận và truyền số liệu của cổng truyền thông nối tiếp * INT0,INT1: Là hai chân nhận tín hiệu ngắt từ bên ngoài * WR ( Tín hiệu ra) Cho phép viết dữ liệu tới các ngoại vi, bộ nhớ bên ngoài vi điều khiển * RD: ( Tín hiệu ra) Cho phép đọc dữ liệu từ các ngoại vi,bộ nhớ dữ liệu ngoài vi điều khiển * X1,X2: Dùng để tạo xung nhịp cho vi điều khiển * Vcc,GND: Cấp nguồn cho vi điều khiển (Vcc=5 VDC) * EA/VP : Là tín hiệu vào =1: Vi điều khiển sử dụng cả bộ nhớ chương trình bên trong và bộ nh ớ chương trình bên ngoài + Nếu vi điều khiển có 4 Kb bộ nhớ chương trinh bên trong với địa ch ỉ 0000H đến 0FFFH thì bộ nhớ chương trình bên ngoai ph ải có đ ịa ch ỉ 1000h đến 1FFFH + Nếu vi điều khiển co 8 Kb bộ nhớ chương trinh bên trong với địa ch ỉ 0000H đến 1FFFH thì bộ nhớ chương trình bên ngoai ph ải có địa ch ỉ 2000h đến FFFFH =0: vi điều khiển chỉ sử dụng bộ n hớ bên ngoài co địa chỉ là:0000H đến FFFFH * ALE/P: (tín hiệu ra) Là tín hiệu chốt địa chỉ .dùng để phân biệt khi nào P0 là bus dữ liệu,khi nào là bus dữ liệu khi vi điều khi ển c ần gép n ối v ới các ngoại vi * ALE=1:P0 là bus địa chỉ * ALE=1:P0 là bus dữ liệu * PSEN : Có chức năng giống như chân Rdnhunwg chỉ dùng để đọc bộ nhớ chương trình bên ngoài 1.1.2. Các thanh ghi đặc biệt Ký hiệu Tên Địa chỉ * Acc Thanh ghi chứa 0E0H *B Thanh ghi B 0F0H * PSW Thanh ghi trạng thái 0D0H SP Con trỏ ngăn xếp (8bit) 81H DPTR Con trỏ dữ liệu SVTH: 2 Líp: C§-§H§iÖn 2_K5
  3. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L DPL Byte thấp của DPTR 82H DPH Byte cao của DPTR 83H * P0 Thanh ghi đệm cổng P0 80H * P1 Thanh ghi đệm cổng P1 90H * P2 Thanh ghi đệm cổng P2 0A0H * P3 Thanh ghi đệm cổng P3 0B0H * IP Thanh ghi điều khiển các mức ưu tiên ngắt 0B8H * IE Thanh ghi cho phép/ che chắn các ngắt 0A8H TMOD Thanh ghi chọn chế độ Time/Counter 0,1 89H * TCON Thanh ghi điều khiển Time/Counter 0,1 88H *+T2CON Thanh ghi điều khiển Time/Counter 2 0C8H TH0 Byte cao của bộ đếm trong Timer/Counter 0 8CH TL0 Byte thấp của bộ đếm trong Timer/Counter 0 8AH TH1 Byte cao của bộ đếm trong Timer/Counter 1 8DH TL1 Byte thấp của bộ đếm trong Timer/Counter 1 8BH + TH2 Byte cao của bộ đếm trong Timer/Counter 2 0CDH + TL2 Byte thấp của bộ đếm trong Timer/Counter 2 0CCH Byte cao của thanh ghi Capture/ Reload trong + RCAP2H 0CBH Timer/Counter 2 Byte thấp của thanh ghi Capture/ Reload trong + RCAP2L 0CAH Timer/Counter 2 * 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 điều khiển công suất tiêu thụ của 8051 87H Chú ý: *: Chỉ các thanh ghi truy cập theo bit +: Các thanh ghi chỉ có trong 89c52 1.1.3. Bộ phát xung nhịp - Dùng để tạo xung đồng bộ cho cả hệ thống vi điều khiển làm việc. Có 2 cách để tạo xung nhịp là dùng thạch anh hoặc lấy xung dao động từ nguồn ngoài. Thông thường tần số xung nhịp là: 12MHz. 11,0592MHz. 24MHz 33pF Vcc X1 X1 12MHz 10k SVTH:33pF 3 Líp: C§-§H§iÖn X2 2_K5 X2 Dùng thạch anh Xung ngoài
  4. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L 1.1.4. Các Timer/ Counter (T/C) a. Timer/ Counter 0 và Timer/ Counter 1 Khi ứng dụng các Timer/ Counter ta phải cài đặt chúng ở một chế độ làm việc xác định. Các thanh ghi đặc biệt được thiết kế để đặt các chế độ làm việc cho các Timer/ Counter là TMOD (Time Mode) và TCON ( Time Control)  Thanh ghi TMOD GATE M1 M0 GATE M1 M0 TMOD T/ C T /C Timer 1 Timer 0 Thanh ghi TMOD có 2 phần tử giống nhau dùng để cài đặt chế độ cho các T/C 0 và T/C 1 tương ứng như hình vẽ T / C = 1 Làm Counter (Đếm xung từ bên ngoài) T / C = 0 Làm Timer ( Đếm xung hệ thống) GATE: Khi TRx=1 (x=0,1) nếu: + GATE=0 thì cho phép T/C làm việc + GATE=1 thì T/C được phép làm việc nếu INTx=1 Các chế độ làm việc M1 M0 Chế độ Mô tả 0 0 0 Bộ đếm 13bit 0 1 1 Bộ đếm 16bit 1 0 2 Chế độ Auto - Reload Timer0 là bộ đếm 8bit Time1 1 1 3 dừng  Thanh ghi TCON TCON TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 SVTH: 4 Líp: C§-§H§iÖn 2_K5
  5. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L TF1 (TCON.7): Cờ báo bộ đếm Timer/Counter 1 bị tràn TR1 (TCON.6): Bit cho phép T/C1 làm việc TF0 (TCON.5): Cờ báo bộ đếm Timer/Counter 0 bị tràn TR01 (TCON.4): Bit cho phép T/C0 làm việc IE1 (TCON.3): Cờ báo có ngắt ngoài ở chân INT 1 IT1 (TCON.2), IT0 (TCON.0): =1: Cho phép ngắt ngoài tương ứng ngắt theo sườn xuống =0: Cho phép ngắt ngoài tương ứng ngắt theo mức “0” IE0 (TCON.1): Cờ báo có ngắt ngoài ở chân INT 0 b. Timer/Counter 2 ( chỉ có trong 89c52) * Thanh ghi T2CON: T2CON TF2 EXF2 RCLK TCLK EXEN2 TR2 CP/ T / C2 TF2 (T2CON.7): Cờ tràn được dựng khi T/C2 tràn, Cờ phải được xóa bởi phần mền TF2 (T2CON.6): Cờ tràn được dựng khi chân T2EX có sườn xuống với điều kiện bit EXEN2 =1 để báo ngăt TF2 (T2CON.3): Bit cho phép Reload hoặc Capture khi có sườn xuống ở chân T2EX TF2 (T2CON.2): Bit điều khiển cho phép T/C2 chạy hoặc dừng TF2 (T2CON.1): Lựa chọn T/C2 làm việc ở chế độ Timer hoặc Counter * Các chế độ làm việc của T/C2 RCLK+TCLK CP / RL TR2 MODE 0 0 1 Chế độ Auto – Reload 0 1 1 Chế độ Capture 1 x 1 Chế độ phát Baud rate x x 0 Không hoạt dộng 1.1.5. 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: INT 0 , INT 1 • Ngắt của Timer 2: TF2 * Thanh ghi cho phép ngắt IE IE EA - ET2 ES ET1 EX1 ET0 EX0 SVTH: 5 Líp: C§-§H§iÖn 2_K5
  6. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L EA : Cho phép/cấm tất cả ngắt ngoài ET2:Cho phép/cấm ngăt Timer 2 ES: Cho phép/cấm ngắt cổng truyền thông nối tiếp ET1: Cho phép/cấm ngăt Timer 1 EX1: Cho phép/cấm ngăt ngoài INT 1 ET0: Cho phép/cấm ngăt Timer 0 EX0: Cho phép/cấm ngăt ngoài INT 0 1.1.6. Địa chỉ vectơ ngắt STT Nguồn gây ngắt Địa chỉ 1 IE0 0003H 2 TF0 000BH 3 IE1 0013H 4 TF1 001BH 5 RI_TI 0023H 6 TF2+EXF2 002BH 1.2. BỘ CHUYỂN ĐỔI TƯƠNG TỰ SANG SỐ (ADC0808) 1.2.1. Sơ đồ khối và ý nghĩa các chân Chân 1 IN3 - ngõ vào tín hiệu Analog Input 3 Chân 2 IN4 - ngõ vào tín hiệu Analog Input 4 Chân 3 IN5 - ngõ vào tín hiệu Analog Input 5 Chân 4 IN6 - ngõ vào tín hiệu Analog Input 6 Chân 5 IN7 - ngõ vào tín hiệu Analog Input 7 Chân 6 START - chân điều khiển tín hiệu bắt đầu quá trình biến đổi ADC. Chân 7 EOC - Chân phát tín hiệu báo kết thúc quá trình chuyển đổi ADC. Chân 8 2 (-5) - Ngõ ra Tín hiệu số- Data Bit 5 Chân 9 OUT EN - Chân cho phép xuất. Chân 10 CLK - chân nhận nguồn xung Clock Chân 11 Vcc - Chân nhận điện nguồn dương SVTH: 6 Líp: C§-§H§iÖn 2_K5
  7. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L Chân 12 Vref+ - Chân nhận(input) điện áp tham chiếu. Chân 13 GND - Chân nhận điện áp âm(Ground=0v) Chân 14 2(-7) - Ngõ ra Tín hiệu số- Data Bit 7 Chân 15 2(-6) - Ngõ ra Tín hiệu số- Data Bit 6 Chân 16 Vref- - Voltage Reference Negative Input Chân 17 2(-8) - Ngõ ra Tín hiệu số- Data bit 8 Chân 18 2(-4) - Ngõ ra Tín hiệu số- Data Bit 4 Chân 19 2(-3) - Ngõ ra Tín hiệu số- Data Bit 3 Chân 20 2(-2) - Ngõ ra Tín hiệu số- Data Bit 2 Chân 21 2(-1) - Ngõ ra Tín hiệu số- Data Bit 1 Chân 22 ALE - Address Latch Enable Chân 23 ADD C - Address Input C Chân 24 ADD B - Address Input B Chân 25 ADD A - Address Input A Chân 26 IN0 - ngõ vào tín hiệu Analog Input 0 Chân 27 IN1 - ngõ vào tín hiệu Analog Input 1 Chân 28 IN2 - ngõ vào tín hiệu Analog Input 2 1.2.2. Khảo sát ý nghĩa hoạt động của các chân ADC0808 - IN0, IN1, IN2, IN3, IN4, IN5, IN6, IN7 : 8 ngõ vào tín hiệu tương tự. - A, B, C : các đường địa chỉ để chọn kênh ở ngõ vào Các đường địa chỉ Chọn kênh ngõ A B C vào L L L IN0 H L L IN1 L H L IN2 H H L IN3 L L H IN4 H L H IN5 L H H IN6 H H H IN7 - ALE : chân chốt địa chỉ, khi có xung tác đ ộng vào chân ALE đ ường đ ịa ch ỉ A,B,C mới được ADC nhận vào. - START : điều khiển bắt đầu chuyển đổi Khi START = 1 : bắt đầu chuyển đổi. Khi START = 0 : kết thúc chuyển đổi. - EOC : báo hiệu kết thúc quá trình chuyển đổi Khi START = 1 thì EOC =1. SVTH: 7 Líp: C§-§H§iÖn 2_K5
  8. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L Khi chuyển đổi xong thì EOC = 0. - CK : ngõ vào xung clock (fCK = 100KHz – 1,28MHz). - 2-1, 2-2, 2-3, 2-4, 2-5, 2-6, 2-7, 2-8: 8 ngõ tín hiệu số từ 00-FFH - OE : cho phép xuất tín hiệu ra OE = 1 : cho phép. OE = 0 : không cho phép. - VRef+, VRef- : điện áp tham chiếu dương và âm, dùng để thay đổi độ phân giải. Ta có công sau: N = 256*(Vi – VRef-)/(VRef+ - VRef-) Với : N : 1 số nhị phân được chuyển đổi Vi : điện áp ngõ vào tín hiệu tương tụ. Để tiện cho việc tính toán thông thường ta nối chân VRef- xuống mass. 1.2.3 Các bước để chuyển đổi của ADC • Chọn kênh ngõ vào • Chốt địa chỉ kênh vào ALE = 1). • Bắt đầu chuyển đổi (START=1) • Chờ chuyển đổi xong , đọc kết quả 1.3. LED BẢY THANH 1.3.1 Cấu tạo - Cấu tạo LED bảy thanh bao gồm 8 led phát quang được gọi là các thanh lần lượt là : a. b, c, d, e, f ,g và dp(dấu chấm). - LED bảy thanh thường dùng làm cơ cấu quan sát, hiện thị các con số hệ thập phân. Trong một số trường hợp đặt biệt có thể dùng để hiện thị các số hệ HEX và các ký tự a g f b f A a b g 1.3.2 Phân loại LED bảy thanh 8 hai loại là: 10 9 có 7 6 Loại Anode chung e Loại Cathode chung c d a. Loại Anode chung dp SVTH: 8 Líp: C§-§H§iÖn 2_K5 1 2 3 4 5 e d A c dp
  9. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L Vcc a b c d e f g dp Để các thanh sáng ta cấp dòng điện ( 5 – 20mA) chảy qua các Diode tương ứng.Để hiện thị các số 0 – 9 trong hệ thập phân ta lựa chọn cách thanh cần sáng để hiện thị được các số tương ứng. Như vậy ta nối chân A vào dương nguồn (5VDC) còn các chân a, b, c, d, e, f, g, và dp điều khiển chúng sao cho: Nếu = “1” các thanh tối Nếu = “0” các thanh sáng b. Loại Cathode chung Đối với loại Cathode chung thì chân C nối xuống đất (0VDC) còn các chân a, b, c, d, e, f, g, và dp điều khiển chúng sao cho: Nếu = “1” các thanh sáng Nếu = “0” các thanh tối g f C a b Vcc 10 9 8 7 6 a b c d e f g dp 1 2 3 4 5 SVTH: 9 Líp: C§-§H§iÖn 2_K5 e d C c dp
  10. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L 1.3.3 Bảng mã bảy thanh Mã bảy thanh các số 0 – 9 loại Anode chung Mã Bảy DEC dp g f e d c b a Thanh 0 1 1 0 0 0 0 0 0 C0H 1 1 1 1 1 1 0 0 1 F9H 2 1 0 1 0 0 1 0 0 A4H 3 1 0 1 1 0 0 0 0 B0H 4 1 0 0 1 1 0 0 1 99H 5 1 0 0 1 0 0 1 0 92H 6 1 0 0 0 0 0 1 0 82H 7 1 1 1 1 1 0 0 0 F8H 8 1 0 0 0 0 0 0 0 80H 9 1 0 0 1 0 0 0 0 90H 1.4. CẢM BIẾN NHIỆT ĐỘ (LM35) 1.4.1. Giới thiệu chung về họ LM35 LM35 là những mạch tổ hợp làm thành cảm biến đo nhiệt độ chính sác với điện áp ra tuyến tính với nhiệt độ. LM35 không yêu cầu bất cứ sự cản chỉnh nào từ bên ngoài hoặc các mạch phụ trợ khác mà vẫn đáp ứng được độ chính xác cao ( ± 1/4 0 C tại nhiệt độ phòng và ± 3/4 0 C trên thang đo từ -55 0 C đến +150 0 C ) 1. Nối Vcc 2. Nối vào ADC 3. Nối đất 1.4.2 Đặc tính của họ LM35: - Hoạt động với điện áp từ 4V đến 30V - Tỷ lệ tuyến tính với hệ số 10mV/1 0 C - Thích hợp với các ứng dụng điều khiển Một số thông số của họ LM35: SVTH: 10 Líp: C§-§H§iÖn 2_K5
  11. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L Dải nhiệt độ và sự thay đổi trở kháng theo nhiệt độ của LM35 Nhiệt độ ( 0 C ) Trở kháng của cảm biến (k Ω ) 0 29.490 25 10.000 50 3.893 75 1.700 100 0.817 1.4.3 Cách chọn cảm biến ho LM35: Mã SP Dải nhiệt độ Độ chính xác Đầu ra Lm35A -55 0 C TO +150 0 C +1.0 0 C 10mV/F LM35 -55 0 C TO +150 0 C +1.5 0 C 10mV/F LM35CA -40 0 C TO +110 0 C +1.0 0 C 10mV/F LM35C -40 0 C TO +110 0 C +2.0 0 C 10mV/F LM35D 0 0 C TO +100 0 C +2.0 0 C 10mV/F SVTH: 11 Líp: C§-§H§iÖn 2_K5
  12. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L 1.5. CÁC LINH KIỆN KHÁC 1.5.2. Phím bấm - Sơ đồ nguyên lý Vcc 10K 2,2μF Output 1.5.2. Các linh kiện khác - Tụ điện: Chọn tụ điện có các giá trị sau 2,2μF, 3,3pF + Đối với loại tụ có giá trị 2,2μF ta chọn tụ hóa + Đối với loại tụ có giá trị 3,3pF ta chọn tụ gốm E 5VDC - Transzito : Chọn loại NPN có cấu tạo như sau E N P N C B B C Chức năng Khuếch đại dòng để quét LED hiện thị - Điện trở: Chọn loại điện trở có giá trị 10KὨ và 330Ὠ SVTH: 12 Líp: C§-§H§iÖn 2_K5
  13. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L PHẦN II 2.1. SƠ ĐỒ KHỐI VÀ CHỨC NĂNG TỪNG KHỐI 2.1.1. Sơ đồ khối LED BẢY P1 P0 THANH LM35 ADC 0808 AT 89C51 P3 P3.7 PHÍM BẤM 2.1.2. Chức năng của từng khối  Khối các phím bấm: Dùng để cho phép đo nhiệt độ được nối vào chân P3.7  Khối cảm biến nhiệt độ LM35: Các tác dụng đo sự thay đổi nhiệt độ từ bên ngoài môi trường, hoặc 1 hệ thông cần điều khiển. Và được nối với kênh 1 của bộ biến đổi tương tự sang số ADC0808  Khối cảm bộ biến đổi ADC 0808 : Dùng để chuyển đổi tín hiệu từ tương tự sang tín hiệu số được ghép nối với cổng P1 và các chân điều khiển được nối với các chân P3.0 – P3.6  Khối hiện thị: Bao gồm bốn LED bảy thanh, dùng để hiện thị nhiệt độ của môi trường SVTH: 13 Líp: C§-§H§iÖn 2_K5
  14. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L  Khối vi xử lý: Xử lý các phép toán và đưa ra hiện thị  Chi tiết xem sơ đồ nguyên lý 2.2. SƠ ĐỒ NGUYÊN LÝ SVTH: 14 Líp: C§-§H§iÖn 2_K5
  15. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L 2.3. SƠ ĐỒ THUẬT TOÁN TOÀN BỘ CHƯƠNG TRÌNH BAT DAU Hỏi đã ấn nút STAR hay P1=FFH chưa. Nếu START=0 Đúng thì làm ALE=0 công việc tiếp. Hỏi đã tác động Nếu Sai hỏi vào nút START kiểm tra lại hay chưa. Nếu Đúng cho bít điều khiển”ON” =1. ON=1 S Nếu Sai nhảy vể ? hiện thị Đ CONVERT P3.7= S Các 0 chương ? trình con Đ HEXTOBCD ON=1 BCDTO7T DISPLAY SVTH: 15 Líp: C§-§H§iÖn 2_K5
  16. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L THUẬT TOÁN CHƯƠNG TRÌNH CON ĐỌC DỮ LIỆU TỪ ADC CONVERT CHON KÊNH VÀO CHỐT ĐỊA CHỈ KÊNH VÀO BẮT ĐẦU CHUYỂN ĐỔI S Đã chuyển đổi xong ? Đ ĐỌC DỮ LIỆU KẾT THÚC SVTH: 16 Líp: C§-§H§iÖn 2_K5
  17. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L 2.4. VIẾT CHƯƠNG TRÌNH PHẦN MỀN ; CHƯƠNG TRÌNH PHẦN MỀM ;======================================================= ;*************************************************************; ;*///////////////////////////////////////////////////////////*; ;*/ TRUONG DAI HOC CONG NGHIEP HA NOI /*; ;*/ KHOA - DIEN /*; ;*/CHUONG TRINH DO VA HIEN THI NHIET DO DUNG LM35&ADC0808 /*; ;*/LOP: CD-DH DIEN2_K5 /*; ;*/ NHOM THUC HIEN: NHOM 7 /*; ;*///////////////////////////////////////////////////////////*; ;*************************************************************; NUM EQU 30H D1 EQU 50H D2 EQU 51H D3 EQU 52H ON EQU 55H ONF EQU P3.7 START EQU P3.0 EOC EQU P3.1 OE EQU P3.2 ALE EQU P3.3 AD1 EQU P3.4 AD2 EQU P3.5 AD3 EQU P3.6 ;=============================== ; CHUONG TRI`NH CHI'NH TA.I DA^Y ;=============================== MAIN: JNB ON,BAT MOV P1,#0FFH CLR START CLR ALE LCALL CONVERT LCALL HEXTOBCD ; GOI CHUONG TRINH "HEXTOBCD" LCALL BCDTO7T ; GOI CHUONG TRINH "BCDTO7T" HT: LCALL DISPLAY ; GOI CHUONG TRINH "DISPLAY" SJMP MAIN BAT: JB ONF,HT SETB ON SJMP HT ;************************************************ ; NGAN CA'CH GIU~A CA'C CHUONG TRI`NH ;************************************************ ;=============================== ;SUBROUTINE HEXTOBCD ; HEX TO BCD SVTH: 17 Líp: C§-§H§iÖn 2_K5
  18. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L ;INPUT: NUM ;OUTPUT: D1,D0 ;=============================== HEXTOBCD: MOV A,NUM MOV B,#10 DIV AB MOV D1,B ; LUU THUONG SO VAO D1 MOV B,#10 DIV AB MOV D2,B ; LUU SO DU VAO D2 MOV D3,A RET ;=============================== ; KET THUC CHUONG TRINH ;=============================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=============================== ;SUBROUTINE CONVERT ; CHUYEN DOI TIN HIEU TUONG TU SANG SO ;INPUT: P1 ;OUTPUT: NUM ;=============================== CONVERT: CLR AD1 ;CHON KENH 0 LÀ KENH NGO VAO CLR AD2 ;CUA CAM BIEN NHIET DO CLR AD3 ;LM35 SETB ALE ;CHOT DIA CHI KENH NGO VAO SETB START ; BAT DAU CHUYEN DOI NOP NOP CLR ALE CLR START LA: JNB EOC,LA ;CHO` CONVERT SETB OE ;CHO PHEP DOC DU LIEU MOV NUM,P1 ;DOC DU LIEU TU ADC VAO CONG P1 CLR OE ;KET THUC QUA TRINH DOC DU LIEU RET ;=============================== ; KET THUC CHUONG TRINH ;=============================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=============================== ;SUBROUTINE BCDTO7T ; BCDTO7T ;INPUT: MALED ;OUTPUT: D2,D1,D0 ;=============================== BCDTO7T: MOV DPTR,#MALED ;CHUYEN MA 7 THANH VAO THANH GHI "DPTR" SVTH: 18 Líp: C§-§H§iÖn 2_K5
  19. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L MOV A,D1 ;CHUYEN NOI DUNG D1 VAO THANH GHI "A" MOVC A,@A+DPTR ;DOC NOI DUNG THANH GHI A CONG VOI NOI DUNG ;THANH GHI "DPTR" KET QUA CAT "A" MOV D1,A ;CHUYEN NOI DUNG D1 VAO THANH GHI "A" MOV A,D2 ;CHUYEN NOI DUNG D2 VAO THANH GHI "A" MOVC A,@A+DPTR ;DOC NOI DUNG THANH GHI A CONG VOI NOI DUNG ;THANH GHI "DPTR" KET QUA CAT "A" MOV D2,A ;CHUYEN NOI DUNG D2 VAO THANH GHI "A" MOV A,D3 ;CHUYEN NOI DUNG D3 VAO THANH GHI "A" MOVC A,@A+DPTR ;DOC NOI DUNG THANH GHI A CONG VOI NOI DUNG ;THANH GHI "DPTR" KET QUA CAT "A" MOV D3,A ;CHUYEN NOI DUNG D3 VAO THANH GHI "A" RET ;=============================== ; KET THUC CHUONG TRINH ;=============================== ;************************************************ ; NGAN CACH GIUA CAC CHUONG TRINH ;************************************************ ;=============================== ;SUBROUTINE DISPLAY ;CHUONG TRINH HIEN THI ; DISPLAY ;INPUT: D0,D1,D2 ;OUTPUT: P0,P2 ;=============================== DISPLAY: MOV P0,D1 ; XUAT SO HANG CHUC RA CONG P0 CLR P2.3 LCALL DELAY SETB P2.3 ;CHO PHEP HIEN THI LED 1 MOV P0,D2 ; XUAT SO HANG DON VI RA CONG P0 CLR P2.2 LCALL DELAY SETB P2.2 ;CHO PHEP HIEN THI LED 2 MOV P0,D3 ; XUAT SO HANG DON VI RA CONG P0 CLR P2.1 LCALL DELAY SETB P2.1 ;CHO HEP HIEN THI LED 3 RET ;=============================== ; KET THUC CHUONG TRINH ;=============================== DELAY: MOV R2,#250 LOOP3: DJNZ R2,LOOP3 RET ;=================================== ; MA 7 THANH ;=================================== MALED: ;THUOC BO NHO CHUONG TRINH "MOVC" SVTH: 19 Líp: C§-§H§iÖn 2_K5
  20. §Ò bµi: ®o vµ hiÓn thÞ nhiÖt ®é dïng lm35&adc0808 M«n: VXL & §L DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H ;SO THAP PHAN 0 1 2 3 4 5 6 7 8 9 END. SVTH: 20 Líp: C§-§H§iÖn 2_K5
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2