前言:
目前大家对“寄存器右移是从高位到低位吗为什么”大体比较关注,我们都想要知道一些“寄存器右移是从高位到低位吗为什么”的相关文章。那么小编也在网上收集了一些有关“寄存器右移是从高位到低位吗为什么””的相关文章,希望咱们能喜欢,朋友们快快来了解一下吧!原理图
多数人也都知道,51单片机的入门第一篇就是Led灯的操作,当然了,那也是最基本的操作。上次玩完LED灯,就相当于是入门,今天我们来看看数码管,对于数码管,大家可以是再熟悉不过了,生活中处处都可以见到各种各样的数码管,但是你知道其内部的原理吗,其实还是相当简单的,老样子,我们要玩什么,当然是先看看这个部分的原理图了:
由原理图可知,八个数码管并不是直接接在单片机的IO口上的,而是用了74HC595芯片,那么我们要想驱动数码管,就必须了解595芯片到底是个什么玩意儿,大多数开发板并没有使用这个芯片。
74HC595
74HC595芯片的作用就是把串行的信号转为并行的信号。关于这个芯片的详细信息以及时序问题,我不在这里详细叙述,大家去问百度去,百度一大堆资料。
只谈谈74HC595芯片的使用步骤
第一步:将要准备输入的唯一数据移入74HC595数据输入端上。送位数据到595芯片。
第二步:将位数据逐步移入74HC595,即SCL产生一个上升沿,将SI上的数据移入74HC595移位寄存器中,先送低位,再送高位。
第三步:并行输出数据,即数据并出。RCK产生一上升沿,将由QA-QH上已移入数据寄存器中的数据送入输出锁存器。
根据原理图可以知道,数码管驱动设计到两个74HC595芯片,一个芯片的输出用于控制数码管的位选,另一个芯片的输出控制数码管的段选,两个芯片的12号引脚同时受单片机的P2.5引脚控制,两个芯片的11号引脚同时受到单片机的P2.6引脚控制,段选数据和位选数据都是通过单片机引脚P2.7发送,在控制时钟引脚P2.6的控制下,当P2.6出现上升沿时,单片机通过P2.7引脚向505芯片内部发送数据,应先发送位选数据,当八位位选数
据在P2.7引脚产生的8个上升沿的作用下,从高位到低位一次存于Q7——Q0上。感觉说了这么多,已经有人懵逼了,觉得很烦,算啦,直接上代码大家瞅瞅吧,我只给大家看看驱动代码,至于main主函数里面的,相信大家自己可以完成:
实验效果
标签: #寄存器右移是从高位到低位吗为什么