![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
![]() |
|
Ðiều Chỉnh | Xếp Bài |
|
![]() |
#1 |
Đệ tử 6 túi
|
Buff_mh: là noi chứa dựng nhưng thông tin bạn càn hiển thị trên matran, muốn thay đổi hiển thị bạn chỉ cần thay doi nội dung của buff_mh(lưu ý là công việc quet led và lấy dữ liệu bạn nên làm 1 cách tự động như trên--> công việc còn lại là thay dổi dữ liệu trong buff_mh-->thay đổi nội dung hiển thị)
Khi bạn làm được những gì như tôi đã nói, lúc đó bạn có thể sử dụng các hàm point(x,y)...bât cứ ở dâu trong chuong trình của bạn vì mục dích của nó là làm thay đổi nội dung của buff_mh(việc quet led và lấy dữ liệu hiển thị đã diễn ra tự động) từ đó làm thay dổi nội dung hiển thị. Nhìn vào hàm point(x,y): void point(int8 x,int8 y) { unsigned char *pt; int8 mask=0b00000001; int16 j; mask = mask << (y%8); pt=&buff_mh[0][0]; j=(y/8*16+x);//xác dinh vi tri x pt+=j; *pt|= mask; } Hiểu rõ đoạn chương trình này, bạn sẽ thấy nó thực chất là các lệnh xoay dữ liệu làm thay đổi 1 bit nào đó ở vị trì tương ứng trong buff_mh. Trở lại đoạn chương trình bạn đã viết ở #53, chắc bạn cũng nhận ra rằng bạn thiếu mất đoạn chương trình quét và lấy dữ liệu, bạn chỉ thay đổi được nội dung trong buff_mh nhưng những thay đổi đó dâu có được hiển thị. Bạn làm thử và post lên cho mọi người biết kết quả của bạn nhé. Thân,
__________________
-------------------------------------------------------------------------------------- Phùng Minh Tuân Email: tuan.phmt@gmail.com "Cuộc đời sóng gió nuôi ta lớn Bao lần thất bại dạy ta khôn". |
![]() |
![]() |
![]() |
|
|