欢迎大家来到IT世界,在知识的湖畔探索吧!
寄存器到底是什么?软硬件的桥梁,C语言何以控制硬件(系列4)。
单片机最基本的功能可以去控制外部的IO输出一个电平,这是高电平,这是低电平。实际上并不是CPU直接去控制IO的引脚,而是在IO这块单片机里面会有一个专门的IO控制器。
IO控制器是什么东西?IO控制器实际上就是一块电路,这块电路是由芯片的设计工程师专门去设计出来的。这块电路的特点是什么?这块电路的特点实际上是这是IO控制器,这里有一些引脚,比如这是1号引脚、2号引脚、3号引脚和4号引脚。

欢迎大家来到IT世界,在知识的湖畔探索吧!
电路的功能是什么?电路的功能就是为了去控制特定的引脚向外输出一些高低电平。高电平是控制第2个引脚还是第3个引脚向外去输出低电平还是高电平?但是到底谁决定了到底要向哪一个引脚上面去输出高电平或者低电平?实际上肯定是CPU来决定的。CPU所执行的代码需要去控制特定的引脚去输出高电平或者低电平。
所以IO控制器这块电路一定要去留出一个接口来,这个叫做硬件接口。硬件接口有什么特点?它是一个记忆电路,只要是向它去写入一个值,比如写入0,这个值一旦写入进来之后实际上都是一些高低电平。这块电路从这块所输入的电平实际上就会去影响到这块电路的工作状态。
所以IO控制器随着所输入的值不同会影响到它的边引脚上面的输出,从哪个引脚上面去输出高电平或者低电平?这个电路大家明白了吧?如果能够去理解这个,现在就可以来做一件事情了。什么事情?下面要做的这件事情可以实现软件世界和硬件世界之间的打通。也就是软件代码可以直接去控制硬件电路了。
怎么来做?来看这块电路的接口,实际上它是一个记忆电路,可以把记忆电路干什么?可以把它也放到总线上来,这样就可以通过CPU去向硬件接口记忆电路里面去写入一些值了。
所以就是通过这种方式,通过一块电路所开放的硬件接口,把它接到CPU的主线上来,然后向它去写入一个特定的值,来影响到外设电路的工作方式。这样就通过CPU程序去实现了对于外部电路的控制了。
明白了吧?我问大家一个问题,这里跟外部电路开放出来的这块硬件的接口记忆电路大家知道叫什么吗?它仍然可以通过CPU去写入一个值,或者是读取这个值。大家知道这个东西叫什么吗?这个东西实际上就是传说中的寄存器。明白了吧?
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/123618.html