Trích:
Nguyên văn bởi bbaacc01
Dear Mr namqn
// Disable Watch Dog Timer
RCONbits.SWDTEN=0;
Trong đoạn code của em có cái disable watch dog timer mà
Đoạn code chạy tốt thực ra y hệt đoạn này nhưng em không dùng Timer 2+3, mà dùng một timer 2 rồi đếm nhiều lần để đuợc thời gian chớp tắt led thấy được.
Lúc mới power on thì em thấy RCON =0x0000
Sau khi bị reset thì RCON = 0x0093.
Em đọc trên Microchip forum thấy cũng có nhiều nguời bị cái này,
nghe nói là bị address error, (Em nghĩ nếu là address error thì chắc là cấu hình cho MPLAB bị sai, mà cấu hình đúng lại thì làm như thế nào nhỉ )
|
RCON = 0x0093 tương ứng với 4 bit EXTR, WDTO, BOR, và POR của thanh ghi RCON được bật. Cả 4 bit này đều tương ứng với một trạng thái reset nào đó, do vậy khó xác định chính xác nguyên nhân reset từ giá trị của thanh ghi này.
Bạn nên đọc kỹ chú ý 2 trong phần mô tả các bit của thanh ghi RCON, trong datasheet của dsPIC33FJ256MC710. Mục chú ý đó nói rằng, nếu bit cấu hình FWDTEN là unprogrammed (= '1') thì WDT luôn luôn được cho phép, bất chấp trạng thái của bit RCONbits.SWDTEN. Tôi cho rằng bạn đang gặp tình huống này.
Thân,