1.PICC安装:
PICC编译器可以直接挂接在MPLAB-IDE集成开发平台下,实现一体化的编译连接和原代码调试。使用MPLAB-IDE内的调试工具ICE2000 、ICD2 和软件模拟器都可以实现原代码级的程序调试,非常方便。
首先必须在你的计算机中安装 PICC 编译器。安装成功后可以进入IDE ,选择菜单项Project Æ Set Language Tool Locations… ,打开语言工具挂接设置对话框。在对话框中选择“HI-TECH PICC Toolsuite”栏,展开可执行文件组“Executable”后,列出了将被MPLAB-IDE 后台调用的编译器所用到的所有可执行文件,其中有汇编编译器“PICC Assembler ”、C 原程序编译器“PICC Compiler”和连接定位程序“PICC Linker”。同时在此列表中还显示了对应的可执行程序名,请注意在这里都是“PICC.EXE”。用鼠标分别点击选中这三项可执行文件,观察对话框下面“Location ”一栏中显示的文件路径,用“Browse…”按纽,从计算机中已经安装的 PICC编译器文件夹中选择PICC.EXE 文件。
实际上PICC.EXE 只是一个调度管理程序,它会按照所输入的文件扩展名自动调用对应的编译器和连接器,用户要注意的是C 语言原程序扩展名用“.c ”,汇编原程序用“.as”即可。用C 语言编程的好处是可以实现模块化编程。程序编写者应尽量把相互独立的控制任务用多个独立的C 原程序文件实现,如果程序量较大,一般不要把所有的代码写在一个文件内。
基于PICC编译环境编写PIC 单片机程序的基本方式和标准C 程序类似,程序一般由以下几个主要部分组成:
z 在程序的最前面用#include 预处理指令引用包含头文件,其中必须包含一个编译器提供的“pic.h ”文件,实现单片机内特殊寄存器和其它特殊符号的声明;
z 用“__CONFIG ”预处理指令定义芯片的配置位;
z 声明本模块内被调用的所有函数的类型,PICC将对所调用的函数进行严格的类型匹配检查;
z 定义全局变量或符号替换;
z 实现函数(子程序),特别注意 main 函数必须是一个没有返回的死循环。
1 #include <pic.h> //包含单片机内部资源预定义 2 #include “pc68.h” //包含自定义头文件 3 //定义芯片工作时的配置位 4 __CONFIG (HS & PROTECT & PWRTEN & BOREN & WDTDIS); 5 //声明本模块中所调用的函数类型 6 void SetSFR(void); 7 void Clock(void); 8 void KeyScan(void); 9 void Measure(void); 10 void LCD_Test(void); 11 void LCD_Disp(unsigned char); 12 //定义变量 13 unsigned char second, minute, hour; 14 bit flag1,flag2; 15 //函数和子程序 16 void main(void) 17 { 18 SetSFR(); 19 PORTC = 0x00; 20 TMR1H += TMR1H_CONST; 21 LED1 = LED_OFF; 22 23 LCD_Test(); 24 25 //程序工作主循环 26 while(1) { 27 asm(“clrwdt”); //清看门狗 28 Clock(); //更新时钟 29 KeyScan(); //扫描键盘 30 Measure(); //数据测量 31 SetSFR(); //刷新特殊功能寄存器 32 } 33 }
2.PICC 中的变量定义:
bit 1 布尔型位变量,0 或1 两种取值
char 8 有符号或无符号字符变量,PICC 缺省认定char 型变量为无符号数,但可以通过编译选项改为有符号字节变量
unsigned char 8 无符号字符变量
short 16 有符号整型数
unsigned short 16 无符号整型数
int 16 有符号整型数
unsigned int 16 无符号整型数
long 32 有符号长整型数
unsigned long 32 无符号长整型数
float 24 浮点数
double 24 或32 浮点数,PICC 缺省认定double 型变量为24位长,但可以改变编译选项改成32位