UNI-DS6是 mikroElektronika 的通用開發(fā)板,可用于測(cè)試各種微控制器,包括PIC,AVR,dsPIC,ARM和8051。我將使用該板使自己了解Microchip的dsPIC數(shù)字信號(hào)控制器(DSC)。 dsPIC DSC是16位高性能微控制器,比常規(guī)的PIC器件功能更強(qiáng)大。它們之所以特別,是因?yàn)樗鼈儗⑽⒖刂破鞯淖罴压δ芘c數(shù)字信號(hào)處理器(DSP)的計(jì)算能力結(jié)合在一起,并且能夠執(zhí)行涉及傅立葉變換的復(fù)雜數(shù)學(xué)運(yùn)算。我將首先簡要介紹UNI-DS6電路板的功能,然后編寫“ Hello World ”應(yīng)用程序以使用dsPIC30F6014A DSC測(cè)試該電路板。
mikroElektronika的UNI-DS6開發(fā)板
什么是UNI-DS6?
UNI-DS6是mikroElektronika的最新版本的通用開發(fā)板,目前支持8種不同的微控制器,分別是PIC16F887,PIC18F8520,dsPIC30F6014A,Atmega128,CY8C27643,LPC2148,LPC2214和AT89S8253。每個(gè)微控制器都有一個(gè)單獨(dú)的mikroBoard,可以將其插入主開發(fā)板上可用的2×80引腳插座中,以便您可以在選擇的微控制器上進(jìn)行實(shí)驗(yàn),而開發(fā)板的其余部分保持不變。每個(gè)mikroBoard都包含一個(gè)板上編程器,因此不需要外部編程器。該開發(fā)板具有完整的功能,包括穩(wěn)壓電源(可選+ 5.0/3.3 V),使用MCP3204的外部12位ADC通道,支持USB-UART的板載FTDI芯片,USB連接器,串行EEPROM,標(biāo)準(zhǔn)字符LCD插座,具有觸摸屏支持的GLCD,MMC/SD卡插槽,72個(gè)LED,72個(gè)輕觸開關(guān)等。如果您想了解有關(guān)UNI-DS6功能的更多信息,可以閱讀用戶手冊(cè)。下圖顯示了插入了dsPIC30F6014A mikroBoard的UNI-DS6板和其他一些附件。
插入了dsPIC30F6014A mikroboard的UNI-DS6
div》
關(guān)于dsPIC30F mikroBoard
此mikroBoard包含帶有板載USB編程器的dsPIC30F6014A DSC。 dsPIC30F6014A是具有144 KB閃存程序存儲(chǔ)器的16位DSC。為了使用板載編程器對(duì)DSC進(jìn)行編程,您需要在PC上安裝mikroProg Suite for PIC應(yīng)用程序。您可以從此處下載具有必要驅(qū)動(dòng)程序的此應(yīng)用程序。請(qǐng)參閱mikroElektronika的安裝手冊(cè)來安裝USB驅(qū)動(dòng)程序。 mikroBoard也可以用作獨(dú)立設(shè)備(不帶UNI-DS6板)。 mikroBoard上提供了一個(gè)跳線(J1)以選擇此選項(xiàng)。作為獨(dú)立設(shè)備,該板可直接通過USB電纜供電。如下所示的dsPIC30F6014A mikroBoard的特寫照片揭示了它的一些功能。
用于UNI-DS6的dsPIC30F6014A mikroboard
We在即將到來的教程中,將更多地探索dsPIC30F6014A的功能?,F(xiàn)在,我們將為dsPIC30F6014A編寫一個(gè)簡單的測(cè)試程序,以確保所有設(shè)置均正確。下面的“ Hello World”程序是使用 mikroC Pro for dsPIC30/33 為dsPIC30F6014A編寫和編譯的。 DSC使用內(nèi)部PLL(8x)和外部10.0 MHz晶振配置為以80 MHz運(yùn)行??梢酝ㄟ^ Project-》 Edit Project 窗口完成 mPICroC Pro for dsPIC30/33 中的配置位設(shè)置(類似于mikroC Pro for dsPIC30/33)。 PIC)。該程序依次打開和關(guān)閉dsPIC30F6014A的PORTA,PORTB,PORTC,PORTD,PORTF和PORTG上連接的LED。
/* 》 “Hello world” program for dsPIC30F6014A (UNI-DS6 board)
Test configuration:
MCU: dsPIC30F6014A
Dev.Board: UNI-DS6
Oscillator: XT-PLL8, 10.000MHz x 8 = 80 MHz
*/
void main() {
ADPCFG = 0xFFFF; // Configure AN pins as digital I/O
TRISA = 0; // Initialize PORTA as output
TRISB = 0; // Initialize PORTB as output
TRISC = 0; // Initialize PORTC as output
TRISD = 0; // Initialize PORTD as output
TRISF = 0; // Initialize PORTF as output
TRISG = 0; // Initialize PORTG as output LATA = 0; // Set PORTA to zero
LATB = 0; // Set PORTB to zero
LATC = 0; // Set PORTC to zero
LATD = 0; // Set PORTD to zero
LATF = 0; // Set PORTF to zero
LATG = 0; // Set PORTG to zero
while(1) {
LATA = ~LATA;
Delay_ms(300);
LATA = ~LATA;
LATB = ~LATB;
Delay_ms(300);
LATB = ~LATB;
LATC = ~LATC;
Delay_ms(300);
LATC = ~LATC;
LATD = ~LATD;
Delay_ms(300);
LATD = ~LATD;
LATF = ~LATF;
Delay_ms(300);
LATF = ~LATF;
LATG = ~LATG;
Delay_ms(300);
LATG = ~LATG;
}
}
對(duì)dsPIC進(jìn)行編程
用于dsPIC30F6014A的mikroBoard確實(shí)具有板載編程器,您需要安裝mikroProg Suite您的PC上的PIC應(yīng)用程序軟件可以對(duì)其進(jìn)行操作。 請(qǐng)記住,用于PIC的mikroProg套件是通過mikroBoard本身的mini USB端口而不是通過UNI-DS6板上的任何USB端口與板上編程器通信的。 。我建議按照以下步驟為dsPIC設(shè)置板上編程器。
首先,從此處下載適用于dsPIC30/33編譯器的mikroC Pro,并將其安裝在您的PC。
安裝完成后,它將詢問您是否要安裝mikroProg Suite for PIC。同意,然后也安裝它。
下一步,它將詢問您是否要安裝 mikroProg 的驅(qū)動(dòng)程序程序員。說是,然后選擇適合您的操作系統(tǒng)的驅(qū)動(dòng)程序,然后安裝它。就是這樣。
成功完成上述三個(gè)步驟后,您的PC均已設(shè)置好,可以編寫應(yīng)用程序,對(duì)其進(jìn)行編譯并將HEX文件傳輸?shù)絛sPIC30F6014A。 dsPIC30/33的mikroC Pro中的編寫和編譯程序與PIC的mikroC Pro中的編寫和編譯程序相似。如果您對(duì)此不熟悉,請(qǐng)閱讀“ 實(shí)驗(yàn)1:LED閃爍”。成功編譯程序后,通過USB電纜將mikroBoard連接到PC,然后從mikroC Pro for dsPIC30/33應(yīng)用程序窗口中選擇 Tools-》 mE Programmer 。這將自動(dòng)打開mikroProg Suite for PIC應(yīng)用程序,以將HEX文件傳輸?shù)絛sPIC30F6014A。
單擊mE編程器鏈接將自動(dòng)啟動(dòng)mikroProg Suite
一旦加載了測(cè)試程序,則需要打開其他端口的LED開關(guān)??梢酝ㄟ^UNI-DS6板上的開關(guān)SW12來完成。將SW12的開關(guān)1到6滑動(dòng)到ON位置(如下所示)。
用于將LED連接到dsPIC端口的開關(guān)
dsPIC30F6014A將運(yùn)行測(cè)試程序,您將看到連接到不同端口的LED依次點(diǎn)亮和熄滅。請(qǐng)記住,dsPIC30F6014A具有六個(gè)16位端口(PORT A,B,C,D,F(xiàn)和G),以及總共68個(gè)I/O引腳。這意味著并非所有端口都可以完全訪問16位。例如,在dsPIC30F6014A器件中,PORTF(實(shí)際上是16位)只有9個(gè)引腳可訪問(RF0至RF8)。因此,對(duì)于不完整的端口,您將看不到所有LED發(fā)光。
連接到端口A,B,C,D,F(xiàn)和G的LED依次打開
UNI-DS6開發(fā)板的局限性
盡管該板被描述為通用開發(fā)板,但它確實(shí)有一些限制。在開發(fā)板的右側(cè),有十一個(gè)10針公頭連接器連接到微控制器I/O端口。它們分別命名為PORTA(8位),PORTB(8位),PORTC(8位),PORTD(8位),PORTE(8位),PORTF1(8位,RF0-RF7), PORTF2(RF8-RF15),PORTG1(8位,RG0-RG7),PORTG2(RG8-RG15),PORTH(8位)和PORTJ(8位)。每個(gè)連接器包括8個(gè)端口引腳,一條Vcc線和一個(gè)Gnd引腳。根據(jù)插入U(xiǎn)NI-DS6板上的mikroBoard的類型,可以通過這些連接器訪問相應(yīng)的I/O端口。這種安排對(duì)帶有8位微控制器的mikroBoard來說效果很好,因?yàn)樗梢栽L問所有I/O引腳。但是,對(duì)于具有16位I/O端口的dsPIC30F6014A,它不提供對(duì)所有端口引腳的訪問。例如,在UNI-DS6板上似乎無法訪問PORTB的RB8至RB15引腳。同樣,PORTD引腳的一半缺失。此外,板上的LED和輕觸開關(guān)均無法連接到這些引腳。因此,如果您想使用dsPIC進(jìn)行強(qiáng)大的開發(fā),我建議您購買dsPIC專用的開發(fā)板,例如dsPICPRO4。這將為您提供訪問dsPIC單片機(jī)的所有I/O端口的完全靈活性。但是,如果您的首選是8位微控制器,并且希望將16位dsPIC作為附加功能,那么此開發(fā)板是一個(gè)不錯(cuò)的選擇。所以這是一個(gè)權(quán)衡。我不會(huì)抱怨UNI-DS6板,因?yàn)閷?duì)我而言,獲得該板的主要原因是為PIC16F887和Atmega128微控制器開發(fā)應(yīng)用,它們的性能非常好。 dsPIC DSC是我的第二優(yōu)先選擇,我很滿意能在同一塊板上獲得支持,而不是全部但基本上是。
責(zé)任編輯:wv
-
開發(fā)板
+關(guān)注
關(guān)注
25文章
5093瀏覽量
97802
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論