esp32使用74HC165芯片读取外部并行信号
0 2348

esp32+74HC165.jpg



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import machine
from machine import Pin
import utime
 
CP = Pin(12, Pin.OUT)
CE = Pin(13, Pin.OUT)
PL = Pin(14, Pin.OUT)
Q7 = Pin(15, Pin.IN)
 
data=[]
 
p18=Pin(18, Pin.OUT)
p18.on()
 
# 禁用时钟
CE.on()
 
# 接收外部信号到芯片
PL.off()
# 给1毫秒时间让信号传输进芯片,防止锁定太快
utime.sleep(0.001)
# 锁定信号数据
PL.on()
 
# 启用时钟
CE.off()
 
# 数据长度 74HC165级联数*8
data_len=2*8
 
for in range(data_len):
    # 读取当前串口信号
    data_tmp=Q7.value()
    data.append(data_tmp)
    # 给时钟发射一个脉冲,准备下一位串口信号
    CP.on()
    CP.off()
 
print(data) # [1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0]


 评论
 站内搜索