#include <ioCC2530.h>
#define D1 P1_0
#define D2 P1_1
#define D3 P1_2
#define CLKSPD ( CLKCONCMD & 0x07 ) //getting the clock division factor
void exit_init();
void led_init(void);
void led_test(void);
void delay_ms(unsigned char wait);
void main(void)
{
led_init();
exit_init();
while(1)
{
}
}
//P0.6 低电平触发中断
void exit_init()
{
//设置为通用IO P0.6
P0SEL&=~0x40;
//设置电平方向输入
P0DIR&=~0x40;
//设置上拉
P0INP&=~0x40;
//设置中断
P0IEN|=0x40;
PICTL&=~0x01;
P0IFG&=~0x40;
P0IE=1;
EA=1;
}
#pragma vector=P0INT_VECTOR
__interrupt void P0_ISR(void)
{
EA=0;
led_test();
if((P0IFG&0x40)>0)
{
P0IFG&=~0x40;
D3=!D3;
}
P0IE=0;//清除P0外部中断
EA=1;//开启总中断
}
void led_init(void)
{
P1SEL&=~0x07;
P1DIR|=0x07;
D1=1;
D2=1;
D3=1;
}
void led_test(void)
{
D1=0;
D2=1;
delay_ms(250);
delay_ms(250);
D1=1;
D2=0;
delay_ms(250);
delay_ms(250);
}
void delay_ms(unsigned char wait)
{
unsigned long largeWait;
if(wait==0)
return;
largeWait=wait<<7;
largeWait+=114*wait;
largeWait=(largeWait>>CLKSPD);
while(largeWait--);
return;
}
ZIGBEE-CC2530F256外部中断
最新推荐文章于 2024-10-17 11:38:39 发布
本文深入探讨了ZIGBEE无线通信模块CC2530F256的外部中断功能,详细介绍了如何配置和利用这些中断进行高效的数据处理和事件响应。通过实例解析,展示了在STM32平台上如何与CC2530F256进行中断交互,从而实现更灵活的系统设计。
9691

被折叠的 条评论
为什么被折叠?



