Đo và điều khiển nhiệt độ phòng

100 157 0
Đo và điều khiển nhiệt độ phòng

Đ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

Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 1.1 Sơ lược vi điều khiển PIC16F877A: PIC 16F877A dòng PIC phổ biến (đủ mạnh tính năng, 40 chân, nhớ đủ cho hầu hết ứng dụng thơng thường) Cấu trúc tổng qt PIC 16F877A sau: - K Flash ROM - 368 Bytes RAM - 256 Bytes EEPROM - ports (A, B, C, D, E) vào với tín hiệu điều khiển độc lập - định thời bits (Timer Timer 2) - Một định thời 16 bits (Timer 1) hoạt động chế độ tiết kiệm lượng (SLEEP MODE) với nguồn xung Clock ngồi - bơ CCP( Capture / Compare / PWM) - biến đổi AD 10 bits, ngõ vào - so sánh tương tự (Compartor) - định thời giám sát (WatchDog Timer) - Một cổng song song bits với tín hiệu điều khiển - Một cổng nối tiếp - 15 nguồn ngắt - Có chế độ tiết kiệm lượng - Nạp chương trình cổng nối tiếp ICSP(In-Circuit Serial Programming) - Được chế tạo cơng nghệ CMOS - 35 tập lệnh có độ dài 14 bits - Tần số hoạt động tối đa 20MHz -1- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Sơ đồ chân PIC 16f877A -2- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc PIC16F877A họ vi điều khiển có 40 chân, chân có chức khác nhau.Trong có số chân đa cơng dụng: chân hoạt động đường xuất nhập chân chức đặc biệt dùng để giao tiếp với thiết bị ngoại vi Sơ Đồ Khối PIC -5- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 1.2 Một số điểm đặc biệt CPU: 1.2.1 Dao động: PIC16F877A hoạt động bốn chế độ dao động khác nhau: Trong chế độ LP, XT HS sử dụng thạch anh dao động nối vào chân OSC1 OSC2 để tạo dao động Việc lựa chọn tụ dao động thạch anh dựa vào bảng sau: Lưu ý: Tụ có giá trị lớn tăng tính ổn định dao động làm tăng thời gian khởi động Chế độ dao động RC sử dụng giải pháp tiết kiệm ứng dụng khơng cần xác thời gian * Cách tính chu kì máy: Ví dụ ta sử dụng thạch anh 10Mhz Khi đó: Tần số dao động thạch anh Fosc = 10Mhz →ChukỳdaođộngcủathạchanhlàTosc=1/Tosc=1/10*10 -6- (s) SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Chu kỳ máy: T_instruction = 4*Tosc = 4/10*10 (s) = 0.4 µs = 400 ns 1.3.2 Reset: PIC16F877A bị reset nhiều ngun nhân khác như: 1.2.2 : MCRL PIC16F877A có lọc nhiễu phần Bộ lọc nhiễu phát bỏ qua tín hiệu nhiễu Ngõ vào chân PIC16F877A Khi đưa chân xuống thấp ghi bên VĐK tải giá trị thích hợp để khởi động lại hệ thống (Lưu ý: Reset WDT khơng làm chân xuống mức thấp) -7- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 1.2.3 INTERRUPTS: PIC16F877A có nhiều nguồn ngắt khác Đây số ngắt tiêu biểu : - Ngắt ngồi xảy chân INT - Ngắt Timer0 - Ngắt Timer1 - Ngắt Timer2 - Ngắt thay đổi trạng thái chân PortB - Ngắt so sánh điện - Ngắt Port song song - Ngắt USART - Ngắt nhận liệu - Ngắt truyền liệu - Ngắt chuyển đổi ADC - Ngắt hình LCD - Ngắt hồn tất ghi EEPROM - Ngắt module CCP - Ngắt Module SSP * Các ghi chức ngắt: INTCON, PIE1, PIR1, PIE2, PIR2 (các ghi nghiên cứu phần sau) -8- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 1.2.4 Chế độ nguồn thấp Sleep (Power down Mode) : Đây chế độ hoạt động VĐK lệnh sleep thực thi Khi cho phép hoạt động, đếm WDT bị xóa WDT tiếp tục hoạt động bit PD (STATUS ) reset khơng, bit TO set, oscillator ngưng hoạt động PORT giữ ngun trạng thái trước lệnh sleep thực thi Do chế độ sleep dòng cung cấp cho VĐK nhỏ nên ta cần thực bước sau trước VĐK thực thi lệnh sleep • Đưa tất chân trạng thái V DD V SS • Cần đảm bảo khơng có mạch ngoại vi điều khiển dòng điện VĐK dòng điện nhỏ khơng đủ khả cung cấp cho mạch ngoại vi hoạt động • Tạm ngưng hoạt động khối A/D khơng cho phép xung clock bên ngồi tác dụng vào VĐK • Để ý chức điện trở kéo lên PORTB • Pin phải mức logic cao -9- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 1.2.5 Bộ định thời giám sát (Watch Dog Timer -WDT): Giả sử bạn viết chương trình, bạn mong đợi chương trình chạy khơng có trục trặc xảy khơng dừng lại, bạn phải làm vòng lặp để chương trình chạy đến điểm cuối lại quay trở điểm bắt đầu Nhưng mà xem trường hợp: Giả sử chương trình kiểm tra chân input, lên mức cao Pic tiếp tục kiểm tra chân input thứ hai có lên mức cao hay khơng, chân input thứ hai khơng lên mức cao, Pic ngồi chờ khỏi chỗ ngồi chân input thứ hai lên mức cao Bây xem trường hợp khác, giả sử bạn viết chương trình, bạn compiled thành cơng, bạn cho chạy mơ bước, bước máy tính, MPLAB chẳng hạn, chuyện tốt, bạn đem nạp vào Pic Sau thời gian chạy thử, Pic bị kẹt vào nơi chương trình mà khơng thể trạng thái Điều cần thiết để giải hai trường hợp trên, reset lại hay bị kẹt khơng được, mục đích mạch Watchdog Mạch Watchdog khơng phải mẽ gì, có nhiều microprocessors microcontrollers có mạch Watchdog, mà làm việc ? Bên Pic có mạch RC, mạch cung cấp xung Clock độc lập với xung Clock cung cấp cho Pic Khi Watchdog Timer (viết tắt WDT) cho phép (enabled), đếm 00 tăng lên FFh, tăng từ FFh đến 00 ( FFh+1) Pic bị Reset làm gì, có cách ngăn khơng cho WDT đếm tới 00 Khi Pic bị kẹt khơng thể khỏi tình trạng WDT tiếp tục đếm mà khơng bị điều ngăn cấm đếm tới FF đến FF+1, reset Pic làm cho chương trình phải khởi động lại từ đầu Để sử dụng WDT cần làm việc - 10 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc • Thứ nhất, cần thời gian để reset WDT ? • Thứ hai, xố WDT ? • Cuối cùng, phải nói cho Pic biết chương trình cho phép WDT hoạt động 2.6 Tổ chức nhớ: PIC16F877A có tất khối nhớ riêng biệt bao gồm: Bộ nhớ chương trình, nhớ liệu nhớ EEPROM 1.2.6.1 Bộ nhớ chương trình: PIC16F877A có đếm chương trình dài 13 bits định địa cho khoảng khơng gian nhớ 8K x 14bits Khơng gian nhớ chia làm trang, có địa từ 0005h đến 1FFFh Mọi truy cập ngồi vùng khơng gian nhớ khơng có tác dụng Ngồi ra, nhớ chương trình bao gồm ngăn xếp (Stack) mức Vector Reset đặt địa 0000h vector ngắt đặt địa 0004h - 11 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 1.2.6.2 Bộ nhớ liệu: Bản đồ cấu trúc PIC 16F877A Bộ nhớ liệu bao gồm Bank: Bank 0, Bank1, Bank2 Bank3 Mỗi bank có dung lượng 128 Bytes, bao gồm vùng Ram đa mục đích (GPR) vùng ghi chức đặc biệt (SFR) - 12 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Asociations) Chuẩn RS-232 quy đònh mức logic ứng với điện áp -3V đến -25V (mark), mức logic ứng với điện áp 3V đến 25V (space) có khả cung cấp dòng từ 10mA đến 20mA Ngoài ra, tất ngõ có đặc tính chống chập mạch Chuẩn RS-232 cho phép truyền tín hiệu với tốc độ đến 20.000bps cáp truyền đủ ngắn lên đến 115.200bps Các phương thức nối DTE DCE: - Đơn công (simplex connection): liệu truyền theo hướng -Bán song công (half_duplex): liệu truyền theo 2hướng, thời điểm truyền theo hướng - Đònh dạng khung truyền liệu theo chuẩn RS-232 sau: Khi không truyền liệu, đường truyền trạng thái mark ( điện áp -10V) Khi bắt đầu truyền, DTE đưa xung star (space: 10V) sau truyền từ D0 đén D7 Parity, cuối xung stop ( mark: -10V) để khôi phục trạng thái đường truyền Dạng tín hiệu truyền mô tả nhu sau (truyền ký tự A): - 88 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Các đặc tính kỹ thuật cuare chuẩn RS-232 sau: Các tốc độ truyền liệu thông dụng cổng nối tiếp là: 1200bps, 4800bps, 9600bps 19200bps Hình 3.2 Cổng COM có hai dạng đầu nối DB25(25 chân) đầu nối DB9(9 chân) mô tả hình4.2 Ý nghóa chân mô tả sau: - 89 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 3.2.1.2 truyền Thơng Giữa Hai Nút Các sơ đồ kết nối dùng cổng nối tiếp: - 90 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Khi thực kết nối trên, trình truyền phải đảm bảo tốc độ đầu phát thu giống Khi có liệu đén DTE, liệu đưa vào đệm tạo ngắt Ngoài ra, thực kết nối hai DTE, ta dùng sơ đồ sau: Khi DTE1 cần truyền liệu cho DTR tich cực -> tác động lên DSR DTE2 cho biết sẵn sàng nhận liệu cho biết nhận sóng mạng cuae MODEM(ảo) Sau đó, DTE1 tích cực chân rts để tác động đến chân CTS DTE2 cho biết DTE1 nhận liệu Khi thực kết nối DTE DCE, tốc độ truyền khác nên phải thực điều khiển lưu lượng Quá trình điều khiển thực phần mềm hay phần cứng Quá trình điều khiển phần mềm thực hai ký tự Xon Xoff Ký tự Xon DC gửi rảnh (có thể nhận liệu) Nếu DCE bận gửi ký tự Xoff Quá trình điều khiển phần cứng dùng hai chân RTC CTS Nếu DTE muốn truyền liệu gửi RTS để yêu cầu truyền, DCE có khả nhận liệu (đang rảnh) gửi lại CTS 3.2.1.3 Truy xuất trực tiếp qua cổng com Các cổng nối tiếp máy tính đánh số COM1, COM2, COM3, COM4 với đòa sau: Giao tiếp nối tiếp máy tính sử dụng vi mạch UART với ghi cho bảng sau: - 91 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Các ghi truy xuất trực tiếp kết hợp với đòa cổng ( ví dụ ghi cho phép ngắt COM1 có đòa la BACOM + = 3F9h IIR (Interrupt Identification): IIR xác đònh mức ưu tiên va nguồn gốc yêu cầu ngắt mà UART chờ phục vụ Khi cần xử lý ngắt, CPU thực đọc bit tương ứng đẻ xác đònh nguồn gốc ngắt Đònh dạng IIR sau: IER (Interrupt Enable Register): IER cho phép hay cấm nguyên nhân ngắt khác ( 1: cho phép, : cấm ngắt) - 92 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc FIE: FIFO Error-sai FIFO TSRE: Transmitter Shift Register Empty – ghi dòch rỗng (=1 phát ký tự bò xóa có ký tự chuyển đến từ THR THRE: transmitter Holding register Empty (=1 có ký tự chuyển từ THR_TSR bò xóa CPU đưa ký tự tới THR) BI: break Interrupt (=1 có gián đoạn truyền, nghóa tồn mức logic khoảng thời gian dài khoảng thời gian truyền 1byte bò xóa CPU đọc LSR) - 93 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc FE: frame Eror (=1b có lỗi khung truyền bò xóa CPU đọc LSR) PE: Parity Error (=1 có lỗi parity bò xóa CPU đọc LSR) OE: Overrun Error (=1 có lỗi thu đè, nghóa CPU không đọc kòp liệu làm cho trình ghi chồng lên RBR xảy bò xóa CPU đọc LSR) RxDR: Receiver Data Ready (=1 nhận ký tự đưa vào RBR bò xóa CPU đọc RBR) DLAB ( Divisor Latch Access Bit) =0: truy xuất RBR, THR, IER=1 cho phép đặt chia tần UART phép đạt tốc độ truyền mong muốn UART dùng dao động thạch anh với tần số 1.8432MHz đưa qua chia 16 thành tần số 115,200Hz Khi đó, tùy theo giá trò BRDL BRDH ta có tốc độ mong muốn Ví dụ đường truyền có tốc độ truyền 2,400bps có giá trò chia 115,200/2,400 = 48d = 0030h -> BRDL = 30h, BRDH = 00h Một số giá trò thông dụng xác đònh tốc độ truyền cho sau: SBCB (Set Break Control BIT) =1 cho phép truyền tín hiệu Break (=0) khoảng thời gian lớùn khung PS (Parity select): - 94 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 3.2.2 SỬ DỤNG VISUAL BASIC ĐỂ ĐIỀU KHIỂN CỔNG COM 3.2.2.1 Truyền thơng nối tiếp dùng ActiveX Việc truyền thơng nối tiếp Windows thực thơng qua ActiveX có sẵn Microsoft Comm Control ActiveX dược lưu trữ file MSCOMM32.OCX Q trình có hai khả thực điều khiển trao đổi thơng tin: - Điều khiển kiện: Truyền thơng điều khiển kiện phương pháp tốt q trình điều khiển việc trao đổi thơng tin Q trình điều khiển thực thơng qua kiện OnComm - Hỏi vòng: Q trinh điều khiển phương pháp hỏi vòng thực thơng qua kiểm tra giá trị thuộc tính CommEvent sau chu kỳ để xác định xem có kiện xảy hay khơng Thơng thường phương pháp sử dụng cho chương trình nhỏ ActiveX MsComm bổ sung vào Visual Basic Project thơng qua menu Project > Components: - 95 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 3.2.2 Các thuộc tính - Settings: Xác định tham số cho cổng nối tiếp Cú pháp: MSComm1.Settings = ParamString MSComm1: tên đối tượng ParamString: chuỗi có dạng sau: "BBBB,P,D,S" BBBB: tốc độ truyền liệu (bps) giá trị hợp lệ là: 110, 2400, 38400, 300, 9600 (măc định), 56000, 600, 14400, 188000, 1200, 19200, 256000 P: kiểm tra chẵn lẻ, với giá trị: Giá trị Mơ tả O Odd (kiểm tra lẻ) E Even (kiểm tra chẵn) M Mark (ln 1) S Space (ln 0) N Khơng kiểm tra D: số bit liệu (4, 5, 6, hay 8), mặc định bit S: số bit stop (1, 1.5, 2) VD: MSComm1.Settings = "9600,O,8,1" xác định tốc độ truyền 9600bps, kiểm tra parity chẵn với bit stop bit liệu - CommPort: Xác định số thứ tự cổng truyền thơng, cú pháp: MSComm1.CommPort = PortNumber PortNumber giá trị nằm khoảng từ 99, mặc định VD: MSComm1.CommPort = xác định sử dụng COM1 - PortOpen: Đặt trạng thái hay kiểm tra trạng thái đóng / mở cổng nối tiếp Nếu dùng thuộc tính để mở cổng nối tiếp phải sử dụng trước thuộc tính Settings CommPort - 96 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Cú pháp: MSComm1.PortOpen = True | False Giá trị xác định True thực mở cổng False để đóng cổng đồng thời xố nội dung đệm truyền, nhận VD: Mở cổng COM1 với tốc độ truyền 9600 bps MSComm1.Settings = "9600,N,8,1" MSComm1.CommPort = MSComm1.PortOpen = True - Các thuộc tính nhận liệu: Input: nhận chuỗi ký tự xố khỏi đệm Cú pháp: InputString = MSComm1.Input Thuộc tính kết hợp với InputLen để xác định số ký tự đọc vào Nếu InputLen = đọc tồn liệu có đệm InBufferCount: số ký tự có đệm nhận Cú pháp: Count = MSComm1.InBufferCount Thuộc tính dược dùng để xố đệm nhận bắng cách gán giá trị MSComm1.InBufferCount = - InBufferSize: đặt xác định kích thước đệm nhận (tính byte) Cú pháp: MSComm1.InBufferCount = NumByte Giá trị măc định 1024 byte Kích thước đệm phải đủ lớn để tránh tình trạng liệu VD: Đọc tồn nội dung đệm nhận có liệu MSComm1.InputLen = If MSComm1.InBufferCount Then InputString = MSComm1.Input End If - Các thuộc tính xuất liệu: Bao gồm thuộc tính Output, OutBufferCount OutBufferSize, chức thuộc tính giống thuộc tính nhập - 97 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc - CDTimeout: Đặt xác định khoảng thời gian lớn (tính ms) từ lúc phát sóng mang lúc có liệu Nếu q khoảng thời gian mà chưa có liệu gán thuộc tính CommEvent CDTO (Carrier Detect Timeout Error) tạo kiện OnComm Cú pháp: MSComm1.CDTimeout = NumTime - DSRTimeout: Xác định thời gian chờ tín hiệu DSR trước xảy kiện OnComm - CTSTimeout: Đặt xác định khoảng thời gian lớn (tính ms) đợi tín hiệu CTS trước đặt thuộc tính CommEvent CTSTO tạo kiện OnComm Cú pháp: MSComm1.CTSTimeout = NumTime - CTSHolding: Xác định có tín hiệu CTS hay chưa, tín hiệu dùng cho q trình bắt tay phần cứng (DCE sẵn sàng nhận liệu), trả giá trị True hay False - DSRHolding: Xác định trạng thái DSR (sự tồn DCE), trả giá trị True hay False - CDHolding: Xác định trạng thái CD, trả giá trị True hay False - DTREnable: Đặt hay xố tín hiệu DTR để báo tồn DTE Cú pháp: MSComm1.DTREnable = True | False - RTSEnable: Đặt hay xố tín hiệu RTS để u cầu truyền liệu đến DTE Cú pháp: MSComm1.RTSEnable = True | False - NullDiscard: Cho phép nhận ký tự NULL (rỗng) hay khơng (= True: cấm) Cú pháp: MSComm1.NullDiscard = True | False - 98 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 4.1 SƠ ĐỒ KHỐI MÁY TÍNH KHỐI GIAO TIẾP KHỐI XỬ KHỐI HIỂN THỊ LÝ TRUNG TÂM KHỐI CẢM BIẾN PIC16F877A KHỐI CẢNH BÁO VÀ ĐIỀU KHIỂN KHỐI NGUỒN - 99 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 4.2 SƠ ĐỒ NGUN LÝ VCC L3 J11 2 QUAT R12 c1815 Q2A Q4A Q5A c1815 c1815 VCC 12 11 10 Q8A c1815 220 R1OUT T1IN R1IN T1OUT P1 U3 12 11 PORTC C2+ C1+ C8 10uF C2- C1- 13 14 C6 VCC 4.7K x 11 22 33 44 55 66 C9 PORTB J9 SPEAKER 2 Q6A c1815 VCC R9 J10 Vcc a b c d e f g h Vcc a b c d e f g h Vcc c1815 a b c d e f g h Q3A c1815 a b c d e f g h c1815 a b c d e f g h Q1A a b c d e f g h Vcc a b c d e f g h a b c d e f g h PORTD a b c d e f g h a b c d e f g h Vcc a b c d e f g h 220 a b c d e f g h 14 13 12 11 10 Vcc 10uF V- V+ 10uF DB9 C7 10uF M AX232 KHOI HIEN THI KHOI CONG SUAT,CANH BAO VA GIAO TIEP VCC ON/OFF J3 15 16 17 18 23 24 25 26 C4 33P 13 32 31 RD0/PSP0 RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 RE0/RD*/AN5 RE1/WR*/AN6 RE2/CS*/AN7 I LM 7805 O 5V C2 104 D2 LED GREEN 0 1K J12 R13 R ? R2 G C1 J4 19 20 21 22 27 28 29 30 10 3 VR1 10K U4 LM 335 0 PIC16F877A VDD VSS KHOI NGUON PORTE KHOI CAM BIEN J6 OSC2/CLKOUT VDD VSS + 12VAC J5 OSC1/CLKIN 4Mh 14 C5 RC0/T1OSO/T1CKI RC1/T1OSI/CCP2 RC2/CCP1 RC3/SCK/SCL RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT - J7 U1 J2 VCC VCC D1 PORTC 7 PORTA C3 33 34 35 36 37 38 39 40 PORTB J1 10uF RB0/INT RB1 RA0/AN0 RB2 RA1/AN1 RB3/PGM RA2/AN2/VREF-/CVREF RB4 RA3/AN3/VREF+ RB5 RA4/T0CKI/C1OUT RB6/PGC RA5/AN4/SS*/C2OUTRB7/PGD MCLR*/VPP PORTD T1 U2 1K R1 RS PORTA RELAY5V Q7A 330x7 J8 11 12 POWER KHOI XU LY TRUNG TAM - 100 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc 4.3 NGUN LÝ HOẠT ĐỘNG TỪNG KHỐI 4.3.1 KHỐI NGUỒN ON/OFF VCC D1 T1 - J7 U1 I LM 7805 O G + 5V C2 12VAC R13 R C1 104 D2 2200uF LED GREEN 0 0 0 Hình 4.1 Khối nguồn Điện áp 220VAC sau qua biến áp cho điện áp 12VAC điện áp dưa qua cầu diode nắn thành dòng điện chiều 12.căn Điện áp chiều nhiều gọn sóng nên ta dung tụ C1 để lọc bớt gợn sóng đưa qua IC ổn áp 7805 dòn điện chiều có điện áp 5VDC ổn định Cơng thức tính điện dung cho tụ C1 : Kv = Rl * f * C * =0.02 (với mức điên áp từ biến 12V) với R tổng trở mạch f=50Hz Rl=Vcc/I (I I tồn mạch) Tụ C2=104 lọc bỏ hết thành phần xoay chiều sót lại Phân cực cho led : với led dơn dòng điện qua 10mA điện áp rơi 2V nên ta có Vcc= Iled* Rled + 2V Ù 5V = 10mA * Rled + 2V Ù 3V = 10mA * Rled - 101 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tơ Hồng Lộc Ư Rled= 3V/10mA = 300 Ohm Ư Trên thực tế ta chọn 330 Ohm 4.3.2 KHỐI XỬ LÝ TRUNG TÂM VCC VCC R1 R1 1K J2 J2 PORTC C3 C30 33P C4 33P C5 21 32 64 75 15 16 17 18 23 24 25 26 8C4 PORTC 10uF 1 MCLR*/VPPRB0/INT 33 RB0/INT MCLR*/VPP 34 RB1 35 RB13 RA0/AN0RA0/AN0 RB2 36 RB24 RA1/AN1 RB3/PGM RB3/PGM 37 RA1/AN1 RA2/AN2/VREF-/CVREF RB4 38 RB46 RA3/AN3/VREF+ RB5 39 RA2/AN2/VREF-/CVREF RB57 RA4/T0CKI/C1OUT RB6/PGC 40 RA3/AN3/VREF+ RB6/PGC RA4/T0CKI/C1OUT RA5/AN4/SS*/C2OUT RB7/PGD RA5/AN4/SS*/C2OUTRB7/PGD 19 RC0/T1OSO/T1CKI RD0/PSP0 15 RC1/T1OSI/CCP2 RD1/PSP1 16 RC0/T1OSO/T1CKI RC2/CCP1 RD2/PSP2 RC1/T1OSI/CCP2 RC3/SCK/SCL RD3/PSP3 17 RC2/CCP1 RC4/SDI/SDA RD4/PSP4 18 RC3/SCK/SCL RC5/SDO RD5/PSP5 23 RC6/TX/CK RD6/PSP6 RC4/SDI/SDA 24 RC7/RX/DT RC5/SDO RD7/PSP7 33 34 35 36 37 38 39 40 J4 8 20 21 RD0/PSP0 22 RD1/PSP1 27 RD2/PSP2 28 RD3/PSP3 29 RD4/PSP4 30 19 20 21 22 27 28 RD5/PSP5 25 29 13 J5 RD6/PSP6 30 26 RC6/TX/CK OSC1/CLKIN RC7/RX/DT RE0/RD*/AN5 RD7/PSP7 4Mh PORTEJ5 RE1/WR*/AN6 10 13 RE2/CS*/AN7 OSC1/CLKIN 14 J6 OSC2/CLKOUT RE0/RD*/AN5 4Mh RE1/WR*/AN6 32 11 10 VDD 12 31 VDD RE2/CS*/AN7 PIC16F877A VSS VSS 14 OSC2/CLKOUT C5 32 31 VDD VSS PIC16F877A VDD VSS J4 PORTD PORTA J1 PORTA J1 10uF J3 J3 U2 U2 POWER 11 12 PORTD RS PORTB RS PORTB 1K PORTE J6 POWER Hình 4.2 Khối xủ lý trung tâm Khối xử lý trung tâm vi điều khiển PIC16F877A , port I/O vi xử lý nối đầu cắm để tiện thi cơng kết nối Các chân OSC1 OSC2 nối với thạch anh 4Mh tụ 33P Chân kéo lên nguồn với đện trở 1K Ω tụ 10 μF dùng để ổn định điện áp nhằm chống dội sử dung nút reset nhấn réet thi chân nối xuống mass làm cho PIC16F877A reset - 102 - SVTH : Lê Văn Thực .. .Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tô Hoàng Lộc Sơ đồ chân PIC 16f877A -2- SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tô Hoàng Lộc PIC16F877A họ vi điều khiển có 40... liên quan đến Port A - 21 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tô Hoàng Lộc - 22 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tô Hoàng Lộc 1.6.2 Port B ghi TRISB:... SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tô Hoàng Lộc Bảng chức PortB : Bảng tóm tắt ghi liên quan đến Port B : - 24 - SVTH : Lê Văn Thực Đo Và Điều Khiển Nhiệt Độ Phòng GVHD: Tô

Ngày đăng: 07/09/2017, 11:03

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

Tài liệu liên quan