|
1. 两个程序一个发送一个接收。
2. 把自动应答寄存器设置为取消。SPI1_RW_Reg(WRITE_REG1 + EN_AA, 0x00); //失能通道0接收自动应答
发送为查询模式调试发送的时候寄存器为0x20,就是发送成功。
3. 然后接受使用中断模式,死活进不了中断。大家帮忙看看是哪里设置有问题吗?
中断管脚为PB0
一 stm3210x_conf.h 打开#include "stm32f10x_exti.h"
二 //NRF24L01中断优先级设置
NVIC_InitStructure.NVIC_IRQChannel = EXTI0_IRQn;//NRF24L01 中断响应
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;//抢占优先级 0
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1; //子优先级为1
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //使能
NVIC_Init(&NVIC_InitStructure);
三 //配置NRF24L01+ 中断信号产生连接到 PB0
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; //NRF24L01 IRQ
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //上拉输入模式
GPIO_Init(GPIOB, &GPIO_InitStructure);
四 //NRF24L01中断配置
GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource0); //NRF24L01 IRQ PB0
EXTI_InitStructure.EXTI_Line = EXTI_Line0; //NRF24L01 IRQ PB0
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; //EXTI中断
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; //下降沿触发
EXTI_InitStructure.EXTI_LineCmd = ENABLE; //使能
EXTI_Init(&EXTI_InitStructure);
程序和原理图都在下面,请大家麻烦大家看看哪里有问题?谢谢了
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!
|