[ KIT 89S52_V2 ] Bài 2: Sử dụng nút bấm điều khiển
[ KIT 89S52_V2 ] Sử dụng nút bấm điều khiển
Chào các bạn!
Hôm nay mình xin giới thiệu với các bạn cách sử dụng nút bấm để điều khiển 89S52 làm việc
I Sơ đồ nguyên lí khối nút bấm và khối LED
( Ở đây mình chỉ điều khiển khối LED thôi còn các bạn muốn thực hiện làm nhiệm vụ khác thì sẽ thay đổi lại sau nhé)
II Giải thích một chút
Trên hình ảnh sơ đồ nguyên lí bên trên các bạn có thể thấy chúng ta có 4 nút nhấn nối với 4 chân vi điều khiển ở PORT 3, ngoài ra có thêm 4 LED đơn nối với 4 chân vi điền khiển ở PORT 1.
Ở bài viết này mình xin giới thiệu cách để giúp vi điều khiển hoạt động nhờ nút bấm. Còn phần LED thì các bạn xem lại ở bài trước nhé: [ KIT 89S52_V2 ] Hiển thị LED đơn
Nút nhấn có 2 chân: 1 chân nối với VĐK, chân còn lại nối VCC.
Khi ta ấn nút nhấn thì VĐK sẽ nhận đươc tín hiệu. Từ đây chúng ta sẽ cần giúp vi điều khiển nhận tín hiệu và làm 1 việc gì đó mà bạn muốn.
III Chương trình
Dưới đây là 1 đoạn code đơn giản cho các bạn tham khảo.
Các bạn có thể thay tín hiệu vào bằng 1 số loại cảm biến để sử dụng với mục đích khác nhé.
Mình xin giải thích 1 chút: Đây là chương trình khi ta ấn vào phím thì LED bật, nhả tay khỏi phím thì LED tắt.
" if " là câu lệnh điều kiện. Khi đúng với điều kiện thì sẽ hoạt động tiếp. Sai điều kiện thì sẽ không hoạt động.
Các bạn chỉ cần hiểu đơn giản: if(điều kiện) nhiệm vụ
Ở dòng thứ 9: if(P3_2 == 0) P1_0 = 0;
Ở đây khi ta nhấn nút thì sẽ có tín hiệu vào chân P3_2 của VĐK. Khi đúng điều kiện thì VĐK sẽ điều khiển chân P1_0.
Tôi để giá trị " == 0 " là chân này của VĐK sẽ so sánh nếu bằng 0 thì là đúng, bằng 1 là sai. Khi điều kiện trong ngoặc đúng nhiệm vụ đằng sau sẽ được thực hiện đó là làm cho LED sáng nên.
Ở dòng thứ 10: Đi ngược lại với dòng 9. Bình thường thì tín hiệu luôn ở trạng thái P3_2 == 1 nên LED sẽ luôn luôn tắt. Khi ta nhấn nút thì sẽ chuyển trạng thái sang sòng 9.
Video DEMO
Các bạn có thể tham khảo code: Tại đây