74HC165应用
- 管脚定义与内部逻辑图



注1:其中控制管脚有3个:SH/LD-QH-CLK,CLK INH硬件接VSS,SER和QH'悬空
原理:先拉低SH/LD,A-H置入芯片内部寄存器中,然后拉高SH/LD,锁住A-H输入,然后拉低CLK,读取QH的值,读完后再拉高CLK,读取下一个输入端(A-H),最先读取出来的是H,故将依次读取出来的bit左移组成一个字节。
注2:165级联,父165QH--子165 SER,然后左移位16次,移出来的位先子后父,其中INPUT_BYTEH为父
RLCF INPUT_BYTEH
RLCF INPUT_BYTE
- 实例代码
;--------------------------------------------------------------------------------------------------
;******************************************************************************
;74HC165并转串读取 SHIFT_165
BSF P_165PL
CALL T4US_DELAY
BCF P_165PL
CALL T4US_DELAY
BSF P_165PL
CALL T4US_DELAY MOVLW D''
MOVWF TMP0_LSB
LOOP_165
BCF P_165SCL
CALL T4US_DELAY BTFSS P_165SDA
BRA LOW_165SDA
BSF STATUS,C
BRA RIGHT_SHIFT_165BYTE
LOW_165SDA
BCF STATUS,C
RIGHT_SHIFT_165BYTE
RLCF HC165BYTE
BSF P_165SCL
CALL T4US_DELAY DECFSZ TMP0_LSB
BRA LOOP_165
;==========================================================
END_SHIFT_165
RETURN
74HC165应用的更多相关文章
- I/O扩展篇(基于74HC164/74HC165)
在我们的单片机应用系统中,常常会遇到I/O口不够的情况.譬如说接有外部RAM而且要求有16个以上的按键,8位数码管以上的显示.而且还不包括其它的外围器件.这时整个系统的I/O资源就很吃紧了.系统的扩展 ...
- 用74HC165读8个按键状态(转)
源:用74HC165读8个按键状态 //-------------------------------------------------------------------------- //来源: ...
- 51单片机:IO口扩展芯片用法(74HC165,74HC595)
IO口扩展芯片,主要是解决单片机IO口太少. 74HC165:数据从并转串 74HC595:数据从串转并 两种芯片,都是通过时序电路,加上移位功能,进行数据传输 74HC165:数据从并转串.以下实例 ...
- 74hc165三片级联
3片74HC165进行级联,用于扩展IO口,读取外界设备的数据. unsigned int read_74165(void) { unsigned ; unsigned ; //三片74hc165,需 ...
- 用74HC165读8个按键状态
源:用74HC165读8个按键状态 源:74LV165与74HC595 使用 74LV165说明: 74LV165是8位并行负载或串行输入移位寄存器,末级提供互补串行输出(Q7和Q7).并行负载(PL ...
- C51 矩阵按键 个人笔记
矩阵按键 电路 每个按键一端和同行一端相连(JP4的高4位),另一端和同列一端相连(JP4的低4位) 判断按键是否按下: 法一:逐行扫描 for(int i = 8 ; i>3 ; i-- ) ...
- AVR单片机教程——开发板介绍
本教程使用EasyElectronics开发板: EasyElectronics是一款基于AVR单片机的开发板.AVR单片机是基于改进的哈佛架构.8~32位的一系列RISC微控制器,最初由Atmel公 ...
- AVR单片机教程——EasyElectronics Library v1.0手册
更新:EasyElectronics Library v1.1手册 索引: bit.h delay.h pin.h tone.h pwm.h uart.h adc.h led.h rgbw.h seg ...
- AVR单片机教程——小结
本文隶属于AVR单片机教程系列. 第一期挺让我失望的,是我太菜,没有把想讲的都讲出来.经常写了很多,然后一点一点删掉,最后就没多少了. 而且感觉难度不合适,处于很尴尬的位置.讲得简单,难的丢给库, ...
随机推荐
- 搭建简单的Habernate环境(一)
一.开篇 下载Habernate所需要的jar包和mysql驱动. 二.建立java项目并且导入所需要的包 三.建立实体类和配置映射文件 user实体类 package testPackage; pu ...
- paratest
class Program { static void Main(string[] args) { long result = 0; Stopwatch Watch = new Stopwatch() ...
- Guitar Pro中文版下载,你想要的,都在这啦!
我的音乐我做主!Guitar Pro7中文版的发布为更多音乐爱好者带来更多更优质的体验!为帮助所有吉他爱好者学习.绘谱.创作而设计的音乐空间!为前所未有的音乐盛听而震撼,音乐才子,等的就是你! Gui ...
- 谁说NTFS不支持UEFI启动的?启动U盘放不了超过4G的文件怎么办?Server2016 Win10 U盘UEFI启动制作方法
大家都知道,我们平时做启动盘,用得最多的就是UltraISO(软碟通)这个工具了.用它我们可以很简单快速的把一个空白的普通U盘制作成一个PE启动U盘或系统U盘,然后用它来安装系统非常的方便,受到了广大 ...
- day16 闭包以及装饰器(好东西)
目录 闭包 装饰器 最基础的装饰器 完善装饰器 有返回值的 有参数的 装饰器模版 语法糖 登录装饰器 可变类型的局部变量可以修改全局变量 三层装饰器 闭包 首先要理解函数对象的概念,其实函数名就相当于 ...
- luogu P4245 【模板】任意模数NTT MTT
Code: #include<bits/stdc++.h> #define setIO(s) freopen(s".in","r",stdin) # ...
- 【BZOJ5020】[LOJ2289]【THUWC2017】在美妙的数学王国中畅游 - LCT+泰勒展开
咕咕咕?咕咕咕! 题意: Description 数字和数学规律主宰着这个世界. 机器的运转, 生命的消长, 宇宙的进程, 这些神秘而又美妙的过程无不可以用数学的语言展现出来. 这印证了一句古老的名言 ...
- BZOJ 2141 排队 (三维偏序CDQ+树状数组)
题目大意:略 洛谷传送门 和 [CQOI2015]动态逆序对 这道题一样的思路 一开始的序列视为$n$次插入操作 把每次交换操作看成四次操作,删除$x$,删除$y$,加入$x$,加入$y$ 把每次操作 ...
- [LUOGU]3919 【模板】可持久化数组
用可持久化线段树维护可持久化数组.可持久化线段树见之前发的主席树模板 #include <iostream> #include <cstdio> #include <cs ...
- centos 登陆跳转指定目录
vi /etc/bashrc cd /usr/local 重启 reboot