今天小编要和大家分享的是控制,MCU相关信息,接下来我将从单片机的两种清0方式有什么区别,单片机寄存器间接寻址的问题,我是新手这几个方面来介绍。

控制,MCU相关技术文章单片机的两种清0方式有什么区别单片机寄存器间接寻址的问题,我是新手

控制,MCU相关技术文章单片机的两种清0方式有什么区别

阅读单片机文档的时候一般寄存器是rw类型,还有一些是r或者w,对于一些特殊寄存器的置1是由硬件自动实现的,比如标志位flag、中断int,但清0还是需要通过软件进行操作,清0方式有两种,写1清0,写0清0,这两种方式有什么区别呢?在硬件实现上有什么不同?     

单片机的两种清0方式有什么区别

单片机内部有各种功能的寄存器,比如PIC,C51系列8位的单片机,寄存器的宽度就是八个二进制位,一般是高位在前低位在后,例如:11000011,一共是八位,高四位数据是1100,低四位数据是0011。单片机是可以进行位操作的,一个8位的寄存器我们可以只针对其中一个位或者某些位进行操作,将寄存器相应的位赋值1(高电平)为置位,相反赋值0(低电平)为清零。这是一种比较容易理解的方式,但对于写1清0有几种说法。

1、从电路角度去看,对某位写1,即输入一个高电平,使内部的一个三极管导通接地,电容放电进行清0。

2、写1是在硬件上产生一个复位脉冲。能写0清除就很可能也可以写1进去,而这与功能要求不符。如要控制只能写0而不能写1,则硬件比较复杂。

3、从应用便捷性角度来说,读了寄存器数据以后,照着写回去就可以清0,不用再更改一次数据。

还有寄存器一般支持的是byte, half word, word操作,对于寄存器上有几个标志位的情况下,完成对单一标志位的清0,又不影响其他标志位,但又必须对其他位进行写,因此也就只能是写1或者写0清0才有效,只能一种方式。

个人理解,有什么不对的,烦请评论指正探讨,尽信书不如无书,理越辩越明。

       责任编辑:zl

关于控制,MCU就介绍完了,您有什么想法可以联系小编。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查