開(kāi)發(fā)軟件平臺(tái):MPLAB X IDE V1.85;XC8 compiler; 硬件調(diào)試器kit 3 IC芯片:PIC16F877A,外部晶振12MHz。
一、先建立項(xiàng)目工程 2.新建項(xiàng)目,即project→project wizard,然后一路下去,其中要選擇器件PIC18xx,編譯器C18,各種源文件main.c(1中創(chuàng)建的)、PIC18xx.H、PIC18xx.LKR、PIC18xx.LIB(后面三個(gè)在C18安裝目錄下) 3.還需要設(shè)置的是“Project”—》“Build Options”—》“Project”,在彈出的對(duì)話框中找到“Directories”標(biāo)簽,看到一個(gè)Show directories for:旁邊的下拉選項(xiàng),分別找到“Include Search Path”“Library Search Path”“Linker-Script Search Path”,這三個(gè)選項(xiàng),這三個(gè)分別是指定頭文件目錄(Mcc18\h)、Lib庫(kù)文件目錄(Mcc18\lib)和LKR目錄(Mcc18\bin\lkr)的。點(diǎn)擊那個(gè)“New”按鈕建立路徑。 4,寫(xiě)程序編譯
5,更重要的是配置項(xiàng)設(shè)置,目前還不清楚用程序怎么寫(xiě),所以只能在編程工具里面設(shè)置。configure→configuration Bits然后configuration Bits set in code,前面的勾打上則表明在配置項(xiàng)寫(xiě)在程序里面,將勾取消掉則表明在該軟件工具設(shè)置配置項(xiàng)。
程序中設(shè)置配置項(xiàng)用 #pragma config 偽指令
6.燒錄程序 可以在Programmer→setting→Power里面選擇PICkit3的電壓和目標(biāo)板的供電方式 PIC中的BANK需要用戶(hù)自己進(jìn)行定義,除了bank0內(nèi)的變量聲明不要特殊處理外,其它的bank內(nèi)的變量定義必須加上相應(yīng)的bank序號(hào)。 unsigned char data; 這個(gè)是定義在bank0內(nèi)的 bank1 unsigned char buffer[32]; // 變量定位在bank1中 bank2 bit flag1; //變量定位在bank2中 bank3 float val[2]; //變量定位在bank3中 bit型位變量智能是全局的或是靜態(tài)的。PICC把定位在同一個(gè)Bank內(nèi)的8個(gè)位變量并成一個(gè)字節(jié)存放在一個(gè)固定地址。位變量不能是局部自動(dòng)變量。 PICC的位操作是非常高效的 ,對(duì)變量中的某一位操作的C語(yǔ)言代碼將被直接編譯為匯編的位操作指令。 Union { Struct{ Unsigned b0:1; Unsigned b1:1; Unsigned b2:1; Unsigned b3:1; Unsigned b4:1; Unsigned b5:1; Unsigned :2 }onebit; Unsigned char allbits; }myflag; Myflag.onebit.b3 =1; Myflag.allbits = 0;
變量聲明的類(lèi)型:extern、volatile、const以及persistent,尤其注意persistent類(lèi)型是不允許在程序復(fù)位后被清零的。 PIC的仿真器比較:
編程時(shí)可結(jié)合《PIC單片機(jī)的C語(yǔ)言編程》進(jìn)行學(xué)習(xí) |
|
來(lái)自: 共同成長(zhǎng)888 > 《PIC單片機(jī)》