meishun
05-12-2009, 02:23 PM
Chào các bác,
Em đang làm dự án về LED matrix, dùng loại 5x7. Việc hiển thị kí tự ra thì em đã làm được, tuy nhiên, em gặp chút khó khăn trong việc cho LED SÁNG DẦN từ LED 1 đến LED 35 sau mỗi 150ms (xem hình đính kèm). Em đã làm như sau:
- Cho LED1 sáng
- Cho LED1 và LED2 cùng sáng
...
- Cho LED1,2,3,4,5 cùng sáng (lúc này 5 LED sáng dần sau mỗi 150ms, OK, chưa có vấn đề gì)
- Problem: Bật LED thứ 6 sáng (LED này nằm ở hàng 2 cột 1, trong khi yêu cầu là 5 LED trước đó vần sáng). Em cho việc quét 5 LED 1-5 lặp lại đúng 150ms để bật LED 6, lúc này có vẻ ... ổn.
- Khi bật đến LED 13 (làm tương tự trên) thì trình dịch báo lỗi "ROM space error". Em ko hiểu là cho quá nhiều vòng lặp for lồng vào nhau sẽ sinh ra code quá nhiều hay vì trình dịch chọn page bộ nhớ ko được??? Theo em tính toán thì mỗi lần quét 1 LED chỉ tốn cao lắm là vài chục từ nhớ.
==> Mong các cao thủ chỉ em giải thuật nào hay và hiệu quả hơn để em giải quyết bài toán này ạh.
Chân thành cảm ơn :)
P/S: code C càng tốt ạ ^^
Em đang làm dự án về LED matrix, dùng loại 5x7. Việc hiển thị kí tự ra thì em đã làm được, tuy nhiên, em gặp chút khó khăn trong việc cho LED SÁNG DẦN từ LED 1 đến LED 35 sau mỗi 150ms (xem hình đính kèm). Em đã làm như sau:
- Cho LED1 sáng
- Cho LED1 và LED2 cùng sáng
...
- Cho LED1,2,3,4,5 cùng sáng (lúc này 5 LED sáng dần sau mỗi 150ms, OK, chưa có vấn đề gì)
- Problem: Bật LED thứ 6 sáng (LED này nằm ở hàng 2 cột 1, trong khi yêu cầu là 5 LED trước đó vần sáng). Em cho việc quét 5 LED 1-5 lặp lại đúng 150ms để bật LED 6, lúc này có vẻ ... ổn.
- Khi bật đến LED 13 (làm tương tự trên) thì trình dịch báo lỗi "ROM space error". Em ko hiểu là cho quá nhiều vòng lặp for lồng vào nhau sẽ sinh ra code quá nhiều hay vì trình dịch chọn page bộ nhớ ko được??? Theo em tính toán thì mỗi lần quét 1 LED chỉ tốn cao lắm là vài chục từ nhớ.
==> Mong các cao thủ chỉ em giải thuật nào hay và hiệu quả hơn để em giải quyết bài toán này ạh.
Chân thành cảm ơn :)
P/S: code C càng tốt ạ ^^