打印
[研电赛技术支持]

GD32F4系列 ,I2S 全双工,I2S_ADD 支持中断吗?

[复制链接]
1096|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
onlysd|  楼主 | 2024-8-30 17:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1、GD32F407,I2S 配置为全双工模式,其中 I2S_ADD 支持中断操作吗??
2、如果能,I2S_ADD的中断函数入口是,SPI1_IRQHandler()吗??
3、如果是,进入中断后,获取中断标志 & 获取数据的方式,如下对吗?!
      void SPI1_IRQHandler(void)
      {
            if(RESET != spi_i2s_interrupt_flag_get(I2S1_ADD, SPI_I2S_INT_RBNE))
            {
                   rt_uint16_t data;
                   // read spi_data
                   data = = spi_i2s_data_receive(I2S1_ADD);
                   // new block send a event ?
             }
      }

使用特权

评论回复
沙发
canfeil| | 2025-2-20 14:52 | 只看该作者
GD32F4系列在I2S全双工模式下,I2S_ADD是支持中断的

使用特权

评论回复
板凳
gongqijuns| | 2025-2-20 16:03 | 只看该作者
I2S是一种数字音频设备间的音频数据传输总线标准,该总线专责于音频设备之间的数据传输。它支持全双工/半双工通信,具有多种数据格式和可编程时钟极性等特性

使用特权

评论回复
地板
eleg34ance| | 2025-2-20 17:13 | 只看该作者
GD32F4系列的微控制器支持I2S接口,并且该接口在配置为全双工模式时,具有中断功能。这意味着当I2S接口接收到数据或需要发送数据时,可以触发中断,从而通知CPU进行相应的处理

使用特权

评论回复
5
hhdhy| | 2025-2-20 18:20 | 只看该作者
在GD32F4系列中,I2S_ADD是指I2S接口的地址或实例。当I2S_ADD配置为支持中断时,如果满足中断触发条件(如接收缓冲区非空、发送缓冲区空等),则会触发中断。

使用特权

评论回复
6
pe66ak| | 2025-2-20 19:28 | 只看该作者
中断函数入口通常是与I2S接口相关联的中断服务程序(ISR),如SPI1_IRQHandler()(注意:具体的中断服务程序名称可能因不同的GD32F4型号或固件库版本而有所不同)。在中断服务程序中,可以通过检查中断标志位来确定中断的原因,并据此执行相应的数据处理操作。

使用特权

评论回复
7
suiziq| | 2025-2-20 22:56 | 只看该作者
首先检查I2S1_ADD的接收缓冲区非空中断标志位(SPI_I2S_INT_RBNE)。如果标志位被置位,则读取接收到的数据,并执行其他必要的数据处理操作。最后,根据需要清除中断标志位以确保中断服务程序能够正确退出并等待下一次中断。

使用特权

评论回复
8
nuan11nuan| | 2025-2-21 08:35 | 只看该作者
GD32F4系列在I2S全双工模式下,I2S_ADD是支持中断的。这为用户提供了灵活的数据处理方式,可以在不需要CPU持续轮询I2S接口状态的情况下,及时响应数据接收或发送事件

使用特权

评论回复
9
yuliangren| | 2025-2-21 10:21 | 只看该作者
一般是支持的,不应该是SPI的中断入口啊,我觉得

使用特权

评论回复
10
miltk| | 2025-2-21 12:07 | 只看该作者
这个,spi和i2c应该是复用了吧

使用特权

评论回复
11
teaccch| | 2025-2-21 14:50 | 只看该作者
你先试试呗,应该是复用了导致的要用一个SPI的中断入口

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

3

帖子

1

粉丝