硬汉嵌入式论坛

 找回密码
 立即注册
查看: 5832|回复: 8
收起左侧

[SPI/QSPI] 求一个裸机LL库的SPI 查询方式的例程;

[复制链接]

3

主题

5

回帖

14

积分

新手上路

积分
14
发表于 2020-11-16 07:40:22 | 显示全部楼层 |阅读模式
求助各位好心的大大,硬件没有问题,中断方式的LL库spi收发也一切正常,但是LL库SPI查询方式始终无法正常收发包,找不到原因。
怀疑是fifo要初始化阈值或者TXP或者RXP的isactive flag收发函数有问题。
只能求助大佬,能不能发一个SPI正常收发的SPI LL库查询方式的例程,或者几句话,初始化,以及正常收发函数。H7没有LL库介绍啊。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107128
QQ
发表于 2020-11-16 11:39:12 | 显示全部楼层
直接寄存器方式可以吗,LL的还真没,基本没有独立使用过。

H7-TOOL的那个SPI 接口显示屏是SPI驱动的,早期我们是HAL配置后,寄存器操作刷新。里面还有保留的代码。

现在改成SPI DMA了。
回复

使用道具 举报

17

主题

101

回帖

152

积分

初级会员

积分
152
发表于 2020-11-16 13:29:54 | 显示全部楼层
官方库工程有代码参考的
回复

使用道具 举报

6

主题

642

回帖

660

积分

金牌会员

积分
660
QQ
发表于 2020-11-16 20:55:36 | 显示全部楼层
LL库我研究过,明天回家可以整一个范例上传上来
回复

使用道具 举报

0

主题

59

回帖

59

积分

初级会员

积分
59
发表于 2020-11-21 22:23:29 | 显示全部楼层
收发一个数据如下,我现在用的
        while (LL_SPI_IsActiveFlag_TXE(SPI4)==0)
           ;
        LL_SPI_TransmitData8(SPI4, g_spiTxBuf[i]);
        while ( LL_SPI_IsActiveFlag_RXNE(SPI4)==0)
            ;
        g_spiRxBuf[i]=LL_SPI_ReceiveData8(SPI4);
改造的坛主HAL程序
回复

使用道具 举报

4

主题

160

回帖

172

积分

初级会员

积分
172
发表于 2020-11-23 16:03:34 | 显示全部楼层
//TxData:要写入的字节
//返回值:读取到的字节
uint8_t SPI1_ReadWriteByte(uint8_t TxData)
{
    uint8_t resv_buff = 0;
    LL_SPI_Enable(SPI1);
    SPI_CS_L;
    LL_SPI_StartMasterTransfer(SPI1);
    while (LL_SPI_IsActiveFlag_TXP(SPI1) == 0) //检查指定的SPI标志位设置与否:发送缓存空标志位
    {
    }
    LL_SPI_TransmitData8(SPI1, TxData);        //通过外设SPIx发送一个数据
    while (LL_SPI_IsActiveFlag_RXP(SPI1) == 0) //检查指定的SPI标志位设置与否:发送缓存空标志位
    {
    }
    LL_SPI_ReceiveData8(SPI1); //必须要有,因为SPI 发送和接收是同时进行的,发送了,就必须接收,哪怕是空

    LL_SPI_ClearFlag_TXTF(SPI1);
    LL_SPI_ClearFlag_EOT(SPI1);
    LL_SPI_SuspendMasterTransfer(SPI1);
    LL_SPI_Disable(SPI1);
    SPI_CS_H;
    return resv_buff; //返回通过SPIx最近接收的数据
}
回复

使用道具 举报

1

主题

5

回帖

8

积分

新手上路

积分
8
发表于 2022-11-2 10:13:14 | 显示全部楼层
请问你的这个问题完成没有啊?我现在也遇到同样的问题。
回复

使用道具 举报

1

主题

5

回帖

8

积分

新手上路

积分
8
发表于 2022-11-2 10:15:16 | 显示全部楼层
裸机LL库的SPI 查询方式,同样的问题,请问哪位大大能传一个范例学习下。
回复

使用道具 举报

1

主题

5

回帖

8

积分

新手上路

积分
8
发表于 2022-11-2 10:18:13 | 显示全部楼层
裸机LL库的SPI 查询方式,同样的问题我也遇到了,哪位大大传一个范例学习下。先谢谢。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-19 19:45 , Processed in 0.195684 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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