内容正文:
物联网的终端设备
教师:李育海
时间:2025年9月
1
目录/CONTENTS
01
智能终端与开源硬件
02
智能终端的编程
03
智能终端的I/O引脚
04
实践操作与课堂练习
2
智能设备为何能“听懂”人话?
探索万物智能背后的“核心密码”
智能门锁
响应指令,实现智能化控制。
智能音箱
语音交互,连接云端服务。
共享单车
扫码即开,定位追踪。
这些设备的“大脑”都藏着一个共同的秘密: 物联网终端设备 ,它们是连接物理世界与数字世界的桥梁。
3
智能终端与开源硬件
01
4
终端:微缩版的“连接节点”
智能终端是以 单片机(MCU) 为核心的专用计算机,是物联网中连接物品与网络的关键节点。
核心特点
体积小、成本低、功耗低,可直接嵌入各种设备。
核心功能
负责数据采集、指令执行和初步处理。
Hi3716芯片
广泛应用于机顶盒
ESP32模块
小型Wi-Fi/蓝牙模块
5
开源硬件:创客的“创意工具”
公开设计资料,降低创新门槛,推动创客运动发展。
Arduino
源自意大利,版本丰富,社区庞大,是创客项目的首选。
行空板
国产开源硬件,集成彩屏和Wi-Fi,适合Python学习和物联网项目。
掌控板
专为教育设计,体积小巧,功能全面,易于上手。
6
智能终端的编程
02
7
编程方法:图形 or 代码,任选其道
块语言编程
图形化拖拽,易于上手,适合初学者快速入门。
代表软件: ArduBlock , Mind+
纯文本代码编程
语法灵活,功能强大,适合复杂项目开发。
代表软件: Arduino IDE , Python IDLE
8
Python控制智能终端:pinpong库
通过pinpong库,可以用Python代码轻松控制智能终端,实现“软”与“硬”的沟通。
核心原理
给智能终端烧录一个特定程序,使智能终端可以通过串口与计算机通信,进而执行各种命令。
编程流程
编写
编译
上传
执行
代码示例:OLED显示
from pinpong.board import Board
from pinpong.extension.handpy import * Board("handpy").begin()
oled.fill(0)
oled.DispChar("你好,中国!", 0, 0, 1) oled.show()
9
智能终端的I/O引脚
03
10
I/O引脚:沟通的“桥梁”
引脚(pin,常称为管脚、针脚)是指从集成电路(芯片)内部电路引出的与外围电路的接线,是智能终端与外接设备沟通的桥梁。通过引脚既可以读取外接设备的数据,也可以驱动外接设备,即实现数据信号的输入与输出。
输入 (Input)
读取传感器数据,如按钮状态、光线强度。
输出 (Output)
控制执行器动作,如LED亮灭、电机转动。
11
引脚四种模式,对应万千应用场景
数字输入 (Pin.IN)
读取高低电平,如 按钮 、 开关 。
模拟输入 (Pin.ANALOG)
读取连续电压,如 光线 、 温湿度 。
数字输出 (Pin.OUT)
输出高低电平,如控制 LED亮灭 。
模拟输出 (Pin.PWM)
输出模拟电压,如调节 LED亮度 、 电机转速 。
12
引脚读写操作:让硬件听你指挥
输入操作:读取世界
Pin.read_digital()
数字输入,返回 0 或 1。
Pin.read_analog()
模拟输入,返回 0~1023 或 0~4095。
输出操作:改变世界
Pin.write_digital(value)
数字输出,value 为 0 或 1。
Pin.write_analog(value)
模拟输出,value 为量化数值。
实例:按钮控制蜂鸣器
from pinpong.board import Board,Pin
import time
Board("handpy").begin()
button a=Pin(Pin.P5,Pin.IN)#引脚设置为数字输人buzzer=Pin(Pin.P6,Pin.PWM)#引脚设置为模拟输出
while True:
val a-button a.read digital()
if(val a==0):
buzzer.write analog(1000)
else:
buzzer.write analog(0)
time.sleep(0.1)
13
实践操作与课堂练习
04
14
实践:多语言点亮OLED屏幕
使用不同编程方式,在OLED屏上输出“物联网真有趣”,并记录你的体验。
块语言
拖拽图形块,直观易懂,上手最快。
Python
代码简洁,库丰富,适合快速开发。
MicroPython
直接运行在终端,性能更高,更底层。
15
拓展:光线传感器数据采集
编写程序,读取光线传感器的模拟输入值,探索不同光线环境下的数据变化。
实验记录表
外界光线状态 模拟输入数值
光线很弱 (如暗室) _________
光线中等 (如室内) _________
光线很强 (如阳光) _________
16
课堂练习:核心知识巩固
1. 下列属于开源硬件的是? B
A. 普通计算机 B. Arduino C. 智能手机 D. 智能电视
2. 用于实现智能终端引脚I/O控制的Python库是? A
A. pinpong库 B. json库 C. re库 D. MicroPython库
3. 要读取按钮的按下和弹起状态,引脚应设置为? C
A. 数字输出 B. 模拟输出 C. 数字输入 D. 模拟输入
17
$