- CPU针脚通常是指硬件芯片向外提供的接口方式,因为它使用针接口,所以称为针脚。CPU针脚是接口类型,CPU工作只能通过某个接口与主板连接。经过这么多年的发展,接口方式包括引脚、卡片、接触、针脚等。最常用的CPU的接口是针脚式接口,对应到主板上就有相应的插槽类型。
- GND它是电线接地端的简写。代表地线或0线。这个土地不是真正意义上的土地,而是出于应用而假设的土地。对于电源来说,它是电源的负极。
- VCC:电源(Volt Current Condenser);电源电压(双极装置);电源电压(74系列数字电路);声控载波(Voice Controlled Carrier);火线。
对照下表(图为网上下载),将红外传感器连接到树莓派。(目前有BOARD 编号系统、BCM 可以通过两种方式编号 RPi.GPIO 对 Raspberry Pi 上的 IO 编号针脚。
- 引脚,又称管脚,英文称Pin。就是从集成电路(芯片)内部电路与外与外围电路的接线,所有引脚都构成芯片接口。 GPIO的英文全称General-Purpose Input /Output Ports,中文的意思是通用的I/O端口。
- 在嵌入式系统中,许多结构通常需要控制外部设备或者电路,有些设备需要通过CPU控制,有的需要CPU提供输入信号。此外,许多设备或电路只需要开/关两种状体,例如LED亮与灭。使用传统的串口或并口来控制这些设备更为复杂。因此,嵌入式微处理器通常提供通用可编程I/O端口”,也就是GPIO。
- 一个GPIO端口至少需要两个寄存器,一个用于控制IO端口控制寄存器另一个是存储数据的通用I/O端口数据寄存器。每个数据寄存器都是和谐的GPIO的硬件引脚对应的,而数据的传递方向是通过控制寄存器设置,通过控制寄存器每个引脚的数据流可以设置。(GPIO相关寄存器包括,IOPIN、IOSET、IOCLR、IODIR四个寄存器。)
代码(python)
import time import signal #学过linux信号基础可能更容易理解,你可以看到我Linux信号介绍 import RPi.GPIO as GPIO #导入RPi.GPIO 模块 INFR_PIN=16#根据自己的连接方式确定 def sig_proc(signum, frame): print("Catch stop signal and program exit now...") exit() signal.signal(signal.SIGINT, sig_proc) #按键盘CTRL C从shell中发信号,信号给信号shell对应信号的默认操作是中断中前台运行过程 (INTERRUPT) 该进程。 signal.signal(signal.SIGTERM, sig_proc)# 终止进程 软件终止信号 def init(): GPIO.setwarnings(False) #禁止警告消息(可能) Raspberry Pi 的 GPIO 同时有多个脚本/循环。因此,如果 RPi.GPIO 检测到针脚被设置为其他用途而不是默认状态(默认为输入),并在尝试配置脚本时得到警告。) GPIO.setmode(GPIO.BOARD) ##指定使用的编号方法是BOARD GPIO.setup(INFR_PIN, GPIO.IN) #配置输入通道,无需输出与人体感应模块的交互 pass #pass 为了保持程序结构的完整性,是空语句。 def detct(): while True: if GPIO.input(INFR_PIN) == True: #如果读取GPIO针脚值为1,说明有人进来了 print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) " Someone is closing!" else: print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) " No one nearby!" time.sleep(1) init() detct() GPIO.cleanup()