自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 MicroPython Modbus library v2.3.7使用笔记1

1、线程:modbus slaver TCP协议,做电力仪表数据采集、处理、转发单元,配300个寄存器regs,二十几台表一次性轮询存入lista,再一次性写modbus slaver的set_ireg(0, lista)。modbus slaver TCP接收上位机查询,如果轮询完成正在写内存,一读一写会资源冲突么?2、中断:每3秒定时轮询电表,因为存在超时未完成情况,设置标志位,轮询未完成时,不进行新任务。

2025-03-28 11:57:07 241

原创 python连接oracle使用cx_Oracle模糊查询报错的处理方法

AND SNAME = 'ModBus.S08-DTU.DLYB2_2_Ps' (或者LIKE '%DLYB2_2_Ps%')2、模糊查询不能直接将平时用SQL查询工具软件能用的贴。1、Oracle区分大小写,单引号统一变大写处理;二、安装python第三方库报错处理。例如:SELECT *

2025-03-14 13:13:46 205

原创 MPY回调函数笔记

在Python中,回调函数是一种编程范式,其中将一个函数(回调函数)作为参数传递给另一个函数,而不是在那个函数中进行显式的调用。一旦特定的事件或条件满足,回调函数就会被调用。程序可以在运行时,通过登记不同的回调函数,来决定、改变中间函数的行为。这就比简单的函数调用灵活。回调 = 条件满足后回头再调。# 调用eat_food函数,并将wash_dishes函数作为回调函数传递。print("洗碗...")print("吃饭...")# 吃饭后执行回调函数。

2025-03-09 22:15:20 215

原创 MPY日志

使用mpy的logging模组记录日志_micropython 日志 debug-优快云博客文章浏览阅读367次。

2025-03-01 16:12:37 652

原创 MPY ESP32 BOOT.PY 网络与时间 定期检查

Wifi DTU同时实现ModbusSlaver从机和Master主机,boot.py铺垫网络连接和时间同步。内网NTP服务器,定时器周期性检查,故障重启单片机,需要记录512KB日志。

2025-03-01 15:40:01 126

原创 MicroPython单线程多路IO复用机制select实现TCPserver并发多连接

问题2:限制10个TCP连接到Slaver,连接多个TCP是没问题,但是多个Master会冲突啊,本来是一主多从的结构,现在有多个Master(例如modbus poll、kepware至少有2个Master)都想从同一个Slaver存取数据,怎么办啊?Windows Python: 提供: selectMac Python: 提供: selectLinux Python: 提供: select、poll、epoll注意:网络操作、文件操作、终..._python 详细select socket。

2025-02-08 15:24:37 841

原创 字节内的位序有2种排列选左低右高:micropython-modbus才能适配modbus poll、kepware、modscan

在Python中,你可以将字节(byte)转换为布尔数组(bool array),这通常涉及到将每个字节的每个位(bit)单独处理。一个字节有8位,你可以选择将每个位转换成布尔值,或者将整个字节转换成布尔值(例如,非零字节为True,零字节为False)。问题2:限制10个TCP连接到Slaver,连接多个TCP是没问题,但是多个Master会冲突啊,本来是一主多从的结构,现在有多个Master(例如modbus poll、kepware至少有2个Master)都想从同一个Slaver存取数据,怎么办啊?

2025-02-02 16:41:28 718

原创 电子积木:817光耦电压隔离板

电子积木实验板是可以的,商业化则需要PCB,PCB成本反而比电子积木贵好多,但生产时间短,也不需要组装,时间和效率就是金钱。后面可以驱动大功率三极管,MOS管等需要高电压驱动的场合,也可以直接驱动小功率的24V继电器工作。如果是脉冲信号,请注意,817的极限也就是4KHZ以下,大于4KHZ的控制信号请不要使用本模块,将会工作不正常。可以实现3.3V或者5V控制3.6---24V电压等级的接口,实现控制端导通之后,被控制端也会导通。在实际工作中碰到了需要隔离控制,并且电压转换的时候,会用到此模块。

2025-01-18 17:10:57 328

原创 JSON格式的小白理解

输出: <class 'dict'> {'name': 'John', 'age': 30, 'city': 'New York'}# 输出: <class 'str'> {"name": "John", "age": 31, "city": "Changsha"}# 打印更新后的JSON字符串 <class 'str'> 直接更新 py的str也是可以的,不过没有了dict的专业优势了。# 用汉字书写的文章比喻,json代表七言绝句格式,那这种体裁的这些个汉字就有专门的库方法简化处理了。

2025-01-17 08:29:07 170

原创 TCA9555 PCA9555 micropython ESP32 I2C Driver

网上有现成的PCF8575 micropython驱动,但网购PCF8575没有带LED灯的板子,有大量9555带16个LED灯的板子,11元的价格亲民,但没找到现成的驱动,I2C总线以前也没接触过,找了一天的资料学习。次日总算可以用I2C的i2c.writeto_mem直接测试了,如果你的控制需求简单,就不需要费力去写驱动了,以下供参考。

2024-12-29 09:45:28 426

原创 链路聚合报错:Command rejected (Port-channel): Either port is L2 and port-channel is L3, or vice-versa

报错意思是物理端口和链路聚合端口通道一个用了no switchport,一个没用no switchport,导致一个是二层,一个是三层端口,链路聚合与物理端口的配置必须完全一样才可以绑定。解决办法就是,进到物理端口,no sw,进到channel-group,no sw,这样就都关了二层交换功能。默认是二层聚合,无意中把聚合口no sw变三层了导致错误。命令被拒绝(端口通道):端口为L2,端口通道为L3,反之亦然。

2023-11-09 19:16:38 745 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除