PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > dsPIC - Bộ điều khiển tín hiệu số 16-bit

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

dsPIC - Bộ điều khiển tín hiệu số 16-bit Theo dự kiến của Microchip, vào khoảng năm 2011 dsPIC sẽ có doanh số lớn hơn PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 03-03-2008, 07:11 PM   #12
ajack
Nhập môn đệ tử
 
Tham gia ngày: Jan 2008
Bài gửi: 6
:
mình đã config cho dsPIC chạy ở chế độ 16 MPIs như sau:
Code:
_FOSCSEL(FNOSC_FRC);   // Select Internal FRC at POR
_FOSC(FCKSM_CSECMD & OSCIOFNC_OFF & POSCMD_XT);   // Enable Clock Switching and Configure POSC in XT mode
_FWDT(FWDTEN_OFF);   // Disable Watchdog Timer

int main (void)
{
             // Configure PLL prescaler, PLL postscaler, PLL divisor
	PLLFBD = 62;			// M = 64
	CLKDIVbits.PLLPOST = 1;	// N2 = 4	N2 = 2 x (PLLPOST+1)
	CLKDIVbits.PLLPRE = 2;	// N1 = 4	N1 = PLLPRE + 2

	// Fosc calculation equation:
	// Fosc = Fin x M/(N1+N2) = 8x64/(4x4) = 32MHz
	// Fcy = 0.5Fosc = 16MIPs

/******* Clock Switching *******/
	// Set New Oscillator Selection
	__builtin_write_OSCCONH(3);

	// Request Clock Switching by Setting OSWEN bit
	__builtin_write_OSCCONL(1);

	// Wait for Clock switch to occur
	while(OSCCONbits.LOCK != 1);
...
}
tại vì trong datasheet của dsPIC33F, mình thấy nó ghi là không nên thay đổi những thông số của PLL, nên để lúc đầu là internal FRC rồi chỉnh thông số, rồi sau đó hãy chuyển sang PriO w/ PLL
Nhưng bạn thấy trên phần init_Timer1 của mình intialize như vậy thì đúng là nếu như dsPIC chạy ở 16 MIPs thì timer sẽ interrupt ở 1ms chứ?
Hơn nữa, đây là intterupt trong timer1 để mình kiểm tra:
Code:
// Timer 1 Interrupt Routine
void __attribute__((__interrupt__)) _T1Interrupt( void )
{
	_count++;
	home_it();
	line_2();
	LATAbits.LATA4 = ~LATAbits.LATA4;
	if ( _count==1000 ) 
	{
		_count = 0;
		LATAbits.LATA5 = ~LATAbits.LATA5;   // PORTA.5 nối với đèn LED
	}

	IFS0bits.T1IF = 0;			// Clear Timer 1 flag
}
đáng lý ra thì cứ phải 1s là đèn LED sẽ nhấp nháy, vậy mà chắc cũng 10s...
ajack vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 

Tags
assembly language, led, stack


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
Học CCS thông qua Tutorial PICVIETNAM FFGmember Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) 105 08-09-2017 04:12 PM
dsPIC Tutorial 3-Đọc ngõ vào và giao tiếp LCD namqn dsPIC - Bộ điều khiển tín hiệu số 16-bit 92 19-02-2017 11:15 PM
dsPIC Tutorial 5-Module ADC và MCPWM namqn dsPIC - Bộ điều khiển tín hiệu số 16-bit 83 12-09-2013 10:33 PM
dsPIC Tutorial 1-Tạo và biên dịch một project (ASM30) namqn dsPIC - Bộ điều khiển tín hiệu số 16-bit 16 22-08-2012 12:35 AM
dsPIC Tutorial 4-Module UART và I2C namqn dsPIC - Bộ điều khiển tín hiệu số 16-bit 76 09-05-2012 10:55 AM


Múi giờ GMT. Hiện tại là 09:04 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