Jerry
16-08-2007, 04:16 PM
Tớ thử viết 1 chương trình bằng hợp ngữ cho PIC, chương trình chỉ đơn giản là hiển thị chữ A lên LCD. Modul điều khiển LCD là modul tớ đã viết chuẩn và đã chạy trong một số mạch phần cứng khác mà tớ làm. Tuy nhiên trên thực tế thì màn hình LCD hiển thị chữ A lên trong vài giây rồi lại tắt, rồi lại tiếp tục hiển thị, rồi lại tắt. Cứ nhấp nha nhấp nháy như thế. Tớ cho rằng lý do là phần mềm bị reset. Nhưng nguyên nhân do đâu và cách khắc phục thế nào? Rất cần mọi người giúp đỡ. Chương trình của tớ như sau:
; Các khai báo cần thiết về chân cổng, port... đã thực hiện đúng ở đây
MainProg:
clrwdt
movlw 0x80
call WriteCommand
movlw 'a'
call WriteData
goto MainProg
Tớ định nghĩa các bit cấu hình như sau:
Osscillator: XT
Watchdog timer: on
Power up timer: on
Brown out detect: on
Low voltage program: Disable
Code protect: on
; Các khai báo cần thiết về chân cổng, port... đã thực hiện đúng ở đây
MainProg:
clrwdt
movlw 0x80
call WriteCommand
movlw 'a'
call WriteData
goto MainProg
Tớ định nghĩa các bit cấu hình như sau:
Osscillator: XT
Watchdog timer: on
Power up timer: on
Brown out detect: on
Low voltage program: Disable
Code protect: on