找回密码
 注册
关于网站域名变更的通知
查看: 189|回复: 3
打印 上一主题 下一主题

请教GD32F103CBT6 SPI的CS提前拉高的问题

[复制链接]
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2022-9-13 13:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    0 R! V3 k* }  d* V" z
    如上图,一个字节的数据没发完CS就拉高了。% Q8 A/ E/ T' X! V5 C

    芯片是GD32F103CBT6,使用STM32标准库。

    配置:

    void SPI2_Config(void)) I; a  |. {: g9 Z0 F
    {
    5 ~9 N9 t4 m& M3 l  ?1 \  SPI_InitTypeDef SPI_InitStructure;" T% M6 Y2 E0 m/ U& a0 r& f
      RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2,ENABLE);# E# q7 Y) _) T* _0 @4 }0 k) t% k
        SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;//双线双向全双工
    ; i/ ?" V5 D) e+ Y, ]! x    SPI_InitStructure.SPI_Mode = SPI_Mode_Master;//设置为主SPI: i# u! M$ {6 e( J8 m( M
        SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;//8位帧结构6 Y- R) Y2 t/ P2 l5 y  Q( \
        SPI_InitStructure.SPI_CPOL = SPI_CPOL_High;//时钟悬空高) P% W7 b) b5 r5 Z( [
        SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;//第二个时钟沿! \0 h5 @+ T: h4 t) Z. V
        SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;//内部NSS信号由SSI位控制
    % O4 V7 F' r" p( ~) Z7 K* o% D    SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;//预分频值为2 SPI_BaudRatePrescaler_23 n; [3 X! D# h6 I+ i- W
        SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;//数据传输从MSB位开始
      g+ J! o! [  Z4 F    SPI_InitStructure.SPI_CRCPolynomial = 7;//用于CRC值计算的多项式
    . f/ p, ~- ^& y! a' w& L    SPI_Init(SPI2,&SPI_InitStructure);//初始化配置
    2 @1 G( w6 W. O( ~8 W" p2 V, B5 e" \/ T: D  SPI_Cmd(SPI2,ENABLE);//使能或者失能SPI外设- n& o, P* G2 ~* \5 `. P' z( n
    }

    void OLED_Send_1_Byte(u8 Data)
    8 Z& r8 _6 N$ H" Z. l( O; T- ?{
    + V: R' C% O  a7 w2 B6 L+ { OLED_CS_Set_0;   
    8 i) a; y# N. \ SPI_I2S_SendData(SPI2,Data);
    8 X2 p. X  N0 f4 f2 p2 K1 q2 d while((SPI2->SR & SPI_SR_TXE)==0);
    : b8 i% }( [' s/ r OLED_CS_Set_1;   
    ' @! q- M- e3 |}

    执行:OLED_Send_1_Byte(0x55);

    1 e% i$ g5 @+ L0 V9 F) U
  • TA的每日心情
    开心
    2022-1-29 15:03
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
    发表于 2022-9-13 14:56 | 只看该作者
    检查 SPI函数,是否有拉高CS的动作

    该用户从未签到

    3#
    发表于 2022-9-13 15:03 | 只看该作者
    硬件SPI一般都选择软件控制nss
  • TA的每日心情
    开心
    2022-1-29 15:04
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2022-9-13 15:06 | 只看该作者
    改成软件控制CS即可,除非是那种映射方式的SPI,要不基本都用软件片选。/ e8 y  C. q8 s. v3 P8 R
    - A! {8 `# g- w+ a9 p6 [' x
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-5 23:26 , Processed in 0.140625 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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