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

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

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

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x

    , Y3 z- D  x5 f  y2 L如上图,一个字节的数据没发完CS就拉高了。! ]( l) L) U; N& X' r- v* `9 ^

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

    配置:

    void SPI2_Config(void)( V' N+ y1 ~* I$ ~$ B6 A  s
    {
    / @0 [2 h- ^9 ~$ x0 T7 F! g  SPI_InitTypeDef SPI_InitStructure;
    8 C( u  L* y# b9 g' W/ ^9 ~5 h) h: G  RCC_APB1PeriphClockCmd(RCC_APB1Periph_SPI2,ENABLE);
    * R5 K$ [' x$ k    SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex;//双线双向全双工
    - P& v5 y; |0 S6 A0 {    SPI_InitStructure.SPI_Mode = SPI_Mode_Master;//设置为主SPI$ w8 y, n3 ?% D  F5 A; i! B6 i
        SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b;//8位帧结构, H: Q. R& U4 [" M$ D1 t0 }
        SPI_InitStructure.SPI_CPOL = SPI_CPOL_High;//时钟悬空高
    " a% }9 ^$ R4 z% O    SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge;//第二个时钟沿
    ; |( v" j% d% o" H3 T7 f4 Y    SPI_InitStructure.SPI_NSS = SPI_NSS_Soft;//内部NSS信号由SSI位控制
    + O: v" f: i4 J& z    SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_8;//预分频值为2 SPI_BaudRatePrescaler_2
    ' q: z0 I5 i$ V/ L    SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB;//数据传输从MSB位开始
    1 L' s) v6 s3 f6 R    SPI_InitStructure.SPI_CRCPolynomial = 7;//用于CRC值计算的多项式
    0 a1 G8 ~2 u& K/ Q  v    SPI_Init(SPI2,&SPI_InitStructure);//初始化配置
    9 s& l9 ]+ v, M* n7 g  SPI_Cmd(SPI2,ENABLE);//使能或者失能SPI外设
    * g! D% J/ M/ y/ K}

    void OLED_Send_1_Byte(u8 Data)) d6 E8 t% A" O/ ^! m+ U
    {
    $ r! N- H, t+ T6 E* H) d* P, S+ e OLED_CS_Set_0;    / @: @- X5 s: E8 q3 E/ G9 Y4 R$ k
    SPI_I2S_SendData(SPI2,Data);' L8 |" f6 C! l8 Q1 X# c2 H! L
    while((SPI2->SR & SPI_SR_TXE)==0);
    ! p) K( `% J: R; `  W1 a5 L; c8 E4 O OLED_CS_Set_1;    5 U3 g. z! c) C$ |
    }

    执行:OLED_Send_1_Byte(0x55);

    - k# n7 \4 c/ F) m0 h" Y
  • 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,要不基本都用软件片选。& Y" R9 T! a4 ^3 H/ Q) M

    4 H( L' w9 N# s4 y( B
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-10-31 23:34 , Processed in 0.171875 second(s), 27 queries , Gzip On.

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

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

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