打印
[学习资料]

基于MPLAB X IDE配置位设置讲解

[复制链接]
1392|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tfqi|  楼主 | 2021-8-10 12:02 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
在讲基于MPLAB X IDE 配置位配置前我先讲讲如何配置配置位。

比如PICLF1823的数据手册 可以再器件配置中找到两个寄存器。一个是配置字1 ,一个是配置字2.

对于初学者来说如此多的配置选项,该如何配置呢?我们要抓主重点。

配置字中最重要的配置选项就是:
看门狗配置 如:WDTE<1;0>; 一般选择关闭看门狗

MCLRE复位脚的配置 如:MCLRE;一般选择复位脚作I/O

震荡器的选择: 如:FOSC<2:0>;根据实际情况配置,我这里一般选择用 INTOSC 内部振荡器.

因为如果这三个没有配置好的话程序根本无法运行。其他配置可以看数据手册此不赘述。

MPLAB X IDE和MPLAB IDE 8不同。

MPLAB IDE 8 可以再界限中选择配置位就行。配置选项可以不写在代码中。

MPLAB X IDE 如果要配置的话必须在代码中写出配置。

实例介绍:

1.打开MPLAB X IDE  在菜单栏中 点击Window->PIC  Memory Veiws->Configuration bits

2 在出现的Configuration Bits中的改变每个配置中的option选项,红色的就是我们改变过的配置选项



3 配置完成后 点击 Genarate Source Code to Output 产生配置源代码。


将其中的 __CONFIG(FOSC_INTOSC & WDTE_OFF & PWRTE_ON & MCLRE_OFF & CP_ON & CPD_ON & BOREN_ON & CLKOUTEN_OFF & IESO_ON & FCMEN_ON);
__CONFIG(WRT_OFF & PLLEN_OFF & STVREN_ON & BORV_LO & LVP_OFF);复制到源代码中去。源代码中必须包涵头文件#include<pic.h>.


此处我指出一出MPLAB X IDEv1.10 的一处错误 在配置中的 BORV_LO 这个配置编译器是不认的,这可能是编写软件的程序员和编写头文件的程序猿没有配合好:

编译器只认得头文件,在pic16f1823.h这个头文件中没有定义BORV_LO 而是把他定义为BORV_19.把BORV_HI定义成BORV_25. 总之把BORV_LO修改成BORV_19就行了。


使用特权

评论回复
沙发
tfqi|  楼主 | 2021-8-10 12:03 | 只看该作者
下面应网友的要求对16F877A的配置位进行讲解:

CP :程序区保护 该位置1将开启 。(这个位是必须开启的以防止程序被读取)

DEBUG: 使能调试功能。如果不使能RB6 RB7脚作为普通的I/O口(根据需求)

WRT1:WRT0:写保护位。防止程序区被意外写入。(一般建议开启)

CPD:EEPROM保护,(这个位必须开启以防止EEPROM中的数据被读取)

LVP:低电压编程使能位。如果不使用低电压编程 RB3将做普通I/O.MCLR必须用于编程。(根据需求)

BOREN:掉电检测。掉电检测的作用是单片机发现电压不足的时候会及时的停止工作。防止一些意外操作的发生。比如 EEPROM 或者FLASH中的数据丢失(这个一般必须开启防止丢码)

PWRTEN:上电延时。开启后单片机会延时72MS开始工作。保证上电后电路稳定后单片机才开始工作。不要求单片机一上电就马上工作,这个位建议开启。(建议开启)

WDTEN:看门狗。 这个位根据你自己需要吧。开启之后程序必须 不停的喂狗。喂不好程序就会复位。(根据需求)

FOSC1:FOSC0:振荡器选择位。如果你用高速的就选择HS.中速度的就用XT,希望速度低功耗低就用LP。希望用便宜且对精度要求不高的振荡器就用RC。(根据需求选择)

  20MHz~4MHz (包括4MHz)的石英晶振配置HS.

  4MHz(包括4MHz)~200KHz(包括200KHz) 的石英晶振配置XT.
  200KHz(包括200KHz)~32KHz的石英晶振配置LP.

RC 就是 电阻加电容。就可以做出一个便宜但精度不高的是振荡器了。


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

56

主题

3316

帖子

4

粉丝