8086 发表于 2013-2-28 12:08
__CONFIG(XT & WDTDIS & LVPDIS); //定义配置字,晶振类型:XT,关闭开门狗,禁止低电压编程
这是16F87 ...
打开你所使用的C编译器安装目录下的该型号对应头文件,在我的PICC9.80版本下面的头文件名称为pic16f7x.h。
打开后,一般在文件最后有关于配置字的宏,在你的应用程序中使用__CONFIG();正确调用这些宏即可。
如果我的PICC9.80版本下的配置字宏定义为:
#define CONFIG_ADDR 0x2007
/*osc configurations*/
#define RC 0x3FFF // resistor/capacitor
#define HS 0x3FFE // high speed crystal/resonator
#define XT 0x3FFD // crystal/resonator
#define LP 0x3FFC // low power crystal/resonator
/*watchdog*/
#define WDTEN 0x3FFF // watchdog timer enable
#define WDTDIS 0x3FFB // watchdog timer disable
/*power up timer*/
#define PWRTEN 0x3FF7 // power up timer enable
#define PWRTDIS 0x3FFF // power up timer disable
/*brown out reset*/
#define BOREN 0x3FFF // brown out reset enable
#define BORDIS 0x3FBF // brown out reset disable
/*code protection*/
#define UNPROTECT 0x3FFF // do not protect the code
#define PROTECT 0x3FEF // protect the program code
根据以上的宏,你是否发现了问题所在?其实很简单,那就是在PIC16F73的配置字,根本没有 LVPDIS这个东西,你瞎写一通,电脑当然会无情的叉叉你。
|