树莓派(智能垃圾桶)

1.使用多模块封装多线程来实现整体的功能,首先是树莓派的管脚图,按照你定义或者规定的管脚将模块和树莓派:
(同时需要注意的是,初始化引脚时的wiringPiSetup()函数只需在主函数调用即可,重复调用会让程序崩溃掉)
树莓派(智能垃圾桶)_第1张图片
2. 舵机模块:
(控制它的占空比来控制它所转动的角度)
树莓派(智能垃圾桶)_第2张图片
3.1 oled显示模块:
(这里我是把温度和oled模块结合在一起,当作一个线程来调用,使温度显示在oled显示屏上)
树莓派(智能垃圾桶)_第3张图片
3.2 温度模块:
(读取文件中的摄氏度)
树莓派(智能垃圾桶)_第4张图片
4.电机模块:
(通过控制高低电平让电机转动,01或10转,00和11)
树莓派(智能垃圾桶)_第5张图片
5.超声波模块:
(为了实现避障移动,我在电机模块多封装了一个stop函数方便超声波模块调用)
树莓派(智能垃圾桶)_第6张图片
6.网络编程和多线程:
我将它们放在了主函数main中,网络连接成功后,3个线程一起跑,同时客户端发送wsad和q可控制电机转动!

你可能感兴趣的:(树莓派(智能垃圾桶))