历史上的今天
今天是:2025年08月05日(星期二)
2019年08月05日 | STM32 Hal库SPI中断
2019-08-05 来源:eefocus
SPI从机接受接收中断配置
SPI_HandleTypeDef SPI2_Handler; //SPI2句柄
uint8_t receive_byte;
//SPI口初始化
void SPI2_Init(void)
{
SPI2_Handler.Instance=SPI2; //SPI2
SPI2_Handler.Init.Mode=SPI_MODE_SLAVE; //设置SPI工作模式,设置为主模式
SPI2_Handler.Init.Direction=SPI_DIRECTION_2LINES; //设置SPI单向或者双向
SPI2_Handler.Init.DataSize=SPI_DATASIZE_8BIT; //设置SPI的数据大小
SPI2_Handler.Init.CLKPolarity=SPI_POLARITY_HIGH; //串行同步时钟的空闲状态为高电平
SPI2_Handler.Init.CLKPhase=SPI_PHASE_2EDGE; //串行同步时钟的第二个跳变沿(
SPI2_Handler.Init.NSS=SPI_NSS_SOFT; //NSS信号由硬件(NSS管脚)
SPI2_Handler.Init.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_2;//定义波特率预分频的值
SPI2_Handler.Init.FirstBit=SPI_FIRSTBIT_MSB; //指定数据传输从MSB位还是LSB位
SPI2_Handler.Init.TIMode=SPI_TIMODE_DISABLE; //关闭TI模式
SPI2_Handler.Init.CRCCalculation=SPI_CRCCALCULATION_DISABLE;//关闭硬件CRC校验
SPI2_Handler.Init.CRCPolynomial=7; //CRC值计算的多项式
HAL_SPI_Init(&SPI2_Handler);//初始化
//SPI2_ReadWriteByte(0Xff); //启动传输
HAL_SPI_Receive_IT(&SPI2_Handler, &receive_byte, 1);
HAL_NVIC_SetPriority(SPI2_IRQn, 2, 0);
HAL_NVIC_EnableIRQ(SPI2_IRQn);
__HAL_SPI_ENABLE(&SPI2_Handler); //使能SPI
}
/**
* @brief This function handles SPI2 global interrupt.
*/
void SPI2_IRQHandler(void)
{
HAL_SPI_IRQHandler(&SPI2_Handler);
HAL_SPI_Receive_IT(&SPI2_Handler, &receive_byte, 1);
}
史海拾趣
|
我在原来的公司做的时候,就注意观察公司在管理上的成功和失败的经验教训,并在网络上找很多关于管理的文章。 管理上有很多故事,让我领悟到管理就是设计一个合理的机制。 故事之一:分粥 分粥的故 ...… 查看全部问答> |
|
我在BT.656(一个视频数据传输协议)的数据传输协议中看到,对数据的传输格式规定有相当大小的Blanking部分,占到整个数据传输块的很大一部分,我弄不清这个Blanking有什么用处呢?… 查看全部问答> |
|
美资闪存公司Sr. AE职位(服务器环境的底层软件开发背景) 美资闪存公司Sr. AE职位(服务器环境的底层软件开发背景) JD如下,最重要的是服务器环境下的底层软件开发经验,如Driver、BIOS等,熟悉C或汇编。其他plus的要求:对于Linux内核了解,懂得内核级的内存管理及相应改进,以适应和开展服务器环境下Fla ...… 查看全部问答> |
|
embedded vb 如何把它编译的程序,转成cab阿。在线等 embedded vb 如何把它编译的程序,转成cab阿。在线等 我初次是用这个软件,在他的模拟ppc 2002上已经可以使用了,但是我想安装在真实的机器上测试,不知道怎么弄 希望搞人指教… 查看全部问答> |
|
拿到STM32开发板三天了!写了几个程序!程序简单但对入门还是有点帮助的!我自己下次调试成功了的! 上传供一起刚入门的朋友分享下! 第一天学习:MDK工程建立和GPIO 第二天学习:RCC和按键程序 第三天学习:EXTI程序(一个中断按键程序) 每 ...… 查看全部问答> |
|
程序代码如下: 初始化后寄存器如下:起始地址是0x40005800 00000001 00000024 00004000 00000000 00000000 00000000 00000000 00000708 00000035 我不喜欢用提供的函数, ...… 查看全部问答> |
|
新手提问--想学ARM但是不知道先学ARM7或ARM9好还是先学STM32好--有51和avr经验 想学ARM但是不知道先学ARM7或ARM9好还是先学STM32好。我现在一直在用的是51和AVR。… 查看全部问答> |




