Anh chị nào biết rồi chỉ em với. Để lập trình cho led 7 thanh, led matrix,..... chúng ta thường sử dụng thư viện bảng DB hay DW. Nhưng chỗ này em bị mắc vẫn chưa làm ra được. Anh chị chỉ em với. Theo em biết thì có thanh ghi Z là thanh ghi con trỏ dữ liệu và con trỏ chương trình. Và trong việc sử dụng trong bảng DB thì nó có tác dụng trỏ tới vùng địa chỉ trong bộ nhớ chương trình để lấy dữ liệu và nạp giá trị đó vào 1 trong 32 thanh ghi RF(ATMega16)
em sử dụng lệnh
LPM R10,Z+
Ví dụ em có bảng DB sau
ILOVEYOU:
.DB $54,$32,$21,$05 ; CÁC GIÁ TRỊ NÀY CHỈ LẤY VÍ DỤ THÔI
ret
Bây giờ thì làm thế nào để lấy dữ liệu từ bảng DB ILOVEYOU đây hả các anh
. Em thì đã làm qua 8051 thì nó chỉ cần dùng lệnh
mov dptr,ILOVEYOU
là được rồi, còn ở AVR thì em thấy có lệnh
LDI R31, HIGH(ILOVEYOU)
LDI R30, LOW(ILOVEYOU)
MÀ giá trị được nập vào R31, R30 là địa chỉ hay nội dung đầu của bảng DB hả các anh. Em đang bị loạn vì kiến thức nền tảng không có nên mong anh chị nào biết thì bảo em với. Cảm ơn anh chị trươdc nha
em sử dụng lệnh
LPM R10,Z+
Ví dụ em có bảng DB sau
ILOVEYOU:
.DB $54,$32,$21,$05 ; CÁC GIÁ TRỊ NÀY CHỈ LẤY VÍ DỤ THÔI
ret
Bây giờ thì làm thế nào để lấy dữ liệu từ bảng DB ILOVEYOU đây hả các anh
. Em thì đã làm qua 8051 thì nó chỉ cần dùng lệnh
mov dptr,ILOVEYOU
là được rồi, còn ở AVR thì em thấy có lệnh
LDI R31, HIGH(ILOVEYOU)
LDI R30, LOW(ILOVEYOU)
MÀ giá trị được nập vào R31, R30 là địa chỉ hay nội dung đầu của bảng DB hả các anh. Em đang bị loạn vì kiến thức nền tảng không có nên mong anh chị nào biết thì bảo em với. Cảm ơn anh chị trươdc nha
Comment