Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 13 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
13
Dung lượng
1,16 MB
Nội dung
Đại học Bách Khoa Hà Nội Trường Điện – Điện tử BÁO CÁO BÀI TẬP GIỮA KÌ MƠN VI ĐIỀU KHIỂN VÀ ỨNG DỤNG Giảng viên hướng dẫn : TS Nguyễn Hồng Quang Sinh viên: Trần Hữu Phước MSSV: 20181694 Đề : Thiết kế mạch tự động mở khóa Stm32f103C8 Cấu hình STM32 STM32CubeMX -Với chân Input Pull-up tử PA1 đến PA4 -Các chân khác sử dụng chế độ OutPut nopull - Các cấu hình cịn lại để chế độ mặc định 2 Các phần tử mạch: - Em xin phép bỏ qua phần giới thiệu Stm32F103C8 ,LCD, Led đoạn mà trình bày cụ thể Cơ chế quét bàn phím Chương trình điều khiển Led 2.1 Cơ chế quét bàn phím - Ta để hàng đấu với chân từ PA1 – PA4 chế độ Input Pullup - Quét phím diễn sau: Khi quét cột 1, phím cột nhấn, tương ứng trạng thái GPIO hàng thay đổi theo vị trí nút nhấn Các nút nhấn cột khác dù nhấn khơng có tác dụng - Khi quét đến cột 2,3 tương tự Q trình qt phải sảy nhanh, để kiểm tra tất nút thời gian nhấn thả - Để đọc giá trị nhấn vi điều khiển ghi mức vào chân (Quét Hàng) Sau đọc giá trị từ chân Nếu quét pin mà pin3 có tín hiệu => nút nhấn.Tương tự với nút cịn lại 2.2 Chương trình điều khiển Led - Để điều khiển Led thanh, ta sử dụng IC7447 74LS138 - - IC7447 gồm đầu vào A B C D nối với cấc cổng PB3-PB0 VĐK Các đầu gồm QA-QG kết nối với chân a,b,c,d,e,f,g của Led - Đầu vào A,B,C,D quy định giá trị mà sáng Led bao nhiêu, ứng với giá trị từ đến chuyển từ mã nhị phân Ví dụ: ABCD 1010 giá trị Led tương ứng - - Với IC74LS138 ta sử dụng đầu vào A,B,C, tín hiệu điều khiển từ A, B,C định giá trị đầu Y0 đến Y7 hay theo quy tắc chuyển số từ hệ nhị phân sang thập phân Ví dụ tín hiệu vào ABC 100 chân Y1 set lên 111 Y7 = - đầu Y0-Y7 đấu với chân Base Transistor với mục đích điều khiển dịng vào Led Nói cách khác nhiệm vụ 74LS138 lựa chọn led sáng lên - Các chân E1, E2,E3 cấp vào mức logic 0 để IC hoạt động Ở đặc biệt sở dụng chân E1 nối với PB5 công tắc để tắt mở đèn - Về mạch điều khiển LED, ta phải lưu ý điều sau: - IC 7747 định số mà led sáng, 74LS138 định sáng led số - Trên thực tế led không sáng lúc, mà liên tục sáng với khoảng delay nhỏ mà mắt thường nhận Ở làm em để delay khoảng 63ms giây, em thử dùng độ delay với led thực led sáng gần lúc, mô proteus xảy tượng nhấp nháy, em chưa khắc phục dù chỉnh độ delay 3 Sơ đồ thuật toán: Hàm quan trọng : Hàm phát nút nhấn: - Để kiểm tra xem có nút nhấn hay không, ta kiểm tra logic chân PA1PA5, có nút ta trả giá trị Hàm có sử dụng hàm delay để kiểm tra xem nút có chắn nhấn chưa Hàm lấy giá trị từ bàn phím: - Hàm thực q trình qt phím, kiểm tra nút nhấn, sau thực q trình qt cột hàm CheckCol(), sau dựa vào giá trị hàng nhận tương ứng để return giá trị tương ứng mảng chiều khai báo Các hàm sáng LED: Các hàm LED1 đến LED8 hoạt động chế sau: - Khi X =1, hàm LED1() thực thi, hàm gọi hàm Number() với biến vào key quét từ bàn phím để thị key lên led, gán giá trị vào đèn thứ qua CheckLed1() sau thực q trình sáng đèn - Sau ta lưu biến key vào giá trị a, sau hàm LED2 ta cho led thứ nhận giá trị a, led thứ nhận giá trị key Cứ tiếp tục LED8 với đèn trước gán giá trị cũ % - Các hàm CheckLed() Number() để chọn số thứ tự số sáng led 5.Kết mơ phỏng: Vì kết mơ tín hiệu LED nên khó chụp ảnh Em xin phép mơ q trình video đính kèm với tệp Hiện em cho đèn sáng với delay 63ms, kết mơ nhìn thấy đèn chớp mắt thường Hiện em chưa có giải pháp khắc phục nghĩ chương trình mơ có vấn đề Em mong thầy góp ý cho làm em ! Em cảm ơn thầy ! ... => nút nhấn.Tương tự với nút lại 2.2 Chương trình điều khiển Led - Để điều khiển Led thanh, ta sử dụng IC7447 74LS138 - - IC7447 gồm đầu vào A B C D nối với cấc cổng PB3-PB0 VĐK Các đầu gồm... Đầu vào A,B,C,D quy định giá trị mà sáng Led bao nhiêu, ứng với giá trị từ đến chuyển từ mã nhị phân Ví dụ: ABCD 1010 giá trị Led tương ứng - - Với IC74LS138 ta sử dụng đầu vào A,B,C, tín hiệu điều. .. dù nhấn khơng có tác dụng - Khi qt đến cột 2,3 tương tự Quá trình quét phải sảy nhanh, để kiểm tra tất nút thời gian nhấn thả - Để đọc giá trị nhấn vi điều khiển ghi mức vào chân (Quét Hàng)