最近,一個帖子上了熱榜。一位網(wǎng)友在論壇咨詢了關(guān)于入門PIC的技巧,背景是這樣的:
1:8位的PIC,選什么型號來學(xué)比較好?要求這個芯片是近幾年【新推出】的【大眾化】的,有LQFP32以下封裝甚至有PID封裝的。
2:MPLAB IDE ,MPLAB X IDE ,MPLAB XC8 ,它們之間是什么關(guān)系?需要注冊或者購買版權(quán)的嗎?我只會用C語言,我需要安裝什么軟件?
3:需要購買下載線嗎?還是有USB轉(zhuǎn)串口即可下載?仿真工具暫時就不考慮了(如果是一體化的便宜的也可以考慮)。
4:我之前就喜歡玩AVR的ATmega48-88-168,沒有選擇M128來玩是因為覺得它比較老款,而且它沒有LQFP32以下的封裝,再說我也不需要太大的資源
5:最重要的是我不懂得E文,之前的AVR有少量的中文,后來出的基本沒有中文數(shù)據(jù)手冊了,而我這幾天發(fā)現(xiàn)原來PIC【官網(wǎng)】有大量的中文數(shù)據(jù)手冊,而且 MPLAB X IDE 也是中文界面的,既然它對中文這么友好,所有我就想學(xué)一下它。這幾天我還在【芯圣】單片機那里購買了3塊HC89F0541的51系列1T的開發(fā)板,正準(zhǔn)備來玩一下的,突然發(fā)現(xiàn)這個PIC有個中文社區(qū),里面有大量的中文資料,所以,就不想了解HC89F0541了,估計PIC比較可靠是嗎?
另外也想說一下這個HC89F0541芯圣單片機,看【芯圣】資料他家的所有單片機都有一個很好的特色,就是:外設(shè)功能引腳全映射模塊。它允許大部分功能端口可任意映射到任意I/O 端口,比如說UASRT的TXD,RXD,它可以指定由任意的IO腳輸出或者輸入。
熱心的網(wǎng)友是這樣推薦的:
開發(fā)、學(xué)習(xí)PIC單片機要用到以下軟硬件工具:
1. MPLAB IDE 老的集成開發(fā)環(huán)境軟件,這個是所有PIC單片機的開發(fā)平臺,2016年以后推出單片機基本上已經(jīng)不支持了;
2. MPLAB X IDE 新的集成開發(fā)環(huán)境軟件,支持全部的8位、16位和32位芯片(部分比較老的芯片不支持);
3. MPLAB XC8是8位單片機C語言編譯器,你用C語言編程必須要用此編譯器,需要單獨安裝配合 MPLAB X IDE 使用;
4. 另外還要用到PIC單片機開發(fā)板、編寫器(如KIT4或ICD3、ICD4);
5.建議買一個 MPLABPICKit4在線調(diào)試器。
以上是最基本的開發(fā)配置。
推薦MPLAB X IDE(集成開發(fā)環(huán)境) + XC8(編譯器), 硬件可以直接選擇一塊curiosity nano開發(fā)板。PIC系列8位單片機為適應(yīng)各種不同的用途,推薦PIC16F722/3/4/6/7。另外,PIC16F1946和PIC16F877A是8位單片機中性價比較高的一種。
最終,panxiaoyi在芯片方面選擇了PIC18F27Q10和PIC18F47Q10系列。選擇它們是因為它們有中文數(shù)據(jù)手冊,資源豐富,某寶購買方便,也不貴,包郵10多元。下載線選擇了pic kit3.5。
軟件環(huán)境方面,現(xiàn)在已經(jīng)安裝了 MPLAB X IDE v4.20 沒有安裝5.x版本,因為4.x的中文界面更好,同時也安裝了xc8。
點燈例程:
#include
#ifndefXC_CONFIGURATION_H#defineXC_CONFIGURATION_H#include
其他PIC網(wǎng)友優(yōu)質(zhì)開箱測評帖:1、[PIC/AVR MCU]【CuriosityNano測評報告】初識PIC16F15244用戶:21ic藍V作者jinglixixi最近,如愿地收到了PIC16F15244Curiosity Nano評估工具包。其實說是工具包會有些誤解,它其實是由一塊PIC16F15244開發(fā)板和2排插針構(gòu)成。除去包裝后,將開發(fā)板與排針連接后,則如圖1所示。
圖1PIC16F15244開發(fā)板
由于工具包并沒有配置相應(yīng)的USB線,所以在找到一條USB線后便迫不及待連上電腦相看一下上電后的效果,其狀態(tài)如圖2所示。也就是說除了電源指示燈被點亮外,并無太大的變化。
圖2上電效果但與此同時,在電腦上還有著一定變化的,明顯的效果就是在安裝驅(qū)動后,桌面上出現(xiàn)了一個虛擬的U盤,見圖3所示。
圖3虛擬U盤在打開U盤后,可見到里面存有3個文件,見圖4所示。
圖4 U盤內(nèi)容此時若打開資源管理器,則可看到不僅有虛擬的U盤,還有虛擬的串口,見圖5所示。
圖5虛擬串口觀察到這里,似乎能做的也就這些了,那我們就為后續(xù)的工作先做些準(zhǔn)備把。
1.找到那張器件聯(lián)絡(luò)圖(原理圖),下載為:ww1.microchip.com/downloads/en/DeviceDoc/PIC16F15244_Curiosity_Nano_Schematics.pdf,該原理圖給我們的關(guān)鍵內(nèi)容如圖6所示。由此可知,板載的2個器件與MCU的連接關(guān)系為:LED(黃色)--- RA2(低電平點亮)SW(用戶鍵)--- RC2(按下為低電平)此外,串口的占用引腳為:TX(發(fā)送)--- RC1RX(接收)--- RC02. 找到硬件的用戶使用指南
圖6關(guān)鍵內(nèi)容3. 了解PIC16F15244為我們具有哪些特色,其主要內(nèi)容為:
4. 開發(fā)工具的配備,其主要內(nèi)容為:
隨后的工作就是下載軟件來構(gòu)建開發(fā)環(huán)境了,由于手頭的開發(fā)環(huán)境是基于MPLAB XIDE 5.30,所以需要重新下載安裝MPLAB X IDE 5.40,因為在MPLAB XIDE 5.30下是找不到PIC16F15244,這一點似乎不如KEIL,如果能下載個升級包把問題解決了多好!
2、[PIC/AVR MCU]【CuriosityNano測評報告】+初次上手PIC單片機之PWM呼吸燈用戶:南來之風(fēng)非常感謝論壇提供了一次難得的初次體驗PIC單片機的機會。官網(wǎng)的資料是非常詳細的,對于這款Curiosity Nano,建議從Github上開始學(xué)起來。github.com/microchip-pic-avr-examples/pic16f15244-pwm-led-blink
首先是環(huán)境的搭建:
正確安裝好驅(qū)動后,在端口中應(yīng)該可以看到“Curiosity Virtual COM Port”
開發(fā)環(huán)境安裝好后,首先打開MPLAB XIDE5.40,軟件是自動識別我們這款板子,而且硬件資料,軟件demo一應(yīng)俱全,非常的便利!
轉(zhuǎn)到Git上,試著運行一個pwm-led-blink-master的項目,下載后先build一個工程。
成功后,把程序下載到板子上。
與此同時,把GND和RA2引腳引出,連接到一個簡易示波器的輸入端,可以看到PWM的方波驅(qū)動LED閃爍,在簡易示波器上顯示出響應(yīng)的波形。
在例程的基礎(chǔ)上,增加了幾個不同占空比的值,目前占空比可以選擇0,12,25,37,50,62,75,88,100。代碼比較糙,但還是貼出來了:
uint16_tArray_dutyCycle[] ={0x0000,0x007F,0x00FA,0x177,0x01F4,0x0271,0x02EE,0x036A,0x03E7};uint16_ti;uint8_tindex =0;int8_tdirection =1;voidmain(void){SYSTEM_Initialize();// Initialize the deviceINTERRUPT_GlobalInterruptEnable();// Enable the Global InterruptsINTERRUPT_PeripheralInterruptEnable();// Enable the Peripheral Interruptswhile(1){if(direction ==1){if(index !=8)PWM3_LoadDutyValue(Array_dutyCycle[++index]);else{direction =-1;PWM3_LoadDutyValue(Array_dutyCycle[--index]);}}else{if(index !=0)PWM3_LoadDutyValue(Array_dutyCycle[--index]);else{direction =1;PWM3_LoadDutyValue(Array_dutyCycle[++index]);}}for(i =5120; i!=0;i--);}}
可以看出PWM的波形占空比變化時候LED0的亮度也隨之變化。
3、[PIC/AVR MCU]【CuriosityNano測評報告】+開箱、建立開發(fā)平臺及LED閃爍
用戶:hu9jj
周末收到本次評測的主角PIC18F57Q43核心板,鮮紅的外包裝依舊那么惹人喜愛:
兩個防靜電包裝袋中分別是排針和PIC18F57Q43核心板:
核心板上的焊盤依舊的交叉錯位,稍加用力將排針插入核心板,就可以直接使用,省略焊接步驟。我之前曾打樣了幾塊擴展板,本次依然派上用場:
上電之后,打開MPLAB X IDE,系統(tǒng)自動識別核心板,通過鏈接就可以下載PIC18F57Q43的相關(guān)資料:
電路圖、硬件用戶手冊及數(shù)據(jù)表下載完之后,照例先升級PACK包:
我懶得選擇,依次升級了全部PACK,因此花了一個多小時才完成:
準(zhǔn)備工作基本完成之后,開始新建項目:
我安裝的是中文版IDE,但不知怎么回事,有時菜單不出現(xiàn)中文,不過這無傷大雅,選擇“New Project”就是:
照舊選擇標(biāo)準(zhǔn)項目(參見上圖),然后進入第二步,選擇芯片類別:
類別選擇正確之后,在設(shè)備欄中輸入“PIC18F57",然后從下拉列表框中選擇對應(yīng)的核心板型號,當(dāng)然,您愿意錄入完整的核心板型號也行,然后在工具欄中選擇您的核心板編號,這樣項目便會與核心板掛鉤:
下一步便是選擇編譯器:
新建項目的最后一步是輸入項目名稱、選擇項目文件存放的位置等:
至此,項目新建完畢,下一步就是通過MCC來配置代碼,完善必要的代碼文件:
可以從Window下拉菜單中點擊進入(或退出)代碼配置器MCC,也可以直接點擊工具欄上的圖標(biāo)進入或退出MCC:
點擊之后,首先需要確定MCC配置文件存放的位置,我通常按默認(rèn)的位置,直接點擊“保存”按鈕:
通過下載的電路圖,我們知道LED是接在RF3引腳、KEY是接在RB4引腳,因此在引腳圖表中將RF3設(shè)置成output,將RB4設(shè)置成input,為了容易理解,點擊右上部分的Pin Module選項,然后在對應(yīng)引腳的名稱設(shè)置成KEY和LED:
配置完成后,不要忘記點擊右上部的"Generate"選項來生成代碼:
退出MCC之后,打開main.c文件,添加一個計時用的全局變量ms,并在主循環(huán)中寫入下列代碼,用于計時和控制LED引腳電平翻轉(zhuǎn):
編譯并下載程序到核心板上:
稍等片刻,程序燒錄完畢,黃色LED燈便閃爍起來了,開發(fā)平臺也順利建立了。
這是測試的動畫:
編輯:jq
-
led
+關(guān)注
關(guān)注
242文章
23320瀏覽量
661860 -
cpu
+關(guān)注
關(guān)注
68文章
10888瀏覽量
212360 -
PIC
+關(guān)注
關(guān)注
8文章
507瀏覽量
87676 -
配置
+關(guān)注
關(guān)注
1文章
189瀏覽量
18418
原文標(biāo)題:入門PIC需要準(zhǔn)備什么工具
文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論