1、对于PIC来说,状态字的配置尤其重要,其直接影响MCU的正常工作与否;
2、以PIC18F45K22为例,打开mplab8.92,
3、我们就可以看到配置字的说明文档:
4、比如:Oscillator Selection bits:(振荡器选择配置字)
HS是使用超过4M的石英晶体振荡器(外部晶振),其中HSHP为大于16Mhz,HSMP为4-16Mhz;XT是使用1M到4M的石英晶体振荡器。LP是使用低于1M的陶瓷振荡器,上述都是用外部晶振,只是所用晶振的材质和频率不同。RC是不使用外部晶振,直接用内部的RC时钟电路。其中HS和XT因为用石英晶体振荡器,所得时钟比较准确,适用于各种串口、can、TCPIP通信的场合。但缺点是频率大所以功耗也大。用LP和RC的特点是功耗小,但LP频率低,陶瓷振荡器输出的时钟精度不够高,RC的误差更大。适用于不用通信的普通控制场合。
5、#pragma config FOSC=HSMP,PLLCFG=OFF,PRICLKEN =OFF,FCMEN=OFF,IESO=OFF,PWRTEN=ON,BOREN=SBORDIS,WDTEN=OFF,MCLRE=EXTMCLR
// CONFIG
*#pragma config FOSC = INTRCCLK // Oscillator Selection bits (INTOSC oscillator: CLKOUT function on RA4/OSC2/CLKOUT pin, I/O function on RA5/OSC1/CLKIN)
*#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled and can be enabled by SWDTEN bit of the WDTCON register)
*#pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
*#pragma config MCLRE = ON // MCLR Pin Function Select bit (MCLR pin function is MCLR)
*#pragma config CP = OFF // Code Protection bit (Program memory code protection is disabled)
*#pragma config CPD = OFF // Data Code Protection bit (Data memory code protection is disabled)
*#pragma config BOREN = ON // Brown-out Reset Selection bits (BOR enabled)
*#pragma config IESO = OFF // Internal External Switchover bit (Internal External Switchover mode is disabled)
*#pragma config FCMEN = ON // Fail-Safe Clock Monitor Enabled bit (Fail-Safe Clock Monitor is enabled)
关键字:PIC单片机 配置字
引用地址:
PIC单片机配置字
推荐阅读最新更新时间:2024-03-16 16:10
PIC单片机引脚中断程序的设计技巧
1 简 述
所有的中档系列PIC单片机,PORTB端口最高的4个引脚(RB7"RB4)在设为输入模式时,当输入电平由高到低或由低到高发生变化时,可以让单片机产生中断。这就是通常所说的引脚状态变化中断。
在设计引脚中断程序时,有三个需要特别注意的地方。一是,在清除P0RTB中断标志位RBIF之前,必须安排一条必不可少的,以PORTB端口数据寄存器PORTB为源寄存器的读操作指令。放置这一指令的目的有时并不只是为了读取有用的数据,而是为了取消状态变化的硬件信号,以便顺利清除RBIF标志位,为下一次中断做好准备。二是,由于端口PORTB是引脚电子变化中断,即无论引脚出现上升沿还是下降沿都会产生中断请求,所以必须处理好不需要的虚假
[应用]
PIC单片机之MPLAB IDE v8.92 只能支持英文目录
MPLAB IDE v8.92 只能支持英文目录,所以一般而言是把相应的工程拷到D盘中,然后打开编译,最后如果想要保存工程,应该拷回想要保存的位置 当在中文目录中会出现“找不到指定路径”的错误,如下:
[单片机]
PIC单片机CRC校验程序
用PIC单片机和Dallas的iButtON通讯时,编了段产生和校验CRC的子程序。 #include ;------------------------------- cblock 0x20 datBuff:8 ;assign 8 byte data buffer bit_cnt ;bit counting CRC_COUNT ;number of bytes for CRC CRC_RESULT ;CRC resulr crc_temp ;temporary data buffer during CRC endc ;------------------------------- #define skp0
[单片机]
PIC单片机定时器0的应用
#include #define uchar unsigned char #define uint unsigned int __CONFIG(0x3B31); void init(); uint intnum; void main() { init(); while(1) { if(intnum==5) { intnum=0; RD0=!RD0; } } } void init() { TRISD=0; PORTD=0; OPTION=0x07; INTCON=0xa0; TMR0=61; } void interrupt TIme0() { T0IF=0; TMR0=61; intnum++; }
[单片机]
使用PIC单片机读写1-wire EEPROM DS2430的范例程序
;-------------------------------------------------------------------- ; ; 1-wire device access ;DS2430 ;memory function ;write scratchpad ;read scratchpad ; ;read memory : ; resource occupy by ICD2 ; PROM 0x1f00 - 0x1fff ; RAM 0x70,0xf0,0x170,0x1e5~0x1f0 ;--------------------------------------------------------------
[单片机]
PIC单片机循环程序实例
在这里介绍一种定时程序,说明循环程序在PIC单片机上的应用。笔者仍以PIC16F84单片机为例建立其定时源程序清单。该定时器源程序只需改变一条指令的常数设置,即可使定时时间从分钟级到3?8小时的连续变化(4MHz晶振条件)。在该源程序上再多设置一次循环,可使定时时间长达1月以上。 该PIC16F84单片机定时源程序可直接在MPLAB集成开发环境软件下进行汇编,其汇编后生成的HEX文件可在实验编程器1?01上对源程序进行固化并可在相应的实验板上直接观察实验的结果。PIC16F84单片机时的源程序清单如下(文件各可自定义): LIST P=PIC16F84 #INCLUDE P16F84?INC COU
[单片机]
一种高性能便携式PIC单片机湿度检测仪的研制
摘 要: 介绍了一种高性能便携式PIC单片机湿度检测仪的研制,详细阐明了有关的工作原理和关键技术。本测试仪充分应用PIC单片机自身的软硬件资源,具有智能化,小型便携、可编程等优点,在农业、水文系统、环境监测、气象等许多领域具有广泛的应用。
关键词: PIC单片机 湿度测试仪 土壤含水量
适时准确地测量周围环境的湿度和土壤含水量在国民经济发展的许多领域中具有广泛的应用,如在农业上为了科学地对土壤进行管理,需要经常测试土壤含水量;在水利工程中,如水文站、堤坝上也需经常测试土壤含水量,此外,土壤湿度测量在环保、气象、国防施工中更是不可缺少的测量项目。如何使这种繁琐的测量以及相关数据处理实现
[工业控制]
用PIC16F877单片机实现的IC卡读写器
引言 本设计的主要目的是介绍IC卡的数据存储技术和IC卡的数据通信,因而使用存储器卡。由于本设计中既可与IC卡进行串行同步通信,又要与上位机进行中行异步通信,因而需要选择一种同时具有这两种通信方式的单片机。因为PIC16F877不仅具有本设计所需要的两种通信方式,而且还具有运行速度快、低功耗、价格低等优点,所以选择PIC16F877单片机作为本设计的单片机。 图1是本设计的电路图,图中电源变换电路和发光二极管等指示电路没有画出。图中的二极管电路是单片机与IC卡通信数据线的保护电路。当数据线上的电压为负电压时,与地相连的二极管导通;当数据线上的电压大于+5V时,与+5V相连的二极管导通,从而保证数据线上的电压在0V~+5V之间
[单片机]