开发软件平台:MPLAB X IDE V1.85;XC8 compiler;
硬件调试器kit 3
IC芯片:PIC16F877A,外部晶振12MHz。
一、先建立项目工程
1.新建main.c文件即file→new,保存在制定文件夹中。
2.新建项目,即project→project wizard,然后一路下去,其中要选择器件PIC18xx,编译器C18,各种源文件main.c,PIC18xx.HPIC18xx.LKR、PIC18xx.LIB(后面三个在C18安装目录下)
3.还需要设置的是“Project”—》“Build Options”—》“Project”,在弹出的对话框中找到“Directories”标签,看到一个Show directories for:旁边的下拉选项,分别找到“Include Search Path”“Library Search Path”“Linker-Script Search Path”,这三个选项,这三个分别是指定头文件目录(Mcc18\h)、Lib库文件目录(Mcc18\lib)和LKR目录(Mcc18\bin\lkr)的。然后点击那个“New”按钮建立路径。
4,写程序编译
5.更重要的是配置项设置,目前还不清楚用程序怎么写,所以只能在编程工具里面设置。configure→configuration Bits然后configuration Bits set in code,前面的勾打上则表明在配置项写在程序里面,将勾取消掉则表明在该软件工具设置配置项。
配置项有三处需要修改:OSC WDT LVP(其它就看自己需求了)
程序中设置配置项用 #pragma config 伪指令
例如:
#pragma config PLLCFG = OFF
#pragma config BORV = 285
#pragma config WDTEN = ON
#pragma config WDTPS = 32768等等,PLLCFG等和右值的定义在C18安装目录下的doc文件夹中hlpPIC18ConfigSet可以找到,或看具体芯片的数据手册。
6.烧录程序
设置烧录模式Release,project→Build,Configuration→Release(Debug为在线调试模式)快捷方式栏有直接设置Release或Debug的。
选择烧录工具,Programmer → select Programmer → PICkit3,最后就可以下载程序啦。
补充说明:
可以在Programmer→setting→Power里面选择PICkit3的电压和目标板的供电方式,PIC中的BANK需要用户自己进行定义,除了bank0内的变量声明不要特殊处理外,其它的bank内的变量定义必须加上相应的bank序号。
unsigned char data; 这个是定义在bank0内的
bank1 unsigned char buffer[32]; // 变量定位在bank1中
bank2 bit flag1; //变量定位在bank2中
bank3 float val[2]; //变量定位在bank3中
bit型位变量智能是全局的或是静态的。PICC把定位在同一个Bank内的8个位变量并成一个字节存放在一个固定地址。位变量不能是局部自动变量。
PICC的位操作是非常高效的 ,对变量中的某一位操作的C语言代码将被直接编译为汇编的位操作指令。
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;
变量声明的类型:extern、volatile、const以及persistent,尤其注意persistent类型是不允许在程序复位后被清零的。
PIC的仿真器比较:
编程时可结合《PIC单片机的C语言编程》进行学习