配置字

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

PIC的配置位

来源:21ic作者:

关键字:PIC

一.配置字

PIC单片机的配置字可以用__CONFIG命令来定义:

# include

__CONFIG(x)

其中x是配置字,头文件中定义了相应的配置说明符,如:

__CONFIG(WDTDIS & XT & UNPROTECT);

这将关闭看门狗,设置XT振方式,程序不加密。注意:不同的配置符间用'&'相联,未定义的部分保留未编程状态。详细的情况请参考头文件及PIC数据手册

二.ID 位置

有些PIC单片机在程序空间外还有ID空间,可用下面的方法来定义:

# include

__IDLOC(x) 其中x是ID标示,如:

__IDLOC(15F0);

将ID的四个单元定义为:1, 5, 15, 0. ID的具体位置由所指定的PIC芯片自动设定。

三.EEPROM 数据

有些PIC单片机支持用外部编程器对内部的EEPROM进行编程。

__EEPROM_DATA()可以将用于初始化的数据放入HEX文件中,如:

__EEPROM_DATA(0, 1, 2, 3, 4, 5, 6, 7)

可将0-7八个数放入HEX文件中,在用外部的编程器进行编程时将这八个数写入PIC单片机中。

__EEPROM_DATA不是用于运行时写入EEPROM数据的,在运行时请用EEPROM_READ(), EEPROM_WRITE()。

pic 18 __config 配置位 PIC18的__CONFIG设置与PIC16的不一样。PIC16的如:

__CONFIG(_CP_OFF&_WDT_ON&_BODEN_ON&_PWRTE_ON&_RC_OSC); 是写在一起的。

PIC18 不写在一起,CONFIG1..7是分开写的。如:

__CONFIG(1,IESODIS&FCMDIS&HS);

__CONFIG(2,BOREN&PWRTEN&WDTDIS&WDTWINDIS&WDTPS32K);

__CONFIG(3,MCLREN);

__CONFIG(4,DEBUGEN&XINSTEN&STVRDIS);

__CONFIG(5,UNPROTECT);

__CONFIG(N,X) 函数原型在PIC18。H文件中。里面的各项设置在

PIC18Fxx22。H中。

上面的各项设置意义是:

//各项内容在PIC18FXX22.H文件中定义

//1.振荡器切换OFF&故障保护时钟监视器OFF&高速模式

//2.欠压复位ON&上电延时ON&看门狗OFF&看门狗分频数

//3.mclr用于复位脚

//4.使能后台调试器&使能指令集扩展&堆栈溢出不复位

//5.代码不保护

PIC单片机的配置位对于单片机运行起关键作用,若没配置正确是无法正常工

作的,该怎么配置呢,请先下载 MPLAB C18 中文使用指南。

PIC16系列只有一组配置位,而18系列却有多组,弄清楚其含义正确配置即可。

一.配置字

PIC单片机的配置字可以用__CONFIG命令来定义:

# include

__CONFIG(x)

其中x是配置字,头文件中定义了相应的配置说明符,如:

__CONFIG(WDTDIS & XT & UNPROTECT);

这将关闭看门狗,设置XT振方式,程序不加密。注意:不同的配置符间用'&'相联,未定义的部分保留未编程状态。详细的情况请参考头文件及PIC数据手册

二.ID 位置

有些PIC单片机在程序空间外还有ID空间,可用下面的方法来定义:

# include

__IDLOC(x) 其中x是ID标示,如:

__IDLOC(15F0);

将ID的四个单元定义为:1, 5, 15, 0. ID的具体位置由所指定的PIC芯片

自动设定。

三.EEPROM 数据

有些PIC单片机支持用外部编程器对内部的EEPROM进行编程。

__EEPROM_DATA()可以将用于初始化的数据放入HEX文件中,如:

__EEPROM_DATA(0, 1, 2, 3, 4, 5, 6, 7)

可将0-7八个数放入HEX文件中,在用外部的编程器进行编程时将这八个数

写入PIC单片机中。

__EEPROM_DATA不是用于运行时写入EEPROM数据的,在运行时请用 EEPROM_R EAD(), EEPROM_WRITE()。

pic 18 __config 配置位 PIC18的__CONFIG设置与PIC16的不一样。PIC16

的如:

__CONFIG(_CP_OFF&_WDT_ON&_BODEN_ON&_PWRTE_ON&_RC_OSC); 是写在一起的。

PIC18 不写在一起,CONFIG1..7是分开写的。如:

__CONFIG(1,IESODIS&FCMDIS&HS);

__CONFIG(2,BOREN&PWRTEN&WDTDIS&WDTWINDIS&WDTPS32K);

__CONFIG(3,MCLREN);

__CONFIG(4,DEBUGEN&XINSTEN&STVRDIS);

__CONFIG(5,UNPROTECT);

__CONFIG(N,X) 函数原型在PIC18。H文件中。里面的各项设置在PIC18Fxx2 2。H中。

上面的各项设置意义是:

//各项内容在PIC18FXX22.H文件中定义

//1.振荡器切换OFF&故障保护时钟监视器OFF&高速模式

//2.欠压复位ON&上电延时ON&看门狗OFF&看门狗分频数

//3.mclr用于复位脚

//4.使能后台调试器&使能指令集扩展&堆栈溢出不复位

//5.代码不保护

写程序的时候可以设置,在MPLAB软件里也可以设置。如果用某些PIC专用

的烧录工具也可以再烧录界面来设置。

学PIC的单片机首先就必须要学CONFIG配置位等内部寄存器。下面是各种设

置配置位的方法:

1:在汇编程序里加入__CONFIG xxxxx(注意下划线_是两条不是一条,后面

的“xxxxx”是你需要配置的各个配置位信息。比如:__CONFIG _CP_OFF & _ DEBUG_ON & _WRT_ENABLE_ON & _CPD_OFF & _LVP_OFF & _BODEN_OFF & _PW RTE_ON & _WDT_OFF & _XT_OSC

2:在C语言程序里加入__CONGFIG(xxxxxx);,(如上面说的xxxxx是配置

信息,config前的下划线还是两条,如:__CONFIG(INTOSCIO & WDTDIS & B ORDIS & PWRTEN);注意有个分号“;”相关头文件可以看到单独配置位的关键

3:还有就是在MPLAB软件里设置,建立好项目后,点击菜单栏的configure,然后是configuration bit,打开窗口后修改配置位。

相关文档
最新文档