Nghiên cứu về Vi điều khiển 8051. Thiết kế mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh

86 592 0
Nghiên cứu về Vi điều khiển 8051. Thiết kế  mô hình đồng hồ thời gian thực hiển thị trên Led 7 thanh

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC LỜI NÓI ĐẦU 6 CHƯƠNG 1. TỔNG QUAN VỀ HỌ VI ĐIỀU KHIỂN 8051 7 1.1 Tóm tắt về lịch sử của 8051 7 1.2 Sơ đồ khối chung của họ 8051 8 1.3 Các thành viên khác của 8051 9 1.3.1 Bộ vi điều khiển 8052 9 1.3.2 Bộ vi điều khiển 8031 9 1.4 Các phiên bản của 8051 9 1.4.1 Bộ vi điều khiển 8751 10 1.4.2 Bộ vi điều khiển AT8951 từ Atmel Corporation 10 1.4.3 Bộ vi điều khiển DS5000 từ hãng Dalas Semiconductor 12 1.4.4 Phiên bản OTP của 8051 13 1.4.5 Họ 8051 từ hãng Philips 13 1.5 Kiến trúc phần cứng của họ Vi điều khiển 8051 14 1.5.1 Sơ đồ khối của 80518052 AT89S52 14 1.5.2 Chức năng các khối của 80518052AT89S52 14 1.5.2.1 CPU 14 1.5.2.2 Bộ nhớ chương trình (bộ nhớ Rom) 15 1.5.2.3 Bộ nhớ dữ liệu (bộ nhớ Ram) 15 1.5.2.4 Bộ UART (Universal Ansynchronous Receiver and Transmitter) 15 1.5.2.5 Ba bộ TimerCounter 16 bit 15 1.5.2.6 WDM (Watch Dog Timer) 15 1.5.2.7 Điều khiển ngắt 16 1.5.2.8 Bộ lập trình (ghi chương trình lên Flash Rom) 17 1.5.2.9 Bộ chia tần số 17 1.5.2.10 Bốn cổng xuất nhập 17 1.6 Tổ chức bộ nhớ bên trong của 8051 17 1.7 Hoạt động định thời 22 1.7.1 Giới thiệu 22 1.7.2 Các thanh ghi của bộ định thời 22 1.7.2.1 Các thanh ghi của Timer 0, Timer 1 22 1.7.2.2 Các thanh ghi của Timer 2 25 1.7.3 Các chế độ của bộ định thời 28 1.7.4 Các nguồn xung Clock 31 1.8 Cổng nối tiếp 32 1.8.1 Giới thiệu 32 1.8.2 Các thanh ghi của cổng nối tiếp 33 1.8.3 Các chế độ hoạt động 35 1.8.4 Tốc độ baud của Port nối tiếp 38 1.9 Ngắt và xử lý ngắt 39 1.9.1 Giới thiệu 39 1.9.2 Tổ chức ngắt 40 1.9.3 Xử lý ngắt 42 CHƯƠNG 2. CÁC LINH KIỆN LIÊN QUAN 44 2.1 Tìm hiểu về IC thời gian thực DS1307 44 2.1.1 Giới thiệu 44 2.1.2 Sơ đồ và chức năng các chân 44 2.1.3 Tài nguyên và cách xuất nhập dữ liệu vào DS1307 45 2.1.4 Thuật toán giao tiếp I2C với Vi điều khiển AT89S52 49 2.1.4.1 Điều kiện Start và Stop 49 2.1.4.2 Chế độ hoạt động 51 2.1.4.3 Cách thức giao tiếp với DS1307 52 2.1.4.4 Thuật toán thiết kế phần mềm 53 2.2 Bộ biến đổi tương tự sang số (ADC0804) 56 2.2.1 Giới thiệu 56 2.2.2 Sơ đồ và chức năng các chân ADC0804 57 2.2.2.1 Sơ đồ chân 57 2.2.2.2 Chức năng các chân 57 2.3 Vi điều khiển AT89S52 59 2.3.1 Giới thiệu 59 2.3.2 Sơ đồ chân và chức năng các chân của AT89S52 60 2.3.2.1 Sơ đồ chân của AT89S52 60 2.3.2.2 Chức năng các chân của AT89S52 61 2.4 IC ghi dịch 74HC595 65 2.4.1 Giới thiệu 65 2.4.2 Sơ đồ chân và chức năng các chân 65 2.4.2.1 Sơ đồ chân 65 2.4.2.2 Chức năng các chân 66 2.5 Led 7 đoạn 66 2.5.1 Giới thiệu 66 2.5.2 Kết nối với vi điều khiển 67 2.5.3 Bảng mã của Led Anode chung (các led đơn sáng ở mức 0) 68 2.5.4 Bảng mã của Led Cathode chung (các led đơn sáng ở mức 1) 70 2.5.5 Giao tiếp Vi điều khiển với led 7 đoạn (minh họa và thực hành với 8 led 7 đoạn) 70 CHƯƠNG 3. THIẾT KẾ MẠCH ĐIỆN 73 3.1 Các linh kiện liên quan Error Bookmark not defined. 3.2 Sơ đồ nguyên lý 79 3.3 Mạch in 80 3.4 Viết chương trình 81 KẾT LUẬN 85 TÀI LIỆU THAM KHẢO 87

MỤC LỤC ADC0804 76 Khối hiển thị; 78 Phân tích khối nguồn .79 Phân tích khối đọc cảm biến nhiệt độ 79 3.2 SƠ ĐỒ NGUYÊN LÝ 80 3.3 MẠCH IN 81 DANH SÁCH HÌNH VẼ Hình 1.1 Bố trí bên họ 8051 Hình 1.2 Sơ đồ khối vi điều khiển AT89S52 .15 Hình 1.3 Hoạt động Timer Timer chế độ 29 Hình 1.4 Hoạt động Timer0 Timer1 chế độ 29 Hình 1.5 Hoạt động Timer0 Timer1 chế độ 30 Hình 1.6 Hoạt động Timer0 chế độ .31 Hình 1.7 Sơ đồ khối cổng nối tiếp 8051 34 Hình 1.8 Giản đồ truyền nhận liệu chế độ 36 Hình 1.9 Tốc độ baud chế độ 36 Hình 1.10 Giản đồ truyền nhận liệu chế độ .37 Hình 1.11 Dùng Timer Timer cung cấp tốc độ baud cho cổng nối tiếp 37 Hình 1.12 Tốc độ baud chế độ 38 Hình 1.13 Tốc độ baud chế độ 38 Hình 1.14 Tốc độ baud chế độ 39 Hình 1.15 Chương trình trước (a) sau (b) có ngắt xảy 41 Hình 2.1 Các dạng đóng gói chip DS1307 45 Hình 2.2 Sơ đồ chân DS1307 45 Hình 2.3 Sơ đồ mắc DS1307 46 Hình 2.4 Sơ đồ cấu trúc ghi DS1307 .47 Hình 2.5 Cách cập nhật liệu cho DS1307 48 Hình 2.6 Tổ chức theo bit ghi 48 Hình 2.7 Sơ đồ cấu trúc bên DS1307 50 Hình 2.8 Điều kiện Start Stop 51 Hình 2.9 Quá trình đọc ghi liệu DS1307 52 Hình 2.10 Sơ đồ tổng quát đồng hồ 54 Hình 2.11 Thuật toán giao tiếp DS1307 với Vi Điều Khiển .54 Hình 2.12 Quá trình đọc liệu từ DS1307 lưu vào Ram AT89S52 55 Hình 2.13 Thuật toán cài đặt .56 Hình 2.14 Thuật toán cập nhật liệu cho DS1307 57 Hình 2.15 Sơ đồ chân thực tế ADC0804 58 Hình 2.16 Cách mắc tạo xung đồng hồ cho chíp ADC0804 59 Hình 2.17 Sơ đồ chân AT89S52 61 Hình 2.18 Cấu trúc chân Port0 62 Hình 2.19 Cấu trúc chân Port Port 63 Hình 2.20 Cấu trúc chân Port2 63 Hình 2.21 Mạch reset AT89S52 .65 Hình 2.22 Mạch tạo dao động 65 Hình 2.23 Mạch tạo xung cho Vi điều khiển 66 Hình 2.24 Sơ đồ chân thực tế 74HC595 66 Hình 2.25 Sơ đồ chân SEG-COM-ANODE hình ảnh minh họa 68 DANH SÁCH CÁC BẢNG BIỂU Bảng 1.1 Các đặc tính 8051 Bảng 1.2 So sánh đặc tính thành viên họ 8051 10 Bảng 1.3 Các phiên 8051 hãng Atmel cung cấp (Flash Rom) 11 Bảng 1.4 Các phiên 8051 từ hãng Dalas Semiconductor 13 Chữ “T” đứng sau 5000 có đồng hồ thời gian thực 13 Bảng 1.5 Một số thành viên họ 8051 13 Bảng 1.6 Số chu kì máy WDT đếm tùy theo giá trị S0, S1, S2 17 Bảng 1.7 Thời gian tràn WDT 17 Bảng 1.8 Các ghi trạng thái chương trình (PSW: Program Status Word) 21 24 24 24 24 24 24 24 24 GATE1 .24 C/#T1 24 M1 24 M0 24 GATE0 .24 C/#T0 24 M1 24 M0 24 Bảng 1.9 Thanh ghi chức TMOD 24 Bảng 1.10 Thanh ghi chức TCON 25 Bảng 1.11 Thanh ghi chức T2CON 27 Bảng 1.12 Thanh ghi chức T2MOD .28 Bảng 1.13 Vị trí ý nghĩa bit ghi SCON .35 SM0 35 SM1 35 SM2 35 REN 35 TB8 35 RB8 35 TI 35 RI .35 Bit .35 Ý nghĩa .35 REN 35 Bit cho phép cổng phép nhận liệu .35 TB8 35 Bit liệu truyền thứ cổng làm việc chế độ truyền nhận bit .35 RB8 35 Bit liệu nhận thứ cổng làm việc chế độ truyền nhận bit .35 TI 35 Cờ báo ngắt hoàn thành trình truyền byte liệu, cờ phải xóa phần mềm 35 RI .35 Cờ báo ngắt byte liệu nhận đầy đủ, cờ phải xóa phần mềm 35 SM2 35 Bit cho phép chế độ truyền thông nhiều vi điều khiển với (Mode2 3) .35 Bảng 1.14 Các chế độ cổng nối tiếp phụ thuộc SM1, SM0 35 Bảng 1.15 Bảng tốc độ baud khác 37 Bảng 1.16 Các giá trị ghi TH1 tạo tốc độ baud .40 Bảng 1.17 Vị trí công dụng bit ghi IE 42 Bảng 1.18 Vị trí công dụng bit ghi IP 42 Bảng 1.19 Các cờ gây ngắt .43 Bảng 1.20 Các Vector ngắt .44 Bảng 2.1 Bảng so sánh điện áp 60 Bảng 2.2 Tên chân chức chân Port 64 Bảng 2.3 Bảng mã cho Led Anode chung (a MSB, dp LSB) 69 Bảng 2.4 Bảng mã cho Led Anode chung (a LSB, dp MSB) 70 Bảng 2.5 Bảng mã Led Cathode chung 71 LỜI NÓI ĐẦU Ngày ngành kỹ thuật điện tử có vai trò quan trọng sống người Các hệ thống điện tử ngày đa dạng thay công việc hàng ngày người từ công việc đơn giản đến phức tạp điều khiển tín hiệu đèn giao thông, biển quảng cáo, đo tốc độ động hay đồng hồ số… Các hệ thống thiết kế theo hệ thống tương tự, hệ thống số dùng vi điều khiển Tuy nhiên hệ thống điện tử thông minh người ta thường sử dụng vi điều khiển hệ thống tương tự hay hệ thống số số ưu điểm vượt trội mà vi điều khiển mang lại là: độ tin cậy cao, giá thành thấp, dễ dàng thiết kế, lắp đặt vận hành… Để làm điều phải có kiến thức vi điều khiển, hiểu cấu trúc chức Sau gần năm học tập nghiên cứu trường, với giảng dạy thầy, cô giáo trường với hướng dẫn tận tình thầy Hoàng Văn Quang, em chọn đề tài: “ Nghiên cứu Vi điều khiển 8051 Thiết kế mô hình đồng hồ thời gian thực hiển thị Led thanh” để làm đồ án tốt nghiệp với mong muốn áp dụng kiến thức học vào thực tế phục vụ nhu cầu đời sống người Nội dung đề tài bao gồm chương: - Chương 1: Tổng quan họ Vi điều khiển 8051 - Chương 2: Các linh kiện liên quan - Chương 3: Thiết kế mô hình Do kiến thức trình độ lực hạn hẹp nên việc thực đề tài tránh thiếu sót, kính mong nhận thông cảm góp ý tất thầy, cô giáo bạn để đồ án hoàn thiện Em xin chân thành cảm ơn CHƯƠNG TỔNG QUAN VỀ HỌ VI ĐIỀU KHIỂN 8051 1.1 Tóm tắt lịch sử 8051 Năm 1981, hãng Intel giới thiệu vi điều khiển 8051 Bộ vi điều khiển chứa 60.000 transistor bao gồm 128 byte Ram, kbyte Rom, định thời, cổng nối tiếp bốn cổng vào/ra song song (độ rộng bit) tất đặt chip 8051 xử lý bit, có nghĩa CPU làm việc bit liệu thời điểm Dữ liệu lớn bit chia thành liệu bit để xử lý, 8051 trở lên phổ biến sau Intel cho phép nhà sản xuất khác sản xuất bán biến thể 8051 Điều dẫn đến đời nhiều phiên 8051 với tốc độ khác dung lượng Rom chíp khác nhau, lệnh tương thích với 8051 ban đầu Như vậy, ta viết chương trình cho phiên 8051 chạy với phiên khác không phụ thuộc vào hãng sản xuất Vi điều khiển 8051 loại vi điều khiển bit, công suất tiêu thụ thấp tính tương đối mạnh trở thành vi điều khiển hàng đầu năm gần Bảng 1.1 Các đặc tính 8051 Đặc Tính Rom Ram Bộ Định Thời Chân vào/ra Cổng nối tiếp Nguồn ngắt Số Lượng kbyte 128 byte 32 Ngoài 8051 có thông số đặc tính sau: + Không gian nhớ chương trình (mã) 64 kbyte + Không gian nhớ liệu 64 kbyte + Bộ nhớ xử lý bit (thao tác bit riêng rẽ) + 210 vị trí nhớ định địa chỉ, vị trí bit + Nhân/chia 4µs 1.2 Sơ đồ khối chung họ 8051 - Interrupt Control: điều khiển ngắt - Other Register: ghi khác - 128 byte Ram - Bộ định thời: 0, 1, - CPU: đơn vị điều khiển trung tâm - Oscillator: mạch dao động - Bus Control: điều khiển Bus - Input/output: chân vào - Serial port: cổng nối tiếp - INT1/INT0: ngắt 1/0 Hình 1.1 Bố trí bên họ 8051 1.3 Các thành viên khác 8051 Có hai vi điều khiển thành viên khác họ 8051 8052 8031 1.3.1 Bộ vi điều khiển 8052 Bộ vi điều khiển 8052 thành viên họ 8051, 8052 có tất đặc tính chuẩn 8051 có thêm 128 byte Ram định thời Bảng 1.2 So sánh đặc tính thành viên họ 8051 Đặc Tính Rom Ram Bộ định thời Chân vào/ra Cổng nối tiếp Nguồn ngắt 8051 kbyte 128 byte 32 8052 kbyte 256 byte 32 8031 Không có 128 byte 31 1 * Dựa vào bảng 1.2 thấy chương trình viết cho 8051 chạy 8052 điều ngược lại không 1.3.2 Bộ vi điều khiển 8031 Một thành viên khác 8051 chíp 8031 Chíp coi 8051 Rom chíp Để sử dụng chíp phải bổ sung Rom cho nó, Rom phải chứa chương trình mà 8031 nạp thực Với 8051, chương trình chứa Rom chíp bị giới hạn kbyte, Rom gắn với 8031 lớn đến 64 kbyte Khi sử dụng Rom lại hai cổng để sử dụng cho mục đích vào ra, để giải vấn đề giải pháp mở rộng cổng vào cho 8031 cách sử dụng vi mạch PPI 8255 1.4 Các phiên 8051 Mặc dù 8051 thành viên phổ biến họ 8051 có nhiều phiên với tên gọi khác tùy thuộc vào kiểu nhớ chương trình, công nghệ chế tạo, tần số làm việc… Ví dụ: Phiên 8051 với nhớ UV-PROM kí hiệu 8751 Phiên Flash Rom bán nhiều hãng khác nhau, chẳng hạn Atmel với tên gọi AT89C51 phiên NV-RAM 8051 Dalas Semiconductor cung cấp 10 gọi DS5000 Ngoài có phiên OTP (lập trình lần) sản xuất nhiều hãng 1.4.1 Bộ vi điều khiển 8751 Chíp 8751 có kbyte nhớ UV-EPROM chíp Để sử dụng chíp cần có đốt PROM xóa UV-EPROM để xóa nội dung nhớ UV-EPROM bên 8751 trước ta lập trình lại Do ROM chíp 8751 UV-EPROM nên cần phải 20 phút để xóa 8751 trước lập trình trở lại Vì điều dẫn đến nhiều nhà sản xuất giới thiệu phiên FLASH-ROM UV-RAM Ngoài có nhiều phiên với tốc độ khác 8751 từ nhiều hãng khác 8751 sử dụng công việc phát triển nhớ chương trình vi mạch xóa ánh sáng từ nguồn tử ngoại 1.4.2 Bộ vi điều khiển AT8951 từ Atmel Corporation AT8951 phiên 8051 có Rom chíp dạng nhớ Flash Phiên lý tưởng phát triển nhanh nhớ Flash xóa vài giây Dùng AT89C51 để phát triển hệ thống dựa vi điều khiển yêu cầu đốt Rom hỗ trợ nhớ Flash, không yêu cầu xóa Rom Hãng Atmel cho đời phiên AT89C51 lập trình qua cổng truyền thông Com máy tính IBM PC Bảng 1.3 Các phiên 8051 hãng Atmel cung cấp (Flash Rom) Kí hiệu Rom Ram Chan 11 Timer Ngắt VCC Đóng vỏ Tại thời điểm , nên cho Vi điều khiển điều khiển cho led đoạn hoạt động, thời điểm nên có ngõ nối với transitor mức Tại thời điểm có led đoạn ON nên không xảy tình trạng tải cho tải tải cho vi điều khiển điều khiển nhiều led đoạn Trong sơ đồ kết nối trên, chẳng hạn cần hiển thị số 451, quy ước thứ tự led đoạn đếm từ phải sang trái, cần làm cho led đoạn thứ hiển thị số 1, led đoạn thứ hai hiển thị số 5, led đoạn thứ ba hiển thị số 4, led lại không hiển thị Đầu tiên OFF tất led đoạn Kế tiếp xuất mã hiển thị led đoạn để hiển thị số 1, ON led đoạn thứ nhất, lúc dòng điện qua led đoạn thứ nhất, làm cho led đoạn thứ hiển thị số 1, thời gian ON khoảng vài chục µs (1µs= 1/10-6s) Kế tiếp xuất mã hiển thị lad đoạn hiển thị số 5, OFF led đoạn thứ đồng thời ON led đoạn thứ hai, lúc có led đoạn thứ hai hiển thị hiển thi số Tiếp theo xuất mã hiển thị led đoạn hiển thị số 4, OFF led đoạn thứ hai ON led đoạn thứ ba, lúc led đoạn thứ ba hiển thị số Cứ lặp lại trình liên tục Thời gian ON/OFF khoảng vài chục µs, thời điểm có led đoạn hiển thị số nó, mắt người thấy led đoạn không sáng đứt quãng, mà sáng liên tục, led hiển thị số riêng Thực tương tự để mở rộng số lượng led đoạn cần sử dụng 73 CHƯƠNG THIẾT KẾ MẠCH ĐIỆN 3.1 CÁC LINH KIỆN CƠ BẢN SỬ DỤNG TRONG MẠCH • Tìm hiểu rơ-le Rơ le (Relay) công tắc điều khiển từ xa đơn giản,nó dùng dòng nhỏ để điều khiển dòng lớn dùng để bảo vệ công tắc nên xem thiết bị bảo vệ.Một rơle điển hình điều khiển mạch điều khiển nguồn Kết cấu gồm có lõi sắt ,một cuộn từ, tiếp điểm thường đóng tiếp điểm thường mở Rơ le ứng dụng cuộn dây sản xuất thiết bị điện tử, nguyên lý hoạt động Rơ le biến đổi dòng điện thành từ trường thông qua cuộn dây, từ trường lại tạo thành lực học thông qua lực hút để thực động tác khí đóng mở công tắc, đóng mở hành trình thiết bị tự động vv… 74 • Sơ đồ mạch điều khiển logic Mạch sử dụng rơ-le làm việc điều khiển động bơm nước hoạt động Rơ le sử dụng mạch rơ le chân 75 IC Cảm biến nhiệt LM35 LM35 họ cảm biến nhiệt mạch tích hợp xác cao có điện áp đầu tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius Họ cảm biến không yêu cầu chỉnh vốn chỉnh Họ cho điện áp 10mV ứng với thay đổi nhiệt độ 10C Một số thông số kỹ thuật họ LM35 Dòng làm việc 400µA – 5mA Dòng thuận : 10mA Dòng ngược: 15mA Điện áp VS=4V-30V Điện áp 10mV/ 0C LED đoạn: LED đoạn ứng dụng nhiều thiết bị thực tế, bảng hiệu, có tác dụng hiển thị số liệu… led anot chung, chân anot chung (chân dương) nối với transitor để ta quét led sử dụng chân port0, chân điều khiển sáng lại nối song song đưa vào port2 vi điều khiển có thứ tự sau: Từ bit => ứng với từ A=>> G bit thứ dấu chấm ADC0804 Sơ đồ chân ADC0804 Chip ADC0804 chuyển đổi tương tự số thuộc họ ADC800 hãng National Semiconductor Chip nhiều hãng khác sản xuất Chip có điện áp nuôi +5V độ phân giải bit Ngoài độ phân giải thời gian 76 chuyển đổi tham số quan trọng đánh giá ADC Thời gian chuyển đổi định nghĩa thời gian mà ADC cần để chuyển đầu vào tương tự thành số nhị phân Đối với ADC0804 thời gian chuyển đổi phụ thuộc vào tần số đồng hồ cấp tới chân CLK CLK IN không bé 110µs Các chân khác ADC0804 có chức sau: - CS (Chip select): Chân số 1, chân chọn chip, đầu vào tích cực mức thấp sử dụng để kích hoạt Chip ADC0804 Để truy cập tới ADC0804 chân phải đặt mức thấp - RD (Read): Chân số 2, chân nhận tín hiệu vào tích cực mức thấp Các chuyển đổi 0804 chuyển đổi đầu vào tương tự thành số nhị phân giữ ghi Chân RD sử dụng phép đưa liệu chyển đổi tới đầu ADC0804 Khi CS = có xung cao xuống thấp áp đến chân RD liệu dạng số bit đưa tới chân liệu (DB0 – DB7) - WR (Write): Chân số 3, chân vào tích cực mức thấp dùng báo cho ADC biết để bắt đầu trình chuyển đổi Nếu CS = WR tạo xung cao xuống thấp ADC0804 bắt đầu trình chuyển đổi giá trị đầu vào tương tự Vin thành số nhị phân bit Khi việc chuyển đổi hoàn tất chân INTR ADC hạ xuống thấp - CLK IN CLK R: CLK IN (chân số 4), chân vào nối tới đồng hồ sử dụng để tạo thời gian Tuy nhiên ADC0804 c ũng có tạo xung đồng hồ riêng Để dùng đồng hồ riêng chân CLK IN CLK R (chân số 19) nối với mộttụ điện điện trở Khi tần số xác định biểu thức: F= Với R = 10 kΩ, C = 150 pF tần số f = 606 kHz thời gian chuyển đổi 110 µs - Ngắt INTR (Interupt): Chân số 5, chân tích cực mức thấp Bình thường chân trạng thái cao việc chuyển đổi tương tự số hoàn tất chuyển xuống mức thấp để báo cho CPU biết liệu chuyển đổi sẵn sàng để lấy Sau INTR xuống thấp, cần đặt CS = gửi xung cao xuống thấp tới chân RD để đưa liệu - Vin (+) Vin (-): Chân số chân số 7, đầu vào tương tự vi sai, Vin = Vin(+) – Vin(-) Thông thường Vin(-) nối tới đất Vin(+) dùng làm đầu vào tương tự chuyển đổi dạng số - Vcc: Chân số 20, chân nguồn nuôi +5V Chân dùng làm điện áp tham chiếu đầu vào Vref/2 để hở - Vref/2: Chân số 9, chân điện áp đầu vào dùng làm điện áp tham chiếu Nếu chân hở điện áp đầu vào tương tự cho ADC0804 nằm dải đến +5V Tuy nhiên, có nhiều ứng dụng mà đầu vào tương tự áp đến Vin khác với dải đến +5V Chân Vref/2 dùng để thực điện áp đầu khác đến +5V 77 - D0 – D7, chân số 18 – 11, chân liệu số (D7 bit cao MSB D0 bit thấp LSB) Các chân đệm ba trạng thái liệu chuyển đổi truy cập chân CS = chân RD đưa xuống mức thấp Để tính điện áp đầu ta tính theo công thức sau: Dout = Vin / Kích thước bước Khối hiển thị; Để hiển thị led đoạn cần đường điều khiển(7 đường cho đoạn đường cho dấu chấm)khi điều khiển trực tiếp cần đường dây điều khiển dùng vi mạch giải mã PCD – đoạn 7447/7448 Với hai cách vừa nêu cần điều khiển số lượng lớn led đoạn tương ứng cần số lượng lớn đường điều khiển số lượng đường điều khiển vi điều khiển có hạn Để giảm thiểu số đường dây điều khiển ta dùng phương pháp quét led Để hiển thị số có chữ số ta thực lặp lặp lại bước sau: Cấp nguồn cho LED thứ nhất( P0.3 = 0), đồng thời xuất số liệu cổng P2 để LED thứ hiển thị số hàng đơn vị Cấp nguồn cho LED thứ hai (P0.2 = 0), đồng thời xuất số liệu cổng P2 để LED thứ hai hiển thị số hàng chục Cấp nguồn cho LED thứ ba (P0.1 = 0), đồng thời xuất số liệu cổng P2 để LED thứ ba hiển thị số hàng trăm Cấp nguồn cho LED thứ tư (P0.0 = 0), đồng thời xuất số liệu cổng P2để LED thứ tư hiển số hàng nghìn Khi sử dụng LED thanh,nếu sử dụng nguồn cấp từ vi điều khiển không đủ dòng( dòng vdk xuất 1mA) nên ta cần sử dụng transitor để kích dòng cho led 78 Phân tích khối nguồn Nguồn 12v đưa vào header2 HD1 qua ic ổn áp nguồn 5v LM7805 Tụ C1,C2 để ổn định điện áp chiều Led báo có nguồn V Phân tích khối đọc cảm biến nhiệt độ Điện áp tương tự từ LM35 qua chuyển đổi tương tự sang số ADC0804, Giá trị số đầu bít đưa tới vi điều khiển tù A1 tới A8 Biến trở VR1 để chỉnh điện áp tham chiếu để đọc nhiệt độ từ tới điện áp tham chiếu *2 Trở R16 tụ C8 để tạo dao động RC cho trình chuyển đổi ADC0804 ADC0804 điều khiển chân WR INTR 79 3.2 SƠ ĐỒ NGUYÊN LÝ 80 3.3 MẠCH IN 12 11 10 1 2 2 1 1 1 2 2 3 3 2 2 1 1 24 23 1 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 22 21 19 20 1 2 1 2 2 18 17 16 15 14 13 12 11 10 11 12 13 14 15 16 17 18 20 19 1 1 2 1 2 2 1 1 2 2 10 81 10 2 2 1 3.4 VIẾT CHƯƠNG TRÌNH #include /**************khai bao giao tiep A***********************/ #define ADC_WR P3_4 #define ADC_INTR P3_3 #define A1 P2_0 #define A2 P2_1 #define A3 P2_2 #define A4 P2_3 10 11 #define LED_BLUE P3_0 12 #define LED_YELLOW P3_1 13 #define LED_RED P3_2 14 15 #define MODE P3_5 16 #define UP P3_6 17 #define DOWN P3_7 18 19 #define DOT P0_7 20 21 #define ADC_DATA P1 22 unsigned char nguong_nhiet_do = 28; 23 unsigned char nhiet_do; 24 char menu = 0; 25 void delay(int time) 26 { 27 unsigned int i; 28 for(i=0;i[...]... các thanh ghi chức năng đặc biệt của Timer khác -Thanh ghi điều khiển Timer (TCON) 24 Thanh ghi TCON chứa các bit trạng thái và các bit điều khiển Timer 0 và Timer 1 Bốn bit cao trong TCON ( TCON.4-TCON .7 ) được dùng để điều khiển các bộ định thời hoạt động hoặc ngưng ( TR0, TR1) hoặc để báo các bộ định thời tràn (TF0, TF1) Bốn bit thấp của TCON ( TCON.0-TCON.3 ) không dùng để điều khiển các bộ định thời, ... 2^20 2^21 Bảng 1 .7 Thời gian tràn của WDT S2 0 0 0 0 1 1 1 1 S1 0 0 1 1 0 0 1 1 S0 0 1 0 1 0 1 0 1 Fosc=12MHz Fosc=16MHz 16,38ms 12,28ms 32 ,77 ms 24,57ms 65,54ms 49,14ms 131,01ms 98,28ms 262,14ms 196,56ms 524,29ms 393,12ms 1,54s 78 8,24ms 2,10s 1,57s 1.5.2 .7 Điều khiển ngắt Với hai nguồn ngắt ngoài và 4 nguồn ngắt trong 17 Fosc=20MHz 9,82ms 19,66ms 39,32ms 76 ,64ms 1 57, 28ms 314,56ms 629,17ms 1,25s 1.5.2.8... bank thanh ghi nên tại một thời điểm chỉ có một bank thanh ghi được truy xuất bởi các thanh ghi R0 đến R7 Vi c thay đổi bank thanh ghi được thực hiện thông qua thanh ghi từ trạng thái chương trình (PSW) - Các thanh ghi có chức năng đặc biệt Các thanh ghi trong 89S52 được định dạng như một phần của RAM trên chip vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi bộ đếm chương trình và thanh. .. rộng lớn cho các bộ vi điều khiển 8051 Nhiều sản phẩm của hãng đã có kèm theo đặc tính như các bộ chuyển đổi ADC, DAC, cổng I/O mở rộng và các phiên bản OTP và Flash 14 1.5 Kiến trúc phần cứng của họ Vi điều khiển 8051 1.5.1 Sơ đồ khối của 8051/8052/AT89S52 Hình 1.2 Sơ đồ khối của vi điều khiển AT89S52 1.5.2 Chức năng các khối của 8051/8052/AT89S52 1.5.2.1 CPU - Thanh ghi tích lũy A - Thanh ghi tích lũy... Timer tương ứng đếm các sự kiện đó 1 .7. 2 Các thanh ghi của bộ định thời 1 .7. 2.1 Các thanh ghi của Timer 0, Timer 1 -Thanh ghi chế độ định thời (TMOD) 23 Thanh ghi TMOD chứa hai nhóm 4 bit dùng để đặt chế độ làm vi c cho Timer 0 và Timer 1 7 GATE1 6 C/# 5 M1 4 M0 3 GA T1 TE0 2 C/# 1 M1 0 M0 T0 Thanh ghi TMOD Bảng 1.9 Thanh ghi chức năng TMOD Bit 7 Tên GATE1 Timer 1 Mô tả Bit mở cổng cho timer 1, khi... lường và điều khiển Có thể coi một bộ định thời n bit là bộ đếm n bit được tạo ra bởi n flip_flop mắc nối tiếp với nhau Đầu ra của bộ định thời chính là đầu vào của flip_flop đầu tiên AT89S52 có 3 bộ định thời 16 bit trong đó hai bộ Timer 0, Timer 1 có 4 chế độ hoạt động Timer 2 có 3 chế độ hoạt động Các bộ định thời dùng để định khoảng thời gian (hẹn giờ), đếm sự kiện xảy ra bên ngoài bộ vi điều khiển. .. của 8051 1.8.2 Các thanh ghi của cổng nối tiếp Có hai thanh ghi chức năng đặc biệt cho phép phần mềm truy xuất đến cổng nối tiếp là SBUF và SCON - Thanh ghi điều khiển cổng nối tiếp ( SCON-Serial Controller ) Thanh ghi điều khiển cổng nối tiếp (SCON) ở địa chỉ 98H là thanh ghi 8 bit được dùng để lập trình vi c đóng khung bit bắt đầu Start, bit dừng Stop, các bit dữ liệu cùng với vi c khác và chứa các... định thời 13 bit, chế độ này tương thích với các bộ vi điều khiển trước đó, trong các ứng dụng hiện nay chế độ này không còn thích hợp - Chế độ 1 Trong chế độ 1, bộ Timer dùng cả hai thanh ghi TH và TL để chứa giá trị đếm, vì vậy chế độ này còn được gọi là chế độ định thời 16 bit Bit MSB sẽ là bit D7 của TH còn bit LSB là D0 của TL Hình 1.4 Hoạt động của Timer0 và Timer1 ở chế độ 1 Hình 1.4 mô tả... thuộc vào giá trị của bit C-/T0 Vi c điều khiển hoạt động của bộ thứ nhất do bit GATE, bit TR0 và mức logic trên chân INT0 ( giống chế độ 0, 1, 2) Giá trị đếm của Timer được chứa trong TL0, khi xảy ra tràn, cờ TF0=1 và gây ra ngắt do Timer 0 (nếu được đặt) Bộ Timer thứ hai với nguồn xung clock được lấy từ bộ chia tần trên chip Vi c điều khiển hoạt động của bộ thứ hai chỉ là vi c đặt giá trị của bit TR0... TCON .7 TCON.6 TCON.5 TCON.4 TCON.3 TCON.2 TCON.1 TCON.0 TF1 TR1 TF0 TR0 IT1 IE1 IT0 IE0 Thanh ghi TCON Bảng 1.10 Thanh ghi chức năng TCON Bit TCON .7 Kí hiệu TF1 Địa chỉ 8F Mô tả Cờ báo tràn của T1, được đặt bởi phần cứng khi có tràn, được xóa bởi phần mềm hoặc bởi phần cứng khi bộ VXL chỉ đến chương trình phục TCON.6 TR1 vụ ngắt Bit điều khiển T1 hoạt động được 8EH đặt xóa bởi phần mềm để điều khiển

Ngày đăng: 08/09/2016, 07:32

Từ khóa liên quan

Mục lục

  • ADC0804

  • Khối hiển thị;

  • Phân tích khối nguồn

  • Phân tích khối đọc cảm biến nhiệt độ

  • 3.2. SƠ ĐỒ NGUYÊN LÝ

  • 3.3. MẠCH IN

Tài liệu cùng người dùng

Tài liệu liên quan