找回密码
 立即注册
查看: 342|回复: 2

对SPI状态寄存器SPSTAT(SPIF/WCOL)清零需要写1的疑问

[复制链接]
  • TA的每日心情
    奋斗
    7 小时前
  • 签到天数: 134 天

    [LV.7]常住居民III

    8

    主题

    79

    回帖

    1094

    积分

    金牌会员

    机长

    积分
    1094
    发表于 2023-7-4 10:57:39 | 显示全部楼层 |阅读模式
    对SPI状态寄存器SPSTAT(SPIF/WCOL)清零需要写1的疑问-1.png


    STC32G.pdf 页码角标523
    已知:SPIF和WCOL位会被硬件置1。疑问:①为什么清零也是向此位写1?②代码写1后立即读到的是1还是0?

    业余撸代码,专业开飞机
    回复 送花

    使用道具 举报

  • TA的每日心情
    开心
    7 天前
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    16

    主题

    724

    回帖

    2578

    积分

    超级版主

    积分
    2578
    发表于 2023-7-4 21:29:09 | 显示全部楼层
    ①为什么清零也是向此位写1?
    状态位写“0”清零和写“1”清零均是比较常见的设计
    这里的SPIF和WCOL标志位,在芯片设计时就是设计为写“1”清零模式

    ②代码写1后立即读到的是1还是0?
    寄存器reg不等同于RAM,写入寄存器的值并不是直接存入寄存器,而是由硬件电路进行处理
    代码写1后,相当于告诉CPU可以清除内部相应的寄存器reg了,立即读取会读到0

    点评

    感谢版主,了解了~~  发表于 2023-7-5 00:21
    回复 支持 反对 送花

    使用道具 举报

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

    本版积分规则

    QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

    GMT+8, 2024-5-18 17:50 , Processed in 0.058944 second(s), 39 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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