PIC16F887 RB0外部中断(2)

本文详细介绍了如何配置和使用PIC16F887微控制器的RB0引脚作为外部中断源,通过实际代码测试验证了中断功能的正确性。
摘要由CSDN通过智能技术生成
#include <pic.h>  
#include <pic16f887.h>  
 
__CONFIG (CP_OFF&WDTE_OFF&BOREN_ON&PWRTE_OFF&FOSC_HS&WRT_OFF&LVP_OFF&CPD_OFF);  
   
/*配置位 
CP_OFF,代码保护位,程序存储器代码保护关闭; 
WDTE_OFF,看门狗定时器使能位,看门狗定时器关闭,可以通过WDTCON寄存器的SWDTEN位使能; 
BOREN_OFF,掉电复位选择位,掉电复位关闭; 
PWRTE_OFF,上电定时器使能位,上电定时器关闭; 
FOSC_HS,振荡器选择位,高速晶振或谐振器在RA6/OSC2/CLKOUT和RA7/OSC1/CLKIN; 
WRT_OFF,闪存程序存储器自写使能位,写保护关闭; 
LVP_OFF,低电压编程使能位,RB3引脚有数字I/O,使用MCLK上的HV(高电压)来编程; 
CPD_OFF,数据代码保护位,数据存储器代码保护关闭; 
*/  
     
#define uchar unsigned char  
#define uint unsigned int  
#define LEDA RB3//定义灯1  
#define RET RB0//定义灯1  
  
  
void delay(unsigned int n);  
void interrupt ISR(void);   
uchar count;  
  
main()  
{  
TRISB=0X01; //RB0为输入,其余为输出   
PORTB=0x09; //RB3置1  

//ANSEL=0x00;  


ANSELH=0x00;  //将RB0(AN12)引脚被分配给端口或特殊功能。
//必须初始化ANSELH 寄存器以将模拟通道配置为数字输入。配置为模拟输入的引脚将读为0。 
 

/*
GIE = 1;  //GIE:  全局中断允许位   1 = 允许所有未被屏蔽的中断
PEIE = 1; //PEIEÿ
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值