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 Tìm Kiếm Bài Trong Ngày Ðánh Dấu Ðã Ðọc 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

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 11-11-2009, 08:41 AM   #46
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 harakiri View Post
Trong datasheet của dsPIC33FJxxGP trong phần chân Digital viết
-Output pins can drive from 3.0V to 3.6V
-All digital input pins are 5V tolerant
Em hiểu là nếu là input thì khi dùng các chân này là chân digital ta có thể cung cấp tới mức volt là 5V để có mức logic 1. Liệu có đúng không ạ?
5 V tolerant có nghĩa là chịu đựng được tới 5 V mà không bị hỏng. Ngưỡng logic của ngõ vào phụ thuộc vào VDD (vì đây dsPIC33F là vi mạch dùng công nghệ CMOS).

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 11-11-2009, 10:36 AM   #47
harakiri
Đệ tử 1 túi
 
Tham gia ngày: Sep 2007
Bài gửi: 12
:
Như vậy,nếu như em nối một chân digital nào đó với mức Volt là 5V thì chip vẫn chịu được, tuy nhiên, mức logic trong trường hơp này sẽ không còn đúng nữa, và chip sẽ không nhận được logic là 1?
harakiri vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-11-2009, 10:45 AM   #48
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 harakiri View Post
Như vậy,nếu như em nối một chân digital nào đó với mức Volt là 5V thì chip vẫn chịu được, tuy nhiên, mức logic trong trường hơp này sẽ không còn đúng nữa, và chip sẽ không nhận được logic là 1?
Nếu bạn nối một chân digital (có đặc tính 5 V tolerant) vào một ngõ ra logic có nguồn 5 V thì mức logic '1' không có vấn đề, nhưng mức logic '0' có thể có vấn đề.

Bạn đã học môn học "Kỹ thuật số" chưa?

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 24-11-2009, 12:00 AM   #49
rhinoceros
Đệ tử 1 túi
 
Tham gia ngày: Jul 2007
Bài gửi: 17
:
các huynh cho đệ thỉnh giáo chút về UART.
tình hình là đệ đọc datasheet của thằng dsPIC33FJ256GP510 có mấy bit đệ không hiểu. các huynh chỉ giáo giùm nhé . xin đa tạ trước
Thanh ghi UxMODE
IREN: IrDA® Encoder and Decoder Enable bit . IrDA là cái gì vậy,trong datasheet không nói về cái này.em không hiểu . nếu set bit này lên 1 thì hiện tượng gì xảy ra ?
LPBACK: UARTx Loopback Mode Select bit . bit chọn chế độ lặp lại nghĩa là sao. trong đây thì cái gì sẽ lặp lại ? và lặp lại như thế nào ?
ABAUD: Auto-Baud Enable bit tự động chọn tốc độ truyền nhận , em muốn đặt tốc độ truyền là 9600bps thì nó có tự hiểu không ?
URXINV: Receive Polarity Inversion bit theo em hiểu thì "đảo giá trị nhận được" tức là nó nhận được là LSB -> MSB . thì đảo lại là MSB -> LSB không biết có đúng không ?
ở thanh ghi UxSTA
UTXISEL<1:0>: Transmission Interrupt Mode Selection bits chọn chế độ ngắt truyền .em tưởng cứ truyền xong 1 byte thì ngắt chứ ?
UTXBRK: Transmit Break bit không hiểu !!!
UTXEN: Transmit Enable bit bật kênh truyền . em tưởng khi mà bật bit UARTEN thì cả Rx và Tx đều phải được bật chứ .
ADDEN: Address Character Detect bit không hiểu


thêm chút nữa. đệ không biết tốc độ truyền thì được tính thế nào . giả sử giờ đệ có thạch anh 7.3728MHz , truyền với tốc độ 9600bps thì giá trị thanh ghi UxBRG là bao nhiêu ?

xin cảm ơn.
rhinoceros vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 25-11-2009, 04:42 PM   #50
tahi
Đệ tử 4 túi
 
Tham gia ngày: Mar 2009
Bài gửi: 64
:
Cấu hình chạy với baudrate 19200 đây
Code:
	
unsigned int UxMODEvalue,UxSTAvalue,ubrg;
UxMODEvalue = UART_EN&UART_IDLE_CON&UART_IrDA_DISABLE&UART_MODE_FLOW&				UART_UEN_00&UART_DIS_WAKE&UART_DIS_LOOPBACK&UART_DIS_ABAUD&			UART_UXRX_IDLE_ONE&UART_BRGH_SIXTEEN&UART_NO_PAR_8BIT&UART_1STOPBIT;

UxSTAvalue=UART_INT_TX&UART_IrDA_POL_INV_ZERO&UART_SYNC_BREAK_DISABLED&UART_TX_ENABLE&	UART_TX_BUF_NOT_FUL&UART_INT_RX_CHAR&UART_ADR_DETECT_DIS&UART_RX_OVERRUN_CLEAR;

ubrg = 0x81;
//UART1 configuration			
OpenUART1(UxMODEvalue,UxSTAvalue,ubrg);
//UART1 interrupts
ConfigIntUART1 (UART_RX_INT_DIS&UART_TX_INT_DIS); //disable interrupts
Với UART chắc chỉ quan tâm đến baud rate, parity, data bit
Ngắt hay ko ngắt là tùy bạn cấu hình và tùy vào ứng dụng của bạn. Nếu bạn chỉ dùng mỗi UART thì chẳng cần ngắt, cứ dùng hàm này
Code:
char BusyUART1(void)
{  
    return(!U1STAbits.TRMT);
}
Muốn tính tốc độ thì dựa vào phần
UART BAUD RATE GENERATOR trong section 17 với dspic33F (hoặc để ý chữ refer to section bao nhiêu đó, ở dưới cấu hình các thanh ghi liên quan)
tahi vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 27-02-2010, 11:32 PM   #51
heavenlylove
Nhập môn đệ tử
 
Tham gia ngày: Oct 2008
Bài gửi: 8
:
Smile ADC của dspic33fj12gp202

Trích:
Nguyên văn bởi falleaf View Post
Bài 3: ADC 10/12-bit

Hoạt động ADC của các chip MCHP đều được mô tả như hình sau:


Quá trình lấy mấu ADC được thực hiện thông qua 2 quá trình: Sample (Lấy mẫu) và Conversion (Biến đổi). Quá trình này được mô tả đơn giản bằng việc dsPIC sẽ đóng khóa K để điện áp bên ngoài tích đủ vào một con tụ, sau đó mở khoá K để phân cách với mạch ngoài, và bắt đầu quá trình biến đổi từ Analog thành Digital.

Quá trình biến đổi được mô tả như hình dưới đây:



Vấn đề này quá đơn giản, vậy chúng ta cần tìm hiểu gì?

Chúng ta cần tìm hiểu:
  1. Làm thế nào để cấu hình hoạt động cho Module ADC để nó hoạt động theo ý ta muốn?
  2. Khi nào thì bắt đầu quá trình Sample (lấy mẫu), khi nào thì bắt đầu quá trình Conversion (biến đổi). Có những cách nào để tác động vào quá trình này?
  3. Sau khi chuyển đổi xong, làm thế nào ta lấy được kết quả và bỏ vào một thanh ghi bất kỳ mà ta muốn?

Thực tế là chúng ta muốn thế, nhắm mắt lại và kệ xừ mọi thứ, cái quan trọng là khi kết quả nằm trong một biến nào đó là xong. Người lập trình C lúc nào cũng mong muốn điều này, bởi nếu không thì họ đã lập trình với ASM30 mất rồi. Chúng ta sẽ tìm hiểu ở đây theo kiểu tư duy của người lập trình bằng ngôn ngữ cấp cao, nhưng sẽ hiểu đủ sâu để có thể làm việc với ASM30.

F đặt ra những câu hỏi theo thứ tự tư duy như bên dưới đây:

1. Thời gian Sample (Lấy mẫu) và Conversion (Biến đổi) là bao nhiêu?

Đơn giản cực, đôi khi các bạn không để ý, nhưng nó có ngay trong datasheet. F lấy thí dụ datasheet của dòng dsPIC33FJxxxMCxxx (DS70287A-page 319)





Vậy ở đây xuất hiện thêm một số khái niệm mà sau này để đơn giản, F viết là TAD và Tcy. Mối quan hệ giữa chúng? Làm sao để đặt được? Đây là câu hỏi tiếp theo và chúng ta sẽ giải quyết ngay dưới đây.


(còn tiếp, vì F chưa có thời gian viết xong)

Chúc vui
Anh viết tiếp đi anh. Anh có thể nói kỹ hơn về chuyển đổi tín hiệu am thanh sàng số được không?
heavenlylove vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 23-09-2010, 06:04 PM   #52
minhthaitn
Nhập môn đệ tử
 
Tham gia ngày: Jun 2009
Bài gửi: 3
:
xin lỗi câu hỏi của em ngoài luồng 1 chút ạ, em không nhìn thấy mấy công thức toán học ở bài đầu tiên, nó báo phải cài mimetex.cgi, e dùng firefox rồi, xin các anh hướng dẫn e với ạ,thanks
minhthaitn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 08-11-2010, 02:42 PM   #53
musashi17
Nhập môn đệ tử
 
Tham gia ngày: Sep 2010
Bài gửi: 1
:
Anh F đang viết mọi người hỏi sao không ra topic khác ạ. Anh F viết tiếp đi anh. Cảm ơn anh về bài giảng của anh.
musashi17 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 04-12-2010, 07:25 PM   #54
manhdungmta
Nhập môn đệ tử
 
Tham gia ngày: May 2010
Bài gửi: 10
:
anh Nam cho em hỏi đoạn code sau có gì sai mà không thấy chạy.
em dung C30 cua mplap
////////////////////////////////////////

#include "p33FJ256MC710.h"
_FOSCSEL(FNOSC_PRIPLL & IESO_OFF & TEMP_OFF);
_FOSC(FCKSM_CSDCMD & OSCIOFNC_OFF & POSCMD_XT);
_FWDT(FWDTEN_OFF);
_FPOR(PWMPIN_ON);
_FGS(GCP_OFF);

int i,m;

void init_TMR2();

void init_port()
{
TRISA = 0x0000;
TRISC = 0xFFFF;
LATA = 0x0000;
}

void init_TMR2() /*______ ham khoi tao timer va ngat______*/
{
TMR2 = 0; //Xoa so dem trong TMR2
PR2 = 2; //Dat nguong ngat
_T2IF = 0; //Xoa co ngat cua Timer 2
_T2IE = 1; //Cho phep ngat Timer 2
T2CON = 0x8002; //dung TCK dem
}

void _ISR _T2Interrupt() /*______ ham ngat______*/
{
_T2IF = 0; //Xoa co ngat
LATA++;
}

int main()
{
_PLLDIV=38; // M=40
_PLLPRE=0; // N1=2
_PLLPOST=0; // N2=2
init_port();
init_TMR2();
while(1)
{}
}
manhdungmta vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 04-12-2010, 07:51 PM   #55
ak47
Đệ tử 2 túi
 
Tham gia ngày: Jun 2010
Bài gửi: 29
:
Trích:
Nguyên văn bởi manhdungmta View Post
anh Nam cho em hỏi đoạn code sau có gì sai mà không thấy chạy.
em dung C30 cua mplap
////////////////////////////////////////

#include "p33FJ256MC710.h"
_FOSCSEL(FNOSC_PRIPLL & IESO_OFF & TEMP_OFF);
_FOSC(FCKSM_CSDCMD & OSCIOFNC_OFF & POSCMD_XT);
_FWDT(FWDTEN_OFF);
_FPOR(PWMPIN_ON);
_FGS(GCP_OFF);

int i,m;

void init_TMR2();

void init_port()
{
TRISA = 0x0000;
TRISC = 0xFFFF;
LATA = 0x0000;
}

void init_TMR2() /*______ ham khoi tao timer va ngat______*/
{
TMR2 = 0; //Xoa so dem trong TMR2
PR2 = 2; //Dat nguong ngat
_T2IF = 0; //Xoa co ngat cua Timer 2
_T2IE = 1; //Cho phep ngat Timer 2
T2CON = 0x8002; //dung TCK dem
}

void _ISR _T2Interrupt() /*______ ham ngat______*/
{
_T2IF = 0; //Xoa co ngat
LATA++;
}

int main()
{
_PLLDIV=38; // M=40
_PLLPRE=0; // N1=2
_PLLPOST=0; // N2=2
init_port();
init_TMR2();
while(1)
{}
}
Chào!
Chương trình của cậu có một số lỗi như sau:
-Khai báo cấu hình sai:TEMP_OFF không được định nghĩa trong file .h của dspic33FJ256MC710.(test chương trình đơn giản không cần khai báo nhiều thế đâu!)
-Hàm ngắt Timer2 có nhiều cách khai báo nhưng mà nên để ý tới cái psv.Nên xác định rõ psv hay auto_psv để bỏ hẳn cái warning đáng ghét đi (không cũng không sao!)
-Mình không mang mạch theo nên không debug cho cậu được.Cậu thử xem thế nào nhé

thay đổi nội dung bởi: ak47, 04-12-2010 lúc 07:56 PM.
ak47 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 05-12-2010, 07:13 PM   #56
manhdungmta
Nhập môn đệ tử
 
Tham gia ngày: May 2010
Bài gửi: 10
:
cảm ơn anh!
em thấy trong file dspic33FJ256MC710.h đã định nghĩa TEMP_OFF rồi chứ ạ.
mà em bỏ đi hay thêm vào cái đó cũng không sao cả, nó vẫn không chạy.
trước đó em có viết ct ngắt timer dùng dao động nội thì chạy tốt
chương chình này chỉ khác là em dùng dao động bên ngoài qua TCK
nên em nghĩ hai ct chỉ khác nhau ở điểm: đối với dao động nội cần khai báo T2CON = 0x8000 còn với dao động qua TCK thì khai báo T2CON = 0x8002.
không biết chỉ thế là đủ chưa, mong anh giúp đỡ.
manhdungmta vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-12-2010, 12:26 AM   #57
manhdungmta
Nhập môn đệ tử
 
Tham gia ngày: May 2010
Bài gửi: 10
:
ai có thể chỉ cho mình được không?????
hay chắc là do phần cứng nhỉ.????
manhdungmta vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 12-12-2010, 08:56 PM   #58
thanh000
Nhập môn đệ tử
 
Tham gia ngày: Apr 2009
Bài gửi: 9
:
anh F ơi, viết tiếp đi anh, đang hay mà lâu rồi ko thấy gì nữa vậy ???
__________________
Lưu Nghĩa Thành
Phone: 0944 799 452
Email: thanh.nghia89@yahoo.com.vn
thanh000 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 01-08-2011, 05:08 PM   #59
nckh
Nhập môn đệ tử
 
Tham gia ngày: Mar 2011
Bài gửi: 1
:
có mem nào có tài liệu dsPIC33F Family Reference Manual mà có phần về dspic33FJ12MC201/202 chỉ e với. trên http://www.microchip.com có dsPIC33F FRM nhưng mà thiếu mất Part II ( phần danh cho con dspic33FJ12MC201/202 ) ??
nckh vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 11-10-2011, 10:32 PM   #60
thanh_30april
Nhập môn đệ tử
 
Tham gia ngày: Jan 2010
Bài gửi: 9
:
Tiếp đi các anh ơi,em cũng đang tìm hiểu
thanh_30april vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời

Tags
configuration, dspic30f, dspic33f

Ðiều Chỉnh
Xếp Bà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


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