当前位置:首页 > 芯闻号 > 基础知识科普站
[导读]我们都知道通信从大的方面有两种:串行和并行。串行的最大优点是占用总线少,但是传输速率低;并行恰恰相反,占用总线多,传输速率高。市面上有很多这样的芯片,有串入并出的(通俗讲就是 一个一个进,最后一块出来),有并入串出的(相对前者而言)。具体用哪种类型要根据我们得实际情况。

我们都知道通信从大的方面有两种:串行和并行。串行的最大优点是占用总线少,但是传输速率低;并行恰恰相反,占用总线多,传输速率高。市面上有很多这样的芯片,有串入并出的(通俗讲就是 一个一个进,最后一块出来),有并入串出的(相对前者而言)。具体用哪种类型要根据我们得实际情况。比如利用单片机显示数码管单纯的显示一个数码管如果仅仅是为了显示 那么动用单片机一个端口(如P0或P1/P2/P3)那没有什么,当然这里我说的数码管是8段的(如果利用BCD类型 16进制数码管那么只需四个即可)就拿51类型的单片机来说,总共32个I/O口,一般如果不是做太大的工程是完全够用的,但有些时候你会恨单片机怎么不多长几条“腿”,怎么省还是不够用。这个时候就需要用到并转串或者串转并芯片来进行IO口的扩展,74HC165就是一种并行转串行的芯片。

74HC165是一款高速CMOS器件,74HC165遵循JEDEC标准no.7A。74HC165引脚兼容低功耗肖特基TTL(LSTTL)系列。

74HC165芯片有8位移位寄存器(并行输入,互补串行输出)

74hc165特性

8位同步并行输入

异步串行输出

兼容JEDEC标准no.7A

ESD保护

简要说明

54/74165为8位移位寄存器,其主要电特性的典型值如下:

74hc165基本参数

电压:2.0~6.0V

驱动电流:+/-5.2mA

传输延迟:16ns@5V

最高频率:56MHz@5V

逻辑电平:CMOS

工作温度:-40~+85℃

封装:SO16,SSOP16,DIP16,TSSOP16

逻辑电路图:

真值表:

时序图:

74HC165芯片的芯片引脚图:

引脚功能介绍

1、CLK,CLK INH : 时钟输入端(上升沿有效)

2、A-H :并行数据输入端

3、SER :串行数据输入端,为串行输入端 、 将数据串行进入到寄存器中、在每一个时钟的上升沿向右移动一位,利用这种特性,只要把 QH输出连接到下一级的SER输入 既可实现并转串扩展

4、QH : 输出端

5、!QH :互补输出端

6、SH/!LD:移位控制/置入控制(低电平有效), 为低电平时 并行数据进入移位寄存器中,为高电平时并行数据不能传进移位寄存器

①当输入端(SH/LD)为低:

从D0到D7口输入的并行数据将被异步地读取进寄存器内,然后通过DS输出。

②当输入端(SH/LD)为高:

数据将从DS(10引脚)输入端串行进入寄存器,在每个时钟脉冲的上升沿向右移动一位。利用这种特性,只要把Q7输出绑定到下一级的DS输入,即可实现并转串扩展。(在我们的开发板,DS端是悬空的),通过时钟管脚,上升沿有效,在每个时钟脉冲的上升沿向右移动一位(D0→D1→D2→D3→…→D7)一位一位将数据往外读出和移出。

芯片工作方法:

其实看一个芯片是如何使用的,不只是看引脚功能,更重要的是要看时序图和真值表,从其中我们可以详细的了解到它是如何使用的,然后转化成程序代码即可。

从上面我们的真值表和时序图中我们要特别注意几个端口的变化,真值表中SH/LD只有在高电平的时候方才有效;CLK,CLK INH只有当其中一个为低电平的时候,另一个时钟才能正确的输入,这是非常重要的(一般的我们在使用时,可以将其中的一个直接接地,另一个做时钟输入端口使用)。但是我们做事要细心,要一丝不苟,从时序图中我们看到SH/LD有一个负脉冲这是什么缘故呢?在程序设计中如果忽略了此处,那么注定结果是悲剧的。从SH/LD的全称是: SHIFT/LOAD 这说明它有两种功能( SHIFT英文意思是移位,LOAD是装载) ,故美其名曰: 移位控制(高电平有效)/置入控制端口(低电平有效)。在单片机接收数据前,必须将该引脚拉低,目的是为了将并行数据A--H上得数据装载到内部寄存器中,这里体现的时LOAD功能;接下来在接收数据的过程中必须将该引脚拉高,目的是为了使寄存器中的数据可以移动,从而从QH或QN'中移入单片机。这里体现的是SHIFT功能。74hc165中最重要的一个引脚就是该引脚 至于说时钟电路就显得逊色多了。我们只需将单品机的某一个端口拉低或抬高即可,这样数据就一步一步的被接收了。请务必记得上升沿有效。

接下来看下使用到的开发板相关模块的电路原理图:

开发板上的165并行输入端口 连接的IO口是与8个独立键盘相互共用,可以做独立键盘的输入扩展、QH串行输出端口是连接了P17引脚 加了个短路冒不用的时候可以断开避免影响P17的电平。 每次按键按下时,相应的发光二极管就会被点亮。

硬件连线图:

示例程序如下:

#include "reg52.h"

#include "intrins.h"

typedef unsigned char u8;

typedef unsigned int u16;

#define GPIO_LED P0

sbit IN_PL = P1^6; //SHIFT/!LOA引脚

sbit IN_Data = P1^7; // QH数据输出引脚

sbit SCK = P3^6; //CLOCK引脚

u8 Read74HC165()

{

u8 indata;

u8 i;

IN_PL = 0;//装载8位并行数据

_nop_();

IN_PL = 1;//转换8位并行数据为串行数据

_nop_();

indata = 0;

for(i = 0; i < 8; i ++) //将8个串行数据存入数组indata中

{

indata = indata << 1;//开始时,indata数组先左移一位,以后每个循环左移一次

SCK = 0;//时钟低电平到来后,并行数据开始转换串行数据

_nop_();

indata |= IN_Data; //将转换完成的串行数据一位位存入数组

SCK = 1; //时钟变为高电平,再次变为低电平时,开始传出下一位串行数据

}

return indata;

}

void main()

{

u8 h165Value;

while(1)

{

h165Value = Read74HC165();

if(h165Value != 0xff)

{

GPIO_LED = ~h165Value; //根据传出的串行数据来点亮相应的发光二极管

}

}

}

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

STM32与51单片机之间有什么差异呢?两者可以说是一场科技与性能的较量了。在科技飞速发展的今天,微控制器(MCU)已广泛应用于各类电子设备和系统中,发挥着举足轻重的作用。其中,STM32和51单片机作为两种常见的微控制...

关键字: STM32 51单片机 MCU

51单片机将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对51单片机的相关情况以及信息有所认识和了解,详细内容如下。

关键字: 单片机 51单片机

在嵌入式系统开发中,单片机是不可或缺的重要组成部分。其中,STM32单片机和51单片机是两种常见的单片机芯片。本文将对比分析这两种单片机的区别,并探讨STM32单片机的优势。

关键字: stm32单片 51单片机

51单片机是指由美国INTEL公司生产的一系列单片机的总称,这一系列单片机包括了许多品种,如8031,8051,8751,8032,8052,8752等,其中8051是最早最典型的产品,该系列其它单片机都是在8051的基...

关键字: 51单片机 串行通信

51单片机是一种常见的微控制器,它具有串行通信接口(Serial Communication Interface,SCI)。通过串口通信接口,51单片机可以与其他设备或系统进行串行通信,实现数据传输和控制。

关键字: 51单片机 串口通信

Pic单片机和51单片机是两种应用广泛的微控制器,它们各自具有不同的特点和优势,选择哪种单片机取决于具体应用需求。下面将对Pic单片机和51单片机进行详细的介绍和对比。

关键字: PIC单片机 51单片机 单片机

随着电子信息技术的快速发展,串行通信在各种应用中得到了广泛的应用。其中,51单片机作为一种常见的嵌入式系统,具有低功耗、高性能、易于编程等特点,常用于各种自动化控制、数据采集等系统中。而PC机具有强大的数据处理能力和丰富...

关键字: 51单片机 PC机 串行通信

51 单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说,只能接受或只能发送的称为单工串行;既可接收又可发送,但不能同时进行的称为半双工;能同时接收和发送的串行口称为全双工串行口。

关键字: 51单片机 串口通信 半双工

步进电机是一种无刷电机,可将电脉冲转换为机械旋转。顾名思义,它根据输入脉冲逐步旋转,是现代数字程序控制系统中的主要执行元件。

关键字: 51单片机 步进电机 无刷电机

1.ROM:只读存储器,单片机的只读存储区大多用于存储程序固又称程序存储器。

关键字: 51单片机 工作原理 电路
关闭
关闭