74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料提供74HC165D/SN74HC165DR/74HC165/AIP74HC165中文资料_价格_PDF数据手册_引脚图及功能产品描述74HC165D/SN74HC165DR/74HC165/AIP74HC165 是一个 8 位串行或并行输

大家好,欢迎来到IT知识分享网。

提供74HC165D/SN74HC165DR/74HC165/AIP74HC165中文资料_价格_PDF数据手册_引脚图及功能

产品描述

74HC165D/SN74HC165DR/74HC165/AIP74HC165 是一个 8 位串行或并行输入/串行输出移位寄存器。该电路具有一个串行数据输入(DS),八个并行数据输入(D0~D7) 和两个互补的串行输出(Q7 和Q¯7)。当并行加载输入(PL¯)为低电平时,将 D0 到 D7 的数据异步加载到移位寄存器中。当PL¯为高电平时,数据在 DS 处串行进入寄存器。 当时钟使能输入(CE¯)为低电平时,数据在 CP 输入上升沿时移位。 CE¯上的高电平将禁用CP 输入。

其主要特点如下:

● 输入电平:

AiP74HC165: CMOS 电平

AiP74HCT165: TTL电平

● 异步8位并行加载

● 同步串行输入

● 工作环境温度范围: -40℃~+125℃

● 封装形式: DIP16/SOP16/TSSOP16

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

基础参数

逻辑类型: 移位寄存器

输出类型: 补充型

功能: 并行或串行至串行

工作电压: 2V~6V

工作温度:-40℃~+125℃

静态电流(最大值): 8uA

不同 V,最大 CL 时的最大传播延迟: 28ns@6V,50pF

低电平输出电流(IOL): 5.2mA

高电平输出电流(IOH): 5.2mA

逻辑电平-高: 1.5V~4.2V

逻辑电平-低: 0.5V~1.8V

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

交流参数

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

图1

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

图2

功能框图

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

逻辑符号

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

IEC 逻辑符号

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

功能框图

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

时序图

引脚图及功能

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

74HC165使用方法与级联程序

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

74HC165D/SN74HC165DR/74HC165/AIP74HC165最新中文资料

  LCD程序是采用wang1jin带您从零学单片机里面的1602程序修改。

  #include《AT89X52.H》

  #include“LCD.h”

  #defineuint16unsignedint

  #defineuint8unsignedchar

  #defineAUDIO_OUTP0

  ///////////////////////////////////////////////////////

  sbitHC165_CE=P1^1;//HC165控制端L有效

  sbitHC165_PL=P1^2;//HC165锁存引脚H高效

  sbitHC165_CLK=P1^0;//HC165时钟引脚

  sbitHC165_IN=P1^3;//HC165数据输出引脚

  uint8Address=0;//本地地址变量

  uint8Priority=0;//优先级变量

  ///////////////////////////////////////////////////////

  uint8LCD_DATA1[]={

  ‘0’,‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’,‘A’,‘B’,‘C’,‘D’,‘E’,‘F’

  };

  voidInit_INT(void);

  voidRead_HC165(void);

  voidmain(void){

  Init_INT();LCD1602();

  Init_Lcd();while(1){

  Read_HC165();

  Display_LCD_Byte(0,0,‘0’);

  Display_LCD_Byte(0,1,‘x’);

  Display_LCD_Byte(0,2,LCD_DATA1[Address/16]);

  Display_LCD_Byte(0,3,LCD_DATA1[Address%16]);

  Display_LCD_Byte(1,0,‘0’);

  Display_LCD_Byte(1,1,‘x’);

  Display_LCD_Byte(1,2,LCD_DATA1[Priority/16]);

  Display_LCD_Byte(1,3,LCD_DATA1[Priority%16]);

  }

  }

  ////////////////////////////////////////////////定时器初始化

  //////////////////////////////////////////////voidInit_INT(void)

  {

  TMOD=0x01;

  ET0=1;

  TR0=1;

  EA=1;

  TH0=0xF8;

  TL0=0xC5;

  }

  //////////////////////////////////////////////

  //读取优先级和本机地址

  //当执行本次程序时

  //函数会将165的信号优先级

  //以及本机的地址送到Priority和Address

  //////////////////////////////////////////////

  voidRead_HC165(void)

  {

  uint8i=0;//临时变量

  uint8BJ_Address=0;

  uint8BJ_Priority=0;

  HC165_CE=0;//打开165选通端

  HC165_PL=0;//允许数据进入165

  for(i=0;i《8;i++)//读8次数据

  {

  HC165_PL=1;//允许数据移位

  HC165_CLK=0;//低电平时读取数据

  if(HC165_IN)//数据高位在前

  {

  BJ_Priority|=0x80》》i;

  }

  HC165_CLK=1;//数据移位

  }

  for(i=0;i《8;i++)//读取下一个165的数据

  {

  HC165_CLK=0;

  if(HC165_IN)

  {

  BJ_Address|=0x80》》i;

  }

  HC165_CLK=1;

  }

  HC165_CE=1;

  HC165_PL=0;

  Address=BJ_Address;

  Priority=BJ_Priority;

  }

  #ifndef_LCD_H_

  #define_LCD_H_

  #include《AT89X52.H》

  #defineLCD_DATAP3

  sbitRS=P1^5;

  sbitRW=P1^6;

  sbitEN=P1^7;

  voidLCD1602(void);

  voidRead_Busy(void);

  voidWrite_Lcd(unsignedcharValue,biTI);voidInit_Lcd(void);

  voidDelay(unsignedinTI);

  voidDisplay_LCD_Byte(unsignedchary,unsignedcharx,unsignedcharValue);

  #endif

  #include“LCD.h”

  voidLCD1602(void)

  {

  EN=0;

  RS=1;

  RW=1;

  LCD_DATA=0xFF;

  }

  voidRead_Busy(void)

  {

  LCD_DATA=0xFF;

  RS=0;

  RW=1;

  EN=1;

  //while(LCD_DATA&0x80);

  Delay(100);

  EN=0;}

  voidWrite_Lcd(unsignedcharValue,biTI)//i=0写指令.i=1写数据;

  {

  Read_Busy();

  LCD_DATA=Value;

  RS=i;RW=0;

  EN=1;

  EN=0;

  }

  voidInit_Lcd(void)

  {

  Delay(15000);

  Write_Lcd(0x38,0);

  Delay(5000);

  Write_Lcd(0x38,0);

  Delay(5000);

  Write_Lcd(0x38,0);

  Write_Lcd(0x08,0);

  Write_Lcd(0x01,0);

  Write_Lcd(0x06,0);

  Write_Lcd(0x0c,0);

  }

  voidDisplay_LCD_Byte(unsignedchar

  y,unsignedcharx,unsignedcharValue)

  {

  y&=0x01;//y不能大于1x&=0x0F;//x不能大于15

  if(y)//是否显示在第二行;

  {

  x+=0x40;//显示在第二行,加0X40;

  }

  x+=0x80;

  Write_Lcd(x,0);//写入显示的位置

  Write_Lcd(Value,1);//写入显示数据}

  voidDelay(unsignedinTI)

  {

  while(–i);

  }

参考报价

深圳市灵星芯微电子科技有限公司以低本高质的服务精神屹立于电子行业20多年

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/88644.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信