PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > MPASM

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

MPASM Lập trình bằng hợp ngữ là một việc làm vô cùng vất vả, tuy nhiên, để hiểu và làm việc với vi điều khiển, hợp ngữ trở thành một công cụ khá đắc lực ...

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 08-09-2008, 07:54 PM   #1
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi linhtdh1k49 View Post
Em đã chỉnh configurations bit trong mục configure của MPLAB cho watchdog timer vì nó cứ reset VDK sau một thời gian. Tuy nhiên disabled rồi mà vẫn thấy VDK bị reset trong proteus
Hiện em đang dùng proteus 7.2 SP0 và MPLAB C18 3.11 trial. Dịch ra file hex vẫn bình thường, chạy trên proteus bình thường, nhưng sau 1 khoảng thời gian nó lại tự reset vi điều khiển (cảnh báo ở simulation log).
Mong các anh giúp đỡ cái ! có cách nào disable cái watchdog timer trong MPLAB C18 không (vì em biết trong CCS có thể làm bằng lệnh NOWDT)
Bạn hãy đưa code của bạn lên. Có nhiều lý do khiến vi điều khiển bị reset, và viết code không ổn là 1 lý do.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-09-2008, 07:51 PM   #2
linhtdh1k49
Nhập môn đệ tử
 
linhtdh1k49's Avatar
 
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Hà Nội
Bài gửi: 7
:
Send a message via Yahoo to linhtdh1k49
Reset VDK_Watchdog TImer_Có lợi hay hại !?????

Trích:
Nguyên văn bởi namqn View Post
Bạn hãy đưa code của bạn lên. Có nhiều lý do khiến vi điều khiển bị reset, và viết code không ổn là 1 lý do.

Thân,
//
// Hello Embedded World
// Version 2
// Hardware : PIC18F1220
//
#include "p18f1220.h"
main()
{
TRISA = 0;
while(1) {
PORTA = 0xffff;
}
}

Như anh Nam và mọi người thấy, đoạn code này cực kì đơn giản. Nếu em lập trình bên CCS thì không hề có hiện tượng reset VDK . Còn với MPLAB này thì cứ sau một khoảng thời gian thì nó tự động reset.
Đọc hướng dẫn của MPLAB thì nó nói phải vào Configure --> Configuration Bits --> Disable Watchdog timer --> em đã làm như hình vẽ.
Nhưng kết quả vẫn vậy
Bi h em đang phải làm việc với CCS, tuy nhiên em rất trăn trở vấn đề này. MPLAB cũng cho phép ta mô phỏng, nhưng khi kết hợp được với Proteus là tốt nhất. Mong các anh PVN giúp đỡ
Hình Kèm Theo
File Type: jpg Untitled 1.jpg (122.5 KB, 11 lần tải)
File Type: jpg Untitled 2.jpg (31.8 KB, 509 lần tải)
File Type: jpg Untitled 3.jpg (72.4 KB, 10 lần tải)
linhtdh1k49 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 17-09-2008, 08:19 PM   #3
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi linhtdh1k49 View Post
//
// Hello Embedded World
// Version 2
// Hardware : PIC18F1220
//
#include "p18f1220.h"
main()
{
TRISA = 0;
while(1) {
PORTA = 0xffff;
}
}

Như anh Nam và mọi người thấy, đoạn code này cực kì đơn giản. Nếu em lập trình bên CCS thì không hề có hiện tượng reset VDK . Còn với MPLAB này thì cứ sau một khoảng thời gian thì nó tự động reset.
Đọc hướng dẫn của MPLAB thì nó nói phải vào Configure --> Configuration Bits --> Disable Watchdog timer --> em đã làm như hình vẽ.
Nhưng kết quả vẫn vậy
Bi h em đang phải làm việc với CCS, tuy nhiên em rất trăn trở vấn đề này. MPLAB cũng cho phép ta mô phỏng, nhưng khi kết hợp được với Proteus là tốt nhất. Mong các anh PVN giúp đỡ
Với chương trình đơn giản của bạn, tôi thường viết như sau:
Code:
#include	<p18cxxx.h>

//Configuration bits
#pragma config OSC = HS
#pragma config FSCM = OFF
#pragma config IESO = OFF
#pragma config PWRT = OFF
#pragma config BOR = ON
#pragma config BORV = 27
#pragma config WDT = OFF
#pragma config WDTPS = 32768
#pragma config MCLRE = ON
#pragma config STVR = ON
#pragma config LVP = OFF
#pragma config DEBUG = OFF
#pragma config CP0 = OFF
#pragma config CP1 = OFF
#pragma config CPB = OFF
#pragma config CPD = OFF
#pragma config WRT0 = OFF
#pragma config WRT1 = OFF
#pragma config WRTB = OFF
#pragma config WRTC = OFF
#pragma config WRTD = OFF
#pragma config EBTR0 = OFF
#pragma config EBTR1 = OFF
#pragma config EBTRB = OFF

//Main program
void main(void)
{
	TRISA = 0;
	while(1) {
		LATA = 0xFF;
	}
}
Tôi thường xuyên xác định tường minh giá trị cho các từ cấu hình, để đảm bảo không có điều gì bất thường trong cấu hình của chip khi thử nghiệm. Bạn thử tạo một project mới với code ví dụ trên (chọn PIC được dùng là PIC18F1220 khi tạo project), biên dịch và nạp vào Proteus xem WDT còn tác động reset PIC nữa hay không.

Ở hình minh họa thứ ba mà bạn đã post, tôi chú ý rằng checkbox "Configuration Bits set in code" vẫn được chọn, như vậy bạn sẽ không thể thay đổi các thiết lập cấu hình trong MPLAB.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-09-2008, 05:40 PM   #4
linhtdh1k49
Nhập môn đệ tử
 
linhtdh1k49's Avatar
 
Tham gia ngày: Sep 2008
Nơi Cư Ngụ: Hà Nội
Bài gửi: 7
:
Send a message via Yahoo to linhtdh1k49
Cảm ơn anh namqn rất rất nhiều ! sau khi copy đoạn code cấu hình của anh vào , em không thấy hiện tượng watchdog timer nữa ! còn cái configuration bits set in code thì : nếu không có đoạn mã của anh thì kể cả có bỏ chọn hay chọn thì nó vẫn có hiện tượng đó .... cũng hơi khó hiểu vì nó nghĩa là "các bit cấu hình được thiết lập trong đoạn code" tức là nếu chọn thì việc cấu hình sẽ được thực hiện trong đoạn code chúng ta viết, còn nếu bỏ chọn thì việc cấu hình sẽ là trực tiếp trong tab setting --> disabled.......
Dù sao cũng cảm ơn anh Nam, giải quyết được điều này thì việc mô phỏng đỡ hơn nhiều rồi ạ !!!!
linhtdh1k49 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
Dịch MPLAB nhh Chương trình dịch & các công cụ mô phỏng 76 28-02-2025 03:02 PM
Sử dụng MPLab thanhphongltv MPASM 32 01-01-2011 09:54 AM
Hỏi về MPLAB chipchipvn Những câu hỏi thường gặp 26 03-08-2010 07:58 PM
Thông tin cập nhật về MPLAB (Upd 15/06/2006) falleaf Chương trình dịch & các công cụ mô phỏng 11 09-11-2007 08:00 PM
Hoi ve Mplab Luanquangnam Đóng góp ý kiến 1 12-12-2005 04:21 PM


Múi giờ GMT. Hiện tại là 04:43 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam