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 19-10-2006, 09:25 PM   #1
anhquangngai
Đệ tử 2 túi
 
Tham gia ngày: Sep 2006
Bài gửi: 33
:
cấu hình cho Pic trong MPLAB

các anh có thể giúp em về các lệnh config cho PIC dc ko?
như ý nghĩa của các lệnh _HS_OSC, _XT_OSC,.............
anhquangngai vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-10-2006, 10:05 PM   #2
phamthaihoa
Đệ tử 3 túi
 
Tham gia ngày: Jun 2005
Bài gửi: 56
:
Trích:
Nguyên văn bởi anhquangngai View Post
các anh có thể giúp em về các lệnh config cho PIC dc ko?
như ý nghĩa của các lệnh _HS_OSC, _XT_OSC,.............
Những lệnh này cấu hình cho PIC sử dụng loại thạch anh nào,
XT_OSC nếu bạn dùng loại thạch anh <=8Mhz còn HS_OSC cho loại >8Mhz.
phamthaihoa vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 21-10-2006, 05:29 AM   #3
ami
Đệ tử 9 túi
 
ami's Avatar
 
Tham gia ngày: Jul 2005
Nơi Cư Ngụ: Grenoble - FRANCE
Bài gửi: 38
:
Để tìm hiểu CONFIG trong MPASM bạn có thể vào mục help của MPLAB và tra cưú config. Mình xin liệt kê một số config ở dưới đây:

CP: Code Protect : có khóa chương trình, không cho đọc ngược lại file .hex
PWRTE: Power-up Timer Enable.: đại khái là cài chế độ nguồn, đặt off là default

WDT: Watch Dog Time dùng đề tự reset lại PIC sau 1 thời gian nhát định
BODEN: Brown on Power - tức là đặt chế độ nguồn xám (coi tính năng này trong datasheet bạn nhé)
CPD: ... DATA EEPROM OPERATION DURING CODE PROTECT
MCLRE_OFF: đối với vài con PIC 12Fxxx, chan reset cũng đồng thời là một chân chức năng, do đó config này dùng để xác định đó là chân reset(ON) hay là chân chức năng (OFF)
INTRC_OSC: sử dụng dao động nội hay không ?

Các tính năng cụ thể được mô tả trong datasheet, còn ký hiệu và tên viêt thì trong Help cua MPLAB, khi nào cần bạn cứ mở ra, copy-paste là OK !!!
__________________
Không béo bề ngang thì cũng bổ bề dọc
Không bổ cho ruột non thì cũng bổ ruột ...
ami vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-09-2008, 07:10 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
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)
linhtdh1k49 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-09-2008, 07:54 PM   #5
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   #6
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   #7
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 17-09-2008, 08:40 AM   #8
bien_van_khat
...Damned...
 
bien_van_khat's Avatar
 
Tham gia ngày: Apr 2006
Nơi Cư Ngụ: Hồ Chí Minh
Bài gửi: 522
:
Bạn nên upload file hex chạy lỗi lên, nhìn đoạn code cũng như cách bạn cấu hình chẳng đoán được gì cả.
__________________
- Xin đọc trước khi post bài

Xin đặt code trong thẻ [ code ] [ /code ]
bien_van_khat vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-09-2008, 02:55 PM   #9
dieulucky2008
Nhập môn đệ tử
 
Tham gia ngày: Aug 2008
Bài gửi: 1
:
các bác ơi em mới cài xong mplab tools 8.0 nhưng ko biết cách sử dụng bác nào có tài liệu hướng dẫn post lên giúp em
.Em xin chân thành cảm ơn
dieulucky2008 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 69 18-07-2021 10:05 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à 07:02 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