mình có bài tập VXL này:
Một ứng dụng được phát triển dựa trên bộ vi điều khiển AT89S51 có giao diện với người dùng như hình vẽ:
- Khi mới bật điện, LED bảy đoạn hiển thị giá trị (VALUE) bằng 0.
- ADJ., SET, và CLEAR đều là những nút nhấn thường hở.
- Bất kể lúc nào nút CLEAR được nhấn thả, giá trị trên LED sẽ bằng 0.
- Bất kể lúc nào nút SET được nhấn thả, giá trị trên LED sẽ bằng 5.
- Bất kể lúc nào nút ADJ. được nhấn thả, giá trị trên LED sẽ tăng lên một đơn vị và tự dừng lại. Nếu đang là 9, nhấn thả ADJ. sẽ chuyển giá trị về bằng 0.
a) Vẽ sơ đồ mạch nguyên lý hoàn chỉnh.
b) Vẽ lưu đồ giải thuật.
Viết chương trình hợp ngữ
Cách giải quyết cuả mình như sau:
i)ban đầu phải kiểm tra và chống dội cho nút nhấn xem nút có được nhấn để nhận lệnh không?
ii) sau đó với lần lượt các nút như ADJ được nhấn thành công thì ta tăng giá trị lên 1 cho LED.
Iii)nút SET được nhấn thì phải đưa ngay ra LED số 5
iiii) dùng phương pháp tra bảng với con trỏ DPTR vì yêu cầu là giải mã bằng phần mền vì thế ta cứ xuất ra giá trị cho port 1(led được nối trực tiếp vào port 1)
nhưng mình có những thắc mắc nhỏ sau:
1) nút CLEAR như mình thiết kế trên là gắn vào RST thì khi lập trình mình phải mô tả như thế nào?
2) Các bạn có đóng góp ý kiến nào cho pp giải bài này ? giúp mình với nhé.
Đây là phương án của mình:
Một ứng dụng được phát triển dựa trên bộ vi điều khiển AT89S51 có giao diện với người dùng như hình vẽ:
- Khi mới bật điện, LED bảy đoạn hiển thị giá trị (VALUE) bằng 0.
- ADJ., SET, và CLEAR đều là những nút nhấn thường hở.
- Bất kể lúc nào nút CLEAR được nhấn thả, giá trị trên LED sẽ bằng 0.
- Bất kể lúc nào nút SET được nhấn thả, giá trị trên LED sẽ bằng 5.
- Bất kể lúc nào nút ADJ. được nhấn thả, giá trị trên LED sẽ tăng lên một đơn vị và tự dừng lại. Nếu đang là 9, nhấn thả ADJ. sẽ chuyển giá trị về bằng 0.
a) Vẽ sơ đồ mạch nguyên lý hoàn chỉnh.
b) Vẽ lưu đồ giải thuật.
Viết chương trình hợp ngữ
Cách giải quyết cuả mình như sau:
i)ban đầu phải kiểm tra và chống dội cho nút nhấn xem nút có được nhấn để nhận lệnh không?
ii) sau đó với lần lượt các nút như ADJ được nhấn thành công thì ta tăng giá trị lên 1 cho LED.
Iii)nút SET được nhấn thì phải đưa ngay ra LED số 5
iiii) dùng phương pháp tra bảng với con trỏ DPTR vì yêu cầu là giải mã bằng phần mền vì thế ta cứ xuất ra giá trị cho port 1(led được nối trực tiếp vào port 1)
nhưng mình có những thắc mắc nhỏ sau:
1) nút CLEAR như mình thiết kế trên là gắn vào RST thì khi lập trình mình phải mô tả như thế nào?
2) Các bạn có đóng góp ý kiến nào cho pp giải bài này ? giúp mình với nhé.
Đây là phương án của mình: