unisa
31-10-2010, 10:51 AM
Chả là mình đang làm đồ án có giao tiếp với LCD, mình dùng các câu lệnh sau để giao tiếp LCD cho dễ quản lý
TXT_REPASS
ADDWF PCL,1
DT"Retype PASSWORD:",0
TXT_PASS
ADDWF PCL,1
DT"Type PASSWORD: ",0
TXT_WRONGPASS
ADDWF PCL,1
DT"Login failed ! ",0
TXT_TIMES
ADDWF PCL,1
DT"You have 4 times",0
TXT_RIGHTPASS
ADDWF PCL,1
DT"Login successful",0
TXT_1UNCLOCK
ADDWF PCL,1
DT"[1] Unlock ",0
TXT_2CHANGEPASS
ADDWF PCL,1
DT"[2] Change Pass ",0
TXT_Unlocking
ADDWF PCL,1
DT" Unlocking ! ",0
TXT_LOCKED
ADDWF PCL,1
DT"System Locked ! ",0
TXT_DONTMATH
ADDWF PCL,1
DT"Pass donnot math",0
Tuy nhiên, khi mình sử dụng thì call những dòng đầu tốt (VD call TXT_PASS ...) nhưng khi call những dòng cuối TXT_LOCKED ... thì dịch tốt nhưng khi chạy mô phỏng, Proteus báo lỗi:
Stack overflow executing CALL instuction
Stack underflow executing RETURN instruction
mình nghĩ là do lệnh CALL những dòng dưới vượt quá giới hạn, theo datasheet
CALL k với 0< k < 2047
Mình đang vướng ở đây chưa biết giải quyết làm sao, mình làm rất nhiều câu thông báo hiển thị trên LCD nhưng mới được mấy cau đã báo lỗi thế này. Mong các bạn hướng dẫn cách giải quyết giúp mình với.
Thanks mọi người nhiều nha :o
TXT_REPASS
ADDWF PCL,1
DT"Retype PASSWORD:",0
TXT_PASS
ADDWF PCL,1
DT"Type PASSWORD: ",0
TXT_WRONGPASS
ADDWF PCL,1
DT"Login failed ! ",0
TXT_TIMES
ADDWF PCL,1
DT"You have 4 times",0
TXT_RIGHTPASS
ADDWF PCL,1
DT"Login successful",0
TXT_1UNCLOCK
ADDWF PCL,1
DT"[1] Unlock ",0
TXT_2CHANGEPASS
ADDWF PCL,1
DT"[2] Change Pass ",0
TXT_Unlocking
ADDWF PCL,1
DT" Unlocking ! ",0
TXT_LOCKED
ADDWF PCL,1
DT"System Locked ! ",0
TXT_DONTMATH
ADDWF PCL,1
DT"Pass donnot math",0
Tuy nhiên, khi mình sử dụng thì call những dòng đầu tốt (VD call TXT_PASS ...) nhưng khi call những dòng cuối TXT_LOCKED ... thì dịch tốt nhưng khi chạy mô phỏng, Proteus báo lỗi:
Stack overflow executing CALL instuction
Stack underflow executing RETURN instruction
mình nghĩ là do lệnh CALL những dòng dưới vượt quá giới hạn, theo datasheet
CALL k với 0< k < 2047
Mình đang vướng ở đây chưa biết giải quyết làm sao, mình làm rất nhiều câu thông báo hiển thị trên LCD nhưng mới được mấy cau đã báo lỗi thế này. Mong các bạn hướng dẫn cách giải quyết giúp mình với.
Thanks mọi người nhiều nha :o