Về nguyên lý, nút bấm ADC thưc hiện cũng dễ dàng, tôi dùng 7 điện trở 1k nối tiếp với nhau giữa nguồn và đất tạo ra 6 điểm lấy mẫu nối với 6 nút bấm để cho AN0 đọc trị.
Với mạch test thử để nhận biết nút nhấn rất OK, trị đọc được từ chương trình test so với trị tính toán từ lý thuyết khớp hầu hết cả các nút và nút nào có trị chênh cũng chỉ sai đúng 1 (tức là nếu tính bằng 343 thì chương trình đọc ra cũng 332,343 hoặc 344).
Tuy nhiên dùng cho mạch thực tế có sự rắc rối khó giải quyết là sau khi buông phím, giá trị ADC vẫn còn được đọc lại với một giá trị khác ở vòng lặp tiếp sau, lý do là điện áp tại nút bấm không giữ nguyên hoặc bằng 0 mà xả giảm theo đồ thị xung.
Giá trị đọc sau này sẽ kích hoạt lệnh xử lý khác của chương trình ngoài mong muốn.
Các anh chị và bạn bè xin vui lòng gợi ý (càng kỹ càng tốt) làm thế nào đọc ADC xong là OFF ngay ADC trong thời gian nào đó (ví dụ 500ms) rồi mới đọc tiếp, khi đó thì ADC_value đã bằng 0 rồi.
Xin cảm ơn anh chị và các bạn quan tâm.
Với mạch test thử để nhận biết nút nhấn rất OK, trị đọc được từ chương trình test so với trị tính toán từ lý thuyết khớp hầu hết cả các nút và nút nào có trị chênh cũng chỉ sai đúng 1 (tức là nếu tính bằng 343 thì chương trình đọc ra cũng 332,343 hoặc 344).
Tuy nhiên dùng cho mạch thực tế có sự rắc rối khó giải quyết là sau khi buông phím, giá trị ADC vẫn còn được đọc lại với một giá trị khác ở vòng lặp tiếp sau, lý do là điện áp tại nút bấm không giữ nguyên hoặc bằng 0 mà xả giảm theo đồ thị xung.
Giá trị đọc sau này sẽ kích hoạt lệnh xử lý khác của chương trình ngoài mong muốn.
Các anh chị và bạn bè xin vui lòng gợi ý (càng kỹ càng tốt) làm thế nào đọc ADC xong là OFF ngay ADC trong thời gian nào đó (ví dụ 500ms) rồi mới đọc tiếp, khi đó thì ADC_value đã bằng 0 rồi.
Xin cảm ơn anh chị và các bạn quan tâm.