![](https://img-blog.csdnimg.cn/02b0f9ce8f644a7fba3515ffe51e3b8f.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
树莓派
文章平均质量分 63
树莓派是个Linux个人电脑,Pico适合物联网的嵌入式开发,MicroPython是一个快速上手的编程语言。
申龙斌
70后老程序员一枚,精通C#,从事油田信息化,爱读书,5年多区块链经验,折腾过Basic, C/C++, Python, ObjectiveC, R, Python, Rust, 最近迷上了树莓派&Pico。
展开
-
树莓派66/100 - 用Pico W访问互联网
RSSI:信号强度(Received signal strength indicator),正常信号强度应为-40 dbm ~ -85 dbm之间,小于 -90 dbm 的信号则很糟糕,几乎无法连接。ssid:服务集标识,Service Set Identifier的缩写,通俗地说,是无线网热点的名称。树莓派Pico W的一个重要功能是可以连接WIFI,所以马上扫描一下附近的WIFI热点信号。bssid:48个二进制位,6个字节,可以理解为访问点的MAC地址。访问点的信息由6段信息的无组构成,说明文档。原创 2022-10-31 16:54:26 · 1749 阅读 · 0 评论 -
树莓派65/100 - Pico W初体验,点亮板载的LED灯
有一段时间没有折腾树莓派Pico,最近发现它又出新品了,树莓派Pico W,可以通过WIFI连接互联网了。Pico W的产品小册子可以。介绍了Pico 和 Pico W的区别。可以看到Pico中的树莓Logo处安装了一个大大的WIFI芯片(CYW43439),官方称提供 2.4GHz 802.11 b/g/n 无线连接,板子里已经集成了天线。我从某多平台上花62元买了一支,首先从点亮板上的LED灯开始。原创 2022-10-30 21:29:18 · 3929 阅读 · 1 评论 -
树莓派64/100- 在树莓派里安装MQTT服务器(mosquitto)
在树莓派里安装MQTT服务器比较方便,只需几个命令行即可原创 2022-01-11 09:37:16 · 926 阅读 · 0 评论 -
树莓派63/100 - NB-IoT模块SIM7020使用MQTT发布消息
NB-IoT设备定位于窄带应用,采用http协议总让人感觉代价有点大,所以MQTT的应用场景更为适合,它的报文很短,订阅者/发布者的模式也非常适合一对多的消息通知。MQTT基本原理不复杂,入门会比较快,看几篇文章即可,Pico里写几行Micropython代码就可发布MQTT消息。原创 2022-01-07 21:27:28 · 5329 阅读 · 0 评论 -
树莓派62/100 - NB-IoT的PSM省电模式
NB-IoT里的PSM省电模式(Power Saving Mode),T3412和T3324该如何设置?...原创 2021-12-17 09:29:00 · 4751 阅读 · 1 评论 -
树莓派61/100 - NB-IoT模块SIM7020的时间同步
在SIM7020模块中,用AT指令同步世界时间。原创 2021-12-10 14:58:35 · 3738 阅读 · 1 评论 -
树莓派60/100 - Pico连接物联网NB-IoT,给http网页发送POST请求
Pico连接SIM7020C模块,实现NB-IoT的窄带物联网应用,调用http post方法。原创 2021-12-09 14:15:08 · 4440 阅读 · 0 评论 -
树莓派59/100 - MicroPython上的轻量级的日志类
调试程序时,想输出详细的信息,为了排查错误,当正式运行时,只想输出关键的错误信息,需要用到日志类,比常规的print()的写法更容易维护一些。原创 2021-12-08 21:55:14 · 394 阅读 · 0 评论 -
树莓派58/100 - Pico物联网应用NB-IoT,获取http网页数据
Sim7020C模块与Pico连接,用micropython编程,读取天气预报网页的数据原创 2021-12-06 10:08:49 · 1087 阅读 · 0 评论 -
树莓派57/100 - Pico连接物联网NB-IoT,跑通基本AT指令
最近有一个项目想在工地里监控一个物品的异常情况,这种东西用3.7V电池要能够待机20~30天,平常情况下几乎是静止状态,受旁边干扰会有少许震动,当有较大的移动时,要能够发出报警,还能发出位置信息,让管理人员快速掌握最新情况。最初想用2G短信的办法解决,但几大运营商都在关停2G网络,这种技术可能不太可靠。想用日常用的3G/4G技术,但这种连接方式功耗太大,待机能有几天就不错。最后想到了NB-IoT,窄带物联网,技术挺新,功耗低,通讯频率和速度较低,能够满足物联网里一些传感器定时传送少量重要参数的需求。我原创 2021-12-03 22:46:32 · 3308 阅读 · 0 评论 -
树莓派56/100 - 用Pico连接蜂鸣器演奏音乐,用来纪念儿时玩的超级玛丽游戏
只用一个无源的蜂鸣器,也可以演奏出美妙的音乐。原创 2021-11-30 21:45:33 · 5548 阅读 · 2 评论 -
树莓派55/100 - 时钟模块里还有一个AT24C32N芯片,能够离线保存一点数据
DS1307模块里还有一个小芯片,AT24C32N,它可以在断电的情况下保存32K 二进制位(32768位,4096字节)的数据,虽然空间非常有限,但将来可以保存一些重要的系统初始化信息。原创 2021-11-28 18:04:31 · 627 阅读 · 0 评论 -
树莓派54/100 - Pico连接DS1307时钟模块,做个实时数字钟
树莓派Pico内置有时钟模块,但掉电之后无法保存精确的时间,如果对于时间有比较高的要求,则要外购实时时钟模块,就是常说的RTC模块,常见的有三种型号:DS1302、DS1307和DS3231,这里研究DS1307型号的micropython编程,在树莓派Pico里实现了实时时钟显示。原创 2021-11-27 21:19:02 · 3608 阅读 · 3 评论 -
树莓派53/100 - Pico小车v4版本,蓝牙、陀螺仪之后,再加上OLED显示屏
我的树莓派Pico小车接上了蓝牙、陀螺仪之后,今天再把OLED显示屏接上,OLED的电源是3.3V,SDA/SCL分别接GP4/GP5,代码增加一些。原创 2021-11-24 22:10:59 · 1019 阅读 · 0 评论 -
树莓派52/100 - Pico小车v3版本,接上了陀螺仪
树莓派Pico小车,接上蓝牙,再接上陀螺仪。原创 2021-11-23 22:30:55 · 1144 阅读 · 0 评论 -
树莓派51/100 - Pico下用MicroPython在ssd1306上显示汉字
Pico下用MicroPython编程在ssd1306芯片上显示英文很方便,但如何显示中文呢?直接用oled.text()函数是无法显示中文的,因为系统里没有中文字体的点阵字库,一种常用的办法就是利用framebuf把汉字的字模准备好,用blit()函数直接画出汉字。如果你不怕麻烦,可以自己把汉字画出来,比如下面这个“龙”字,用16x16点阵表示出来,需要32个字节。字模有了,用blit()函数直接把它显示出来即可。import machineimport ssd1306import fram原创 2021-11-20 17:25:17 · 2938 阅读 · 3 评论 -
树莓派50/100 - Pico上实现OLED显示屏的I2C接口的micropython编程
OLED小显示屏,128*64点阵,IIC接口,用别人写好的ssd1306 for micropython类库,非常容易显示英文字符,还可以画线、矩形等,显示图片。原创 2021-11-17 20:49:06 · 4081 阅读 · 7 评论 -
树莓派49/100 - Pico上实现DHT11温湿度传感器的PIO汇编程序
树莓派Pico里的PIO(Programmed I/O)编程,DHT11/DHT22了可以用PIO来实现,代码稍微有点难懂,但可以更深刻地理解PIO的原理和逻辑,也可以深刻理解DHT11的一根线的通讯协议。原创 2021-11-14 13:19:32 · 2330 阅读 · 2 评论 -
树莓派48/100 - 深入研究WS2812彩灯PIO汇编程序
在WS2812B(国外叫它Neopixel)在树莓派Pico的PIO编程里,sideset、shiftdir,autopull,pull_thresh等概念,汇编指令的含义详解。原创 2021-11-11 12:53:35 · 2157 阅读 · 0 评论 -
树莓派47/100 - 用PIO的out指令控制七段数码管
PIO里的汇编语句只有9条,但能组合出很多强大的功能,OUT指令用来从OSR寄存器里移出 Bit count 个二进制位的数据,把这些位写进 Destination 里,可以一次性设置许多引脚的电位。原创 2021-11-09 18:24:49 · 1007 阅读 · 0 评论 -
树莓派46/100- 再探Pico里的PIO(Programmable I/O),看懂PWM里的汇编代码
关于树莓派Pico里的PIO(Programmable I/O)虽然只有9条指令,功能非常有限,但代码并不容易看懂,更不容易编写了。官方给出的用PIO实现的PWM函数,理解起来并不容易。原创 2021-11-07 12:37:14 · 3887 阅读 · 4 评论 -
树莓派45/100 - 用蓝牙控制Pico小车
树莓派Pico做了一个自动驾驶小车,连接上蓝牙,可以用手机控制它的移动了。原创 2021-11-03 18:00:37 · 2810 阅读 · 3 评论 -
树莓派44/100 - 先让Pico小车跑起来再说
树莓派Pico加L293D,让小车先跑起来再说。原创 2021-10-31 12:24:43 · 3046 阅读 · 6 评论 -
树莓派43/100 - 深入研究PIO中的指令周期
PIO里的指令周期可以精确控制,需要一定的汇编语言知识。原创 2021-10-29 21:10:39 · 1348 阅读 · 1 评论 -
树莓派42/100 - 初识Pico里的PIO,更高级的办法让小灯闪烁
PIO是指可编程I/O(Programmable I/O),Pico里的微控制器虽然能干不少事,但与某些复杂的高级外设交互仍有点吃力,这就要用到PIO块来构建我们自己的外设的能力。这里还要用到状态机的概念,状态机就像一个功能很弱的微处理器,它负责从Pico的指令存储器里取出指令并执行。构建我们的PIO状态机的时候,还用到一些汇编语言的知识。原创 2021-10-28 20:15:26 · 4320 阅读 · 3 评论 -
树莓派41/100- Pico控制触摸开关模块TTP223
用Pico连接TPP223芯片的触摸开关,控制设备起停更方便。原创 2021-10-27 20:19:54 · 1486 阅读 · 0 评论 -
树莓派40/100 - Pico控制WS2812B,一根信号线实现多种LED灯光效果(1)
从某多平台花了15元钱买了一米长30颗的WS2812B彩灯,用于我的Pico编程试验,这种灯的神奇之处在于只需一根信号线,能够控制串联在一起的LED灯珠(好像能长达1024颗灯),实现各种彩灯效果。原创 2021-10-26 20:37:55 · 4153 阅读 · 5 评论 -
树莓派38/100 - Pico与蓝牙模块HC-06进行串口通讯,AT模式有好多坑
蓝牙模块HC-06进行AT模式有些坑,需要满足3个条件:(1)波特率38400,注意,不能是9600(2)蓝牙模块不能被手机等其它设备配对(3)一直按着小按钮不松,给蓝牙模块加电原创 2021-10-25 20:28:58 · 1464 阅读 · 0 评论 -
树莓派37/100 - Pico连接蓝牙模块HC-06
手机连接蓝牙,树莓派Pico连接蓝牙模块,用手机控制LED小灯的开关。原创 2021-10-23 09:06:46 · 8665 阅读 · 0 评论 -
树莓派36/100 - PCF8591数模转换器+光敏、热敏传感器
树莓派Pico连接数模转换器PCF8591T。原创 2021-10-20 23:03:06 · 1992 阅读 · 3 评论 -
树莓派35/100 - 用graphviz画逻辑电路图
画逻辑电路示意图很麻烦,程序员还是用程序员的办法来画图,用代码生成图形是最理想的,将来维护很方便,稍微修改一下,就可以生成另一张图。最后,我选中了Graphviz。原创 2021-10-19 12:56:57 · 1964 阅读 · 0 评论 -
树莓派34/100 - Pico读取MPU6050加速度和陀螺仪传感器数据
树莓派Pico连接MPU-6050模块(三轴陀螺仪+三轴加速度),读取运动姿态数据。原创 2021-10-17 21:36:14 · 3775 阅读 · 8 评论 -
树莓派33/100 - Pico控制直流小马达,为智能避障小车提供动力
用树莓派Pico控制直流小电机,需要L293D芯片,编程不复杂,再利用PWM技术,可以控制转速,最后实现正转反转的效果。原创 2021-10-16 15:35:35 · 3001 阅读 · 0 评论 -
树莓派32/100 - Pico连接温湿度传感器
DHT11是一个廉价的温湿度传感器,接线很简单,除了正负极之外,只需再用一根信号线与Pico相连,就可以获取温湿度数据。原创 2021-10-15 20:31:17 · 1702 阅读 · 13 评论 -
树莓派31/100 - Pico连接HC-SR04超声波传感器,为自动避障智能小车打好基础
超声波传感器,英文ultrasonic sensor,既可以发射超声波,也可以接收超声波,它有一个重要作用,可以提前探测到附近的物体,而且通过声波速度,能够推算出附近物体离传感器的大概距离。HC-SR04是一种非常流行的、很便宜的超声波传感器,非常适合进行嵌入式编程的技术试验,它是智能避障小车的一个关键部件,可以提前发现小车前方的障碍物,相应做出转弯或后退的动作。原创 2021-10-11 21:56:17 · 6814 阅读 · 4 评论 -
树莓派30/100 - 光敏电阻器
光敏电阻器(photoresistor)又叫光感电阻,它的电阻值会根据光的强度变化而变化。用树莓派Pico很容易读出它的数值,并控制LED灯的亮度。原创 2021-10-09 21:54:33 · 1212 阅读 · 0 评论 -
树莓派29/100 - 树莓派接上Kindle的墨水屏是什么体验?
前一阵子在Pico上接1602小显示屏,后来我想,手里有一个闲置的kindle paperwhite,能接上kindle的墨水屏吗?动手谷歌了一下,折腾了一天多,终于把我的raspberry pi连接kindle墨水屏成功了。整个过程也是相当艰难曲折。第一步:Jailbreak Kindle我的kindle是第五代,序列号B024开头,最新的固件停留在5.6.1.1,不能升级为更高的官方版本了。先要理解一下相关术语,这里应该算是Kindle Hack的大本营,有许多基本概念和缩写要了解。比如:K原创 2021-10-07 16:26:11 · 2675 阅读 · 0 评论 -
树莓派28/100 - Linux中的screen用法
linux可以用screen与朋友共享屏幕内容。原创 2021-10-07 11:20:43 · 476 阅读 · 0 评论 -
树莓派27/100 - Pico读取电位器数值
电位器英文是Potentiometer,通俗上也简称 Pot,少数直译成电位计,中文通常又称为可变电阻器(VR,Variable Resistor)或简称可变电阻,用Pico可以很容易用ADC数模转换读取它的数值。原创 2021-10-05 19:46:39 · 1530 阅读 · 0 评论 -
树莓派26/100 - Pico控制RGB三色灯
RGB三色LED灯,相当于把三种颜色的LED灯组合在一起,它有4条腿,长的那条腿是阴极或阳极,要接三个电阻,可以用micropython编程让灯发出不同颜色的光。...原创 2021-10-04 15:00:44 · 1851 阅读 · 0 评论