查看: 1010|回复: 1

[求助] RT1062做从端SPI的回调函数机制

[复制链接]

该用户从未签到

2

主题

2

帖子

0

新手上路

Rank: 1

积分
21
最后登录
2021-2-13
发表于 2021-2-10 00:42:16 | 显示全部楼层 |阅读模式
如题,求助。

不明白下面这个回调机制是什么概念,怎么调用的。
代码跑起来,貌似从来就不跑这个函数。

void LPSPI_SlaveUserCallback(LPSPI_Type *base, lpspi_slave_handle_t *handle, status_t status, void *userData)
{
    callback_message_t *cb_msg = (callback_message_t *)userData;
    BaseType_t reschedule      = 0;

    cb_msg->async_status = status;
    xSemaphoreGiveFromISR(cb_msg->sem, &reschedule);
    portYIELD_FROM_ISR(reschedule);
}


谢谢
回复

使用道具 举报

该用户从未签到

656

主题

6312

帖子

0

超级版主

Rank: 8Rank: 8

积分
20015
最后登录
2024-4-25
发表于 2021-2-18 15:05:43 | 显示全部楼层
楼主你好!
你看到的这个 LPSPI_SlaveUserCallback其实就是SPI中断的callback回调函数。
再这个地方注册:
LPSPI_SlaveTransferCreateHandle(EXAMPLE_LPSPI_SLAVE_BASEADDR, &g_s_handle, LPSPI_SlaveUserCallback, NULL);
所以当SPI从机中断接收之后,会触发对于的回调函数。
When all data  is transferred, the callback function is called.
希望能帮到你。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条

Archiver|手机版|小黑屋|恩智浦技术社区

GMT+8, 2024-4-25 20:23 , Processed in 0.112667 second(s), 19 queries , MemCache On.

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表