1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

MẠCH đồ hồ số HIỂN THỊ LED 7 đoạn DÙNG PIC (có code và layout)

36 1,2K 2

Đ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

Thông tin cơ bản

Định dạng
Số trang 36
Dung lượng 1,09 MB

Nội dung

MẠCH đồ hồ số HIỂN THỊ LED 7 đoạn DÙNG PIC (có code và layout) MẠCH đồ hồ số HIỂN THỊ LED 7 đoạn DÙNG PIC (có code và layout) MẠCH đồ hồ số HIỂN THỊ LED 7 đoạn DÙNG PIC (có code và layout) MẠCH đồ hồ số HIỂN THỊ LED 7 đoạn DÙNG PIC (có code và layout) MẠCH đồ hồ số HIỂN THỊ LED 7 đoạn DÙNG PIC (có code và layout)

ĐỒ ÁN MẠCH ĐỒ HỒ SỐ HIỂN THỊ LED ĐOẠN MỤC LỤC DANH MỤC CÁC HÌNH VẼ III DANH MỤC CÁC TỪ VIẾT TẮT VI CHƯƠNG TỔNG QUAN VỀ MẠCH ĐỒNG HỒ SỐ HIỂN THỊ LED ĐOẠN 1.1GIỚI THIỆU : 1.2NGUYÊN LÝ CHUNG : CHƯƠNG TÌM HIỂU LINH KIỆN CỦA MẠCH ĐỀ TÀI 2.1LINH KIỆN CHÍNH TRONG MẠCH: CHƯƠNG THIẾT KẾ MẠCH 12 3.1 ĐỒ KHỐI 12 3.2SƠ ĐỒ GIẢI THUẬT 13 3.3NGUYÊN LÝ HOẠT ĐỘNG CỦA MẠCH: 14 CHƯƠNG THỰC THI PHẦN CỨNG .17 4.1MẠCH IN 17 4.2MẠCH ĐỀ TÀI 18 CHƯƠNG KẾT LUẬN 19 TÀI LIỆU THAM KHẢO .20 PHỤ LỤC 20 DANH MỤC CÁC HÌNH VẼ HÌNH 2.1: PIC16F877A .2 HÌNH 2.2: ĐỒ CHÂN PIC16F877A HÌNH 2.3: CẤU HÌNH PIC16 CHỨC NĂNG: .5 +PORT A: _BAO GỒM CHÂN.DÙNG LẬP TRÌNH ĐỂ THỰC HIỆN CHỨC NĂNG “2 CHIỀU”.XUẤT NHẬP DỮ LIỆU RA VÀO VĐK _INPUT ANALOG CỦA BỘ ADC : CHỨC NĂNG CHUYỂN TỪ ANALOG SANG DIGITAL _INPUT ĐIỆN THẾ SO SÁNH _INPUT XUNG CLOCK CỦA TIMER TRONG CẤU TRÚC PHẦN CỨNG:THỰC HIỆN ĐẾM XUNG QUA TIMER .5 _INPUT GIAO TIẾP MSSP(MASTER SYNCHRONOUS SERIAL PORT) +PORT B: _GỒM CÓ CHÂN.TƯƠNG TỰ PORT A, CÁC CHÂN CỦA PORT B CĨ CHỨC NĂNG CHÍNH LÀ: OUTPUT INPUT.VÀ CHỨC NĂNG TRÊN ĐƯỢC ĐIỀU KHIỂN BỞI THANH GHI TRISTB _KHI MUỐN SET CHÂN CỦA PORT B LÀ INPUT THÌ LÀ SET BIT TƯƠNG ỨNG TRONG TRISTB .6 _KHI MUỐN LÀ OUTPUT THÌ TA CLEAR BIT TƯƠNG ỨNG TRONG TRISTB.6 _THANH GHI TRISTB ĐƯỢC TÍCH HỢP BỘ ĐIỆN TRỞ KÉO LÊN CĨ THỂ ĐIỀU KHIỂN ĐƯỢC BẰNG CHƯƠNG TRÌNH +PORT D: _GỒM CÓ CHÂN.CÁC CHÂN CỦA PORT D CĨ CHỨC NĂNG CHÍNH OUTPUT INPUT DƯỚI SỰ ĐIỀU KHIỂN THANH GHI TRISTD TƯƠNG TỰ THANH GHI TRÊN _LÀ PORT XUẤT DỮ LIỆU CHUẨN GIAO TIẾP SONG SONG PSP(PARALLEL SLAVE PORT) .6 +PORT C: _PORT C GỒM CHÂN TƯƠNG TỰ NHƯ CÁC PORT TRÊN THỰC HIỆN CHỨC NĂNG CHÍNH LÀ OUTPUT INPUT DƯƠI SỰ ĐIỀU KHIỂN CỦA THANH GHI TRIST C .6 _TÍCH HỢP CÁC BỘ GIAO TIẾP I2C, SPI, SSP, USART… _TRONG CẤU TRÚC PHẦN CỨNG LÀ NGÕ VÀO XUNG CLOCK TIMER _NGỒI RA CĨ BỘ PWM THỰC HIỆN NHIỆM VỤ ĐIỀU XUNG LẬP TRÌNH ĐƯỢC TẦN SỐ, DUTY CYCLE ĐƯỢC ỨNG DỤNG TRONG ĐIỀU KHIỂN TỐC ĐỘ VỊ TRÍ CỦA ĐỘNG CƠ .6 +PORT E: _CÓ CHÂN.THANH GHI TRISTE ĐIỀU KHIỂN XUẤT NHẬP _CÁC CHÂN PORTE LÀ NGÕ VÀO ANALOG _CÁC CHÂN PORT E ĐIỀU KHIỂN CHUẨN GIAO TIẾP PSP( PARALLEL SLAVE PORT) HÌNH 2.4:RTC DS1307 .7 HÌNH 2.5 ĐIỆN TRỞ HÌNH 2.6 LED ĐOẠN HÌNH 2.7:THẠCH ANH 20MHZ 32.768KHZ HÌNH 3.1 : ĐỒ KHỐI VI ĐIỀU KHIỂN PIC16F877A 14 HÌNH 3.2 : ĐỒ KHỐI RTC DS1307 15 _ IC RTC DS1307 SỬ DỤNG THẠNH ANH GIAO ĐỘNG 32.768KHZ CÁC ĐIỆN TRỞ R8 R6 LÀ ĐIỆN TRỞ KÉO LÊN CỦA GIAO TIẾP I2C GIAO TIẾP VỚI VĐK PIC THEO CHUẨN I2C.DÙNG PIN 3V NUÔI NGUỒN CHO DS1307 VẪN CHẠY GIỜ KHI MẤT NGUỒN .15 _NGÕ SCL(SERIAL CLOCK) LÀ ĐƯỜNG TRUYỀN XUNG CLOCK ĐỂ ĐỒNG BỘ CHỈ THEO HƯỚNG 15 _NGÕ SDA(SERIAL DATA) LÀ ĐƯỜNG TRUYỄN DỮ LIỆU HƯỚNG 15 _MỖI DÂY SCL SDA ĐỀU ĐƯỢC NỐI VỚI ĐIỆN ÁP DƯƠNG CỦA NGUỒN CẤP QUA MỘT ĐIỆN TRỞ KÉO LÊN 15 HÌNH 3.3: KHỐI LED ĐOẠN .16 HÌNH 4.1 : PCB MẠCH ĐỀ TÀI 17 18 DANH MỤC CÁC TỪ VIẾT TẮT VDK PCB Vi Điều Khiển Printed Circuit Board IC Intergrated Circuit ĐỒ ÁN Trang 1/29 CHƯƠNG TỔNG QUAN VỀ MẠCH ĐỒNG HỒ SỐ HIỂN THỊ LED ĐOẠN 1.1 Giới thiệu : • Tính cần thiết đồng hồ báo thức _Hiện sống hàng ngày cần đồng hồ để hẹn báo thức, để sáng không bị trễ có hẹn lịch trình tuần cần thiết người phải sở hữu đồng hồ số để hẹn báo thức khởi động ngày hồn hảo • Mục đích _Để hẹn báo thức muốn • Ứng dụng thực tế -Sản phẩm đồng số dùng để báo thức 1.2 Nguyên lý chung : _Mạch sử dụng PIC VĐK PIC16F877A làm xử lý trung tâm Vi xử lý đọc ghi thời gian vào IC thời gian thực RTC DS1307 thông qua chuẩn giao thức I2C Khi cấp nguồn vi xử lý khởi tạo IC thời gian thực sau đọc thời gian từ IC xuất liệu vừa đọc hiển thị LED đoạn đồng thời quét nút nhấn để kiểm tra ta nhấn nút Mã BCD VĐK xuất trực tiếp cấp đồng thời cho LED đoạn Quá trình quét LED VĐK cấp mã BCD cho LED tương ứng sau khối đệm đảo Transitor kích hoạt dẫn cấp nguồn cho LED tương ứng Sau khoảng thời gian tạo trễ ngừng cấp nguồn cho LED chuyển mã sang cho LED _ Để cập nhật thời gian VĐK đọc thời gian từ IC thời gian thực với khoảng 300ms cho lần đọc VĐK ngưng việc đọc thời gian từ IC thời gian thực lúc ta chỉnh thời gian, ta hồn thành việc chỉnh thời gian VĐK ghi thời gian chỉnh ngược vào IC để lưu lại thời gian chỉnh Các nút nhấn trạng Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 2/29 thái bình thường mức cao,và ta nhấn nút VĐK quét nhận thấy nút nhấn xuống mức thấp thực lệnh tương ứng với nút nhấn CHƯƠNG TÌM HIỂU LINH KIỆN CỦA MẠCH ĐỀ TÀI 2.1 Linh kiện mạch: • PIC16F877A Hình 2.1: PIC16F877A  PIC16F877A bao gồm 40 chân chia thành port xuất nhập khác nhau, có chân dùng để cấp nguồn, chân GND, chân dùng Reset Vi điều khiển chân thạch anh  Có port xuất/ nhập +PORT A: chân +PORT B: chân +PORT C: chân +PORT D: chân +PORT E: chân  Trình bày đồ chân 16F877A: Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 3/29 Hình 2.2: đồ chân Pic16F877a Bảng 2.1 Bảng đặc điểm PIC16F877A: Đặc điểm PIC16F877A Tần số hoạt động DC- 20MHz Reset (và Delay) POR, BOR (PWRT, OST) Bộ nhớ chương trình Flash (14-bit 8K word) Bộ nhớ liệu (byte) 368 Bộ nhớ liệu EEPROM (byte) 256 Các nguồn ngắt 15 Các port xuất nhập Các port A, B, C, D, E Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 4/29 Timer Các module capture/compare/ PWM Giao tiếp nối tiếp MSSP, USART Giao tiếp song song PSP Module A/D 10bit kênh ngõ vào Bộ so sánh tương tự Tập lệnh Số chân 35 lệnh • 40 chân PDIP • 44 chân PLCC • 44 chân TQFP • 44 chân QFN  Cấu hình minh họa PIC 16: Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 16/29 • Khối hiển thị Hình 3.3: Khối led đoạn - Ta có LED đoạn Anode chung kết nối song song ngõ ABCDEFG Nhưng có chân Anode LED riêng biệt cấp nguồn từ Transistor kích hoạt dẫn cấp nguồn Các LED quét theo thứ tự với mã BCD cấp trước cho tất LED tương ứng cấp nguồn Q trình qt LED hồn thành sau lần chuyển mã, lần cấp nguồn cho LED tương ứng Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 17/29 CHƯƠNG THỰC THI PHẦN CỨNG 4.1 Mạch in Thiết kế PCB mạch đề tài Hình 4.1 : PCB mạch đề tài Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 18/29 4.2 Mạch đề tài Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 19/29 CHƯƠNG KẾT LUẬN • Ưu điểm _Tiện lợi cho việc quan sát LED đoạn _Có thể đặt báo thức theo ý muốn việc điều chỉnh nút nhấn • Khuyết điểm _Vẫn điều chỉnh thủ công qua nút bấm không tiện lợi smart phone ngày • Hướng phát triển _Tìm hiểu thêm kiến thức để tích hợp nhìu cơng dụng cảm biến nhiệt độ, thời tiết, đếm giờ, báo cáo lịch trình… _Có thể sử dụng điều khiển từ xa để điều chỉnh Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 20/29 TÀI LIỆU THAM KHẢO Tiếng Việt: [1] Nguyễn Đình Phú, “Giáo trình vi điều khiển 16F877” , Đại học Sư Phạm Kỹ Thuật [2] Điện tử http://www.echipkool.comv [3] Giao tiếp I2C DS1307 Website: http://www.ytuongnhanh.vn/chi-tiet/giao-tiep-ic-ds1307-bai-1-153.html Tiếng Anh: [4] http://www.alldatasheet.com/ [5] http://www.robot-electronics.co.uk/i2c-tutorial PHỤ LỤC Dựa mục tiêu đề tài ta lập trình code sau: #include #include #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT, NOLVP, NOCPD, NOWRT #use delay(clock=20000000) #use i2c(master,fast,sda = pin_c4,scl = pin_c3) Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 21/29 #define ACK #define NO_ACK #define loa RE0 #define k1 RA2 #define k2 RA3 #define k3 RA4 #define k4 RA5 #define l6 RD0 #define l5 RD1 #define l4 RD2 #define l3 RD3 #define l2 RD4 #define l1 RD5 int8 low,high,c_g,dv_g,c_p,dv_p,c_h,dv_h,thu,c_d,dv_d,c_t,dv_t,c_n,dv_n,h,p,g,d,t,n; int8 gio = 0, phut = 0, giay = 0; const unsigned char so[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; unsigned char RTC_ARR[7]; void convert_bcd_lcd(int8 g,int8 p, int8 h, int8 th, int8 d, int8 t, int8 n); void convert_so_lcd(int8 x); void ReadRTC(unsigned char * buff); void WriteRTC(unsigned char * buff); void chinh_gio(); void chinh_bt(); // void htgio() Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 22/29 { int j =0; while(j4; dv_p=p&15; c_h=(h&240)>>4; dv_h=h&15; thu = th; c_d=(d&240)>>4; dv_d=d&15; c_t=(t&240)>>4; dv_t=t&15; c_n=(n&240)>>4; Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 25/29 dv_n=n&15 } void convert_so_lcd(int8 x) { low=x%10; high=x/10; low = low + 0x30; high = high + 0x30; } void chinh_gio() { int mode=1,i=0; ReadRTC(&RTC_ARR[0]); convert_bcd_lcd(RTC_ARR[0],RTC_ARR[1],RTC_ARR[2],RTC_ARR[3], RTC_ARR[4],RTC_ARR[5],RTC_ARR[6]); h = c_h*10+dv_h; p = c_p*10+dv_p; g = c_g*10+dv_g; d = c_d*10+dv_d;t = c_t*10+dv_t;n = c_n*10+dv_n; while(true) { if(i3) break;} } // luu lai thoi gian chinh // //ReadRTC(&RTC_ARR[0]); Đồng hồ số hiển thị led đoạn ĐỒ ÁN Trang 27/29 c_g = g/10; dv_g = g%10; c_p = p/10; dv_p = p%10; c_h = h/10; dv_h = h%10; // c_d = d/10; dv_d = d%10; c_t = t/10; dv_t = t%10; c_n = n/10; dv_n = n%10; RTC_ARR[0] = (c_g

Ngày đăng: 04/05/2018, 18:04

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w