- 博客(48)
- 资源 (24)
- 收藏
- 关注
原创 图莫斯TOOMOSS上位机TCANLINPro使用CAN UDS功能时 编写、加载27服务dll解锁算法文件
软件安装目录下找到如下压缩包,此为dll文件示例工程
2025-03-19 23:22:47
301
原创 Windows双网卡冲突导致网页加载过慢的解决方法 (修改跃点无效 远程桌面连接)
这是因为笔记本和台式机的网口直连了但没有接入互联网,要访问公网只能通过WIFI。但是每次发起互联网请求时,总会先尝试走以太网接口这条链路,当发现走不通时才改道WIFI。
2025-02-07 18:20:11
800
原创 DC-DC FB分压电阻计算 (MP1584 SY8205为例)
FB处的分压电阻对输出电压进行分压,FB引脚获得0.6V或者0.8V。输出电压确定了,结合FB电压,就可以算出分压电阻的值。手册里面分压电阻都是用的很大的值,实测我们可以改用小电阻。不过最好还是用大的,手册里面这么推荐那是有它的道理。一般DC-DC芯片对输出电压的调节,是以FB引脚达到0.6V或者0.8V为止的,具体是多少需要看对应的手册。
2024-08-21 01:33:18
1276
1
原创 DLT645-2007智能电表通讯规约解析 读取数据实战
前导字节:作用是唤醒接收方,FE的个数不强求,各厂家自定,给某些电表发送前导码反而是不会回应的,请求数据时不发送即可。
2023-09-19 14:22:34
27404
25
原创 红外测温传感器MLX90614
printf("环境温度%f℃,物体温度%f℃\r\n\r\n", (float)MLX90164_data.Temperature_Ta[0] / 100, (float)MLX90164_data.Temperature_To[0] / 100);
2023-09-07 10:56:12
908
1
原创 ESP8266(RTOS SDK)内嵌网页以实现WEB配网以及数据交互
在路径ESP8266_RTOS_SDK\examples\protocols\http_server\simple\main下找到http服务器的实例代码,按照demo的方式,将文件注册,收到get请求之后将对应文件发出去
2023-08-13 11:40:06
1970
原创 单片机直驱两相四线步进电机研究
四拍正转,每个正脉冲转1.8°,360°/1.8°=200个脉冲转一圈。一次循环A+ B+ A- B-四个脉冲,循环50次即转一圈。
2023-08-13 00:27:09
1984
原创 ESP8266 SDK开发阶段无线WIFI本地烧录升级程序 -- FOTA
因为正在DIY一个WiFi计量插座,采用非隔离的方案,烧录时要拔掉220V插头,测试时要拔掉USB线,麻烦事小,万一两者同时插上烧坏电脑事大。于是想着调试阶段用无线的方式更新程序,也方便以后偶尔的升级需求,不需要把外壳打开。顺便还把FOTA这个功能学了。FOTA为了防止升级意外中断导致APP损坏,划分两个区域存放两份APP,轮流进行升级,由boot去记录应该升级哪个APP以及启动哪个APP,类似安卓的A B分区。这样做的代价是需要双倍的APP空间。
2023-06-05 02:31:16
1112
原创 不讲原理 位置式PID控温实例 实战 (NTC温度采集代码加PID控温代码)
此PID控温代码在STC8H上运行,摒弃了浮点运算,若是在32位单片机上,可根据需要改为浮点以提高精度。
2023-05-08 00:46:08
6236
8
原创 迪文串口屏(T5L2 & DGUS II)开发 -- 入门&项目实战经验总结
迪文屏资料零散,缺少说明,对新手极不友好,开发也不够灵活。迪文的官网是没多少有用的资料的,需要去论坛找。百度搜索“迪文开发者论坛”。如果后续开发有疑问,论坛中搜不到答案,则可以发帖提问,回复还是挺快的。或者找销售方加客服微信。以型号DMG13768C156_03WTC的串口屏为例,主芯片为T5L2,运行DGUS II系统。支持通过TTL / 232接口进行开发(PCB上短接预留焊盘切换为TTL)。
2023-04-27 13:42:09
20773
25
原创 8位单片机(51 STC8)C语言处理32位unsigned long型数据之计算出错
入门51没多久后就主攻32了,最近又搞起51,移植一个软定时器代码到STC8上,结果出现了奇怪的问题,而这种问题在各种32位单片机上都是不曾有的。有如下代码,实现了软定时器。使用内部IRC,22.1184MHz得到如下结果,相减的结果和打印的结果不一致变量指定到xdata区时,时不时会出现差值非常大但是实际只过了几百ms的情况变量指定到data区时,时不时会出现差值大于1000ms但是实际只过了几百ms的情况。
2023-02-28 18:06:35
3930
6
原创 自制DAPLink -- ARM官方源码以及STM32F103C8T6
随后找到stm32f103xb_stm32f103rb_if工程,和上面一致的操作,但是要修改IO_Config.h引脚定义文件。编译后在工程build目录下找到hex文件拖入到此虚拟U盘中,U盘名称将变为下图所示。DAPLINK运行成功
2023-01-27 17:05:05
15707
22
原创 使用Git工具上传项目代码到Gitee仓库
1、git init2、git remote add origin https...(即刚才新建的远程仓库的地址)3、git pull origin master 4、git add .5、git commit -m "第一次上传"6、git push origin master
2023-01-27 15:37:31
1903
原创 锐能微RN8209D开发记录及资料获取
如果供电使用MP150这种非隔离AC-DC芯片提供,并且按照典型电路设计,会导致板上的GND既不和零线也不跟火线直接连在一起,导致测量误差大。所以无论是隔离还是非隔离供电,板上GND都须和零线或者火线直接相连。
2023-01-03 14:42:15
3871
8
原创 ESP8266_RTOS_SDK 开发环境搭建 AiThinkerIDE_V1.5.2安装配置 编译 烧录
乐鑫官方不搞IDE,安信可搞了IDE,但是各版本之间安装配置有差异,还没有文档说明。官方安装配置教程不完全适用于新版IDE以及更新的SDK,就很乱。而有些第三方安装配置教程不标注版本信息,但不同版本的IDE或者不同版本的SDK安装配置是不一样的,所以这样的文章没有参考意义,也就是这个开发环境的配置教程是有时效性的,也许这篇文章日后也会随着官方资料的更新而过时。本文章只适用于 AiThinkerIDE_V1.5.2 以及 ESP8266_RTOS_SDK 3.0以上的版本(目前最新是3.4)。
2023-01-02 16:47:14
3195
6
原创 C# 学习之一:入门
加入等待窗口句柄创建完成的代码,可以有效防止程序打开时卡住。上面的多线程定时器直接操作控件可能会报跨线程的错误,所以可以利用委托去刷新
2022-07-02 23:25:21
498
原创 STM32/GD32 IAP/Bootloader升级APP研究以及编程实现、hex文件格式
Bootloader在前:单片机上电时先运行Bootloader,等待升级指令。无指令时计时,超时进入APP;有升级指令,则开始升级APP即接收升级数据写入Flash,写入完成后跳转APP。Bootloader在后:单片机上电时直接进入APP,运行过程中接收到升级指令后跳转Bootloader进行APP升级。升级完成后跳转APP。......
2022-05-12 19:48:02
10607
15
原创 STM32/GD32 Bootloader升级APP研究以及编程实现
Bootloader在前:单片机上电时先运行Bootloader,等待升级指令。无指令时计时,超时进入APP;有升级指令,则开始升级APP即接收升级数据写入Flash,写入完成后跳转APP。Bootloader在后:单片机上电时直接进入APP,运行过程中接收到升级指令后跳转Bootloader进行APP升级。升级完成后跳转APP。同样的,在APP中也可升级Bootloader,但一般不需要。
2022-04-26 19:23:29
4014
原创 VS Code配置 -- 不同工作区间/不同文件夹使用不同编码
如果设置默认编码为GB2312,那么如果某个工程文件夹里面的文件编码全是GB2312的,打开这个文件夹内的文件时会按GB2312编码去加载,没问题;但如果另一个工程文件夹里的文件编码是utf8,那这个时候还是以GB2312去打开就会乱码了。可以给每个文件夹单独设置编码来解决这个问题。一、依次点击 文件 -> 打开文件夹,打开工程文件所在文件夹二、点击左下设置图标 -> 点选设置点选上方的用户 / 工作区切换全局 / 局部配置 用户配置(全局配置) 工作区配置(仅作用
2022-04-15 19:41:21
4300
2
原创 Arduino API 开发 ESP8266 -- Arduino IDE的安装与配置
一、下载安装Arduino[ Arduino IDE 下载地址 ]二、安装ESP8266支持包[ ESP8266 API for Arduino ]1、Arduino安装完成并打开,在文件 > 首选项 的 附加开发板管理网址一栏中输入上图的地址 https://arduino.esp8266.com/stable/package_esp8266com_index.json 2、依次点击工具 > 开发板 xxx > 开发板管理器 输入ESP8266出现结果
2022-04-11 14:23:33
803
原创 OLED12864模块全屏缓冲刷新
一、全屏缓冲需要了解其驱动芯片SSD1306的RAM数据区和屏幕点阵的关系由数据手册得知SSD1306有8页,将屏幕纵向分成64 / 8 = 8个块每页有128个字节竖向排列代表128列以上图页2为例,要点亮第2页第0行第0列(屏幕16行0列)交叉的像素时,向第2页第0列写入0x01; 要点亮第2页第5行第4列(屏幕21行4列)交叉的像素时,向第2页第4列写入0x20;/* SSD1306 *//* COL0 COL1 COL2 COL3........COL127
2022-04-11 00:55:25
2943
1
原创 WIndows下搭建Qt开发环境 -- Qt 、Qt Creater 安装、配置
因Qt官方从Qt 5.15 开始不再提供离线安装包,须在线安装,在线安装器也能安装5.15之前的版本。所以根据版本和喜好选择安装方式。
2022-04-10 00:09:03
8918
原创 用Qt Creater开发时遇到的问题和解决方案
一、打开工程文件时提示"No Vaild Settings file could be found"解决方案:删除同目录下的.pro.user后缀文件二、编译时报错[Assignment needs exactly one word left hand sides,(command line)assignment needs exactly one word on the left hand ]解决方案:这个不一定是其它文章所说的缺少greaterThan(QT_MAJOR_VERSION,
2022-02-25 19:38:14
2817
原创 Visual Studio 拆分C#代码到多个cs文件
一、新建项目后,默认的文件 二、 在解决方案上右键选择添加一个类,重命名后点击添加三、 得到SP.cs文件 四、 Form1.cs文件内有2个控件,点击button1,成功输出OK字符串到textBox1using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;usi.
2022-02-18 20:07:40
4605
原创 集通字库芯片GT20L16S1Y 读取字体数据
/** * @brief * @note * @param None * @retval None * @author PWH * @date 2021/4 */int32_t GT20L16S1Y_Get_Addr_Ascii_7x8(char *asciiCode){ if (*asciiCode >= ' ' && *asciiCode <= '~') { return 0x66C0 + (*asciiCode - .
2021-11-02 00:55:17
8845
4
原创 公历转农历、生肖、干支纪年、节气算法研究和C程序实现
一、参考文章阳历转阴历算法概述1900年至2100年公历、农历互转Js代码农历的那些事儿(一)香港天文台农历数据(txt版)香港天文台农历数据(pdf版)二、关于农历查阅了大量关于公历转农历的博文之后,明确了:所谓的公历转农历算法即系基于查表法推算。因为农历数据需要天文台观测得到,且无明显规律,因此无法用公式将公历转成农历。要制表就需要公历 - 农历对照数据。这数据在国内网上公开并可被查询到的官方网站为香港天文台,仅此一家。都说内地仅紫金山天文台有发布农历数据,前几年也发布了农历国
2021-08-29 17:44:58
4154
6
原创 Node MCU / ESP8266运行Lua脚本从NTP服务器同步网络时间
--NTP服务器列表,可百度到NTP_SERVERS = { "ntp.aliyun.com", "time.asia.apple.com", "cn.ntp.org.cn", "time.windows.com", "cn.pool.ntp.org" } --[[以下为WiFi连接配置--]]
2021-08-11 20:09:26
1433
原创 ESP8266和Node MCU扫盲与开发入门
下图是网上出现最频繁的NODE MCU开发板,由ESP8266模块、USB转TTL芯片、5V转3.3V的LDO、自动下载电路等组成。ESP8266指的是乐鑫推出的ESP8266-EX芯片,用ESP8266-EX芯片和flash芯片等封装在一起便得到ESP8266模块。ESP8266模块的品牌一般分为乐鑫和安信可。这是淘宝上的图,此WiFi模块厂商为乐鑫这是本人根据上图开发板的开源图纸DIY的,此WiFi模块厂商为安信可...
2021-08-04 19:35:15
9413
原创 驱动VFD屏幕 / 真空荧光屏 (不完美)
偶然间看见VFD屏幕演示视频,被效果惊艳到了。于是在嘉立创下单了一块便宜的,型号是 HNV-06SC44T。但是到手之后才发现这东西要驱动起来电路很复杂,就搁置了。于是一年之后才下定决心把它驱动起来。手册中推荐的工作条件驱动类似于数码管一、VFD工作原理灯丝通电加热释放电子;栅极(图中1G - 6G)施加比灯丝电势高的电压,电子被加速向栅极运动;阳极(图中的段如a、b、c)施加和栅极相等的电压,电子最终将撞向阳极上的荧光物质;如果阳极施加比灯丝电势低的电压,电子将完全被栅极
2021-06-06 18:09:39
20301
3
原创 段码LCD研究 | 用HT1621B/STC8H4K64TLCD驱动段码LCD屏
这是一个从乐心血压计上拆下来的屏幕,有40个引脚,其中1和40、2和39、3和38、4和37在PCB上是连起来的,所以实际上是36个引脚。在其引脚上加电压,得到的不是数码管的效果。COM和COM之间加电压COM和SEG之间加电压查询了一番之后方得知这种屏是段码屏,引脚上有小黑点的是COM口,其它是SEG口。看这块屏上有5个脚上有黑点,但实测其中一个有黑点的是SEG脚。所以基本可以确定这块屏是4COM * 32SEG的屏。用数码管的思维驱动是没法驱动的,因为在任意两点加电压都会同时亮起
2021-06-03 19:52:53
11868
16
原创 单片机读取ID卡(EM4100卡)/ 125KHz RFID 曼彻斯特码 读卡程序
曼彻斯特码调制方式下,EM4100卡片每传送一位数据的时间是64个振荡周期。125KHZ载波时,卡片传送一bit数据理论频率为125KHz / 64 = 1.953125KHz。得一个周期为1 000 000us / 1.953125KHz = 512us。曼彻斯特码一个完整的数据跳变为一个周期(512us),存在空跳则半个跳变为半个周期(256us)...
2021-05-18 15:02:29
15389
12
原创 DIY一个USB集线器 --- FE1.1S
USB HUB芯片型号FE1.1S速率USB2.0购买地淘宝 深圳优信电子价格2019年购买时单片价格为1.42,现价11.6原理图PCB TOP LAYERPCB BOTTOM LAYER成品用了近两年,用以连接鼠标、键盘、U盘、串口模块、ST-Link等,至今正常工作。...
2021-05-16 01:39:56
9553
13
原创 FRAM铁电存储器FM25W256 | FM24CL04B | FM24CL16B编程实现读写存取数据
一、电路二、配置SPI/** * @brief 初始化SPI1 * @note SPI1_NSS -- PB12 * SPI1_SCK -- PB13 * SPI1_MI -- PB14 * SPI1_MO -- PB15 * @param None * @retval None * @author PWH * @date 2021/3 */void SPI1_Init(void){ RC
2021-05-02 13:30:15
4090
8
原创 TI公司16位ADC芯片 --- ADS1158 单端模式使用心得
以下为个人理解,如有不对的地方欢迎指正。一、电路单端模式采集16路模拟量电路二、SPI使用外接16M晶振时,SPI最高波特率为8M根据时序配置SPI/** * @brief 初始化SPI0 * @note SPI0_NSS -- PA4 * SPI0_SCK -- PA5 * SPI0_MI -- PA6 * SPI0_MO -- PA7 * @param None * @retval None
2021-05-02 12:51:00
8043
5
原创 AC7811系列 程序上禁用了SWD之后,复位引脚拉低再拉高下载不成功
在STM32上,如果SWD功能重定向为GPIO导致无法下载,则只需在点击下载前拉低复位引脚,点击下载的同时释放复位引脚就能下载。成功率没有百分百也有百分之九十。但是在杰发的AC781x上,这个方法行不通。参考了这篇文章后,我尝试了一下。将BOOT引脚拉,保持;使MCU复位;点击下载;下载完成后恢复BOOT0为低。实践证明这个方法可行。...
2021-04-23 13:27:17
722
原创 简述单片机的DMA转运数据原理和编程实现
在GD32F30x中,ADC0对应DMA0的通道0.在初始化了ADC0和DMA0_CH0后,ADC0每转换完规则组中的一个通道,将转换结果存至RDATA寄存器,并向DMA0发出请求。DMA0响应,从ADC0_RDATA寄存器读走AD值并存入我们预先开辟的一段内存空间(例如定义的一个数组)。ADC0继续转换规则组中的下一个通道,转换完成再次发起dma请求,直到该规则组所有ADC通道被转换完(使能了连续转换的例外)。ADC规则组举例说明作用:向规则序列寄存器写入该序列的待转换通道数量,并写入各个通道编号。
2021-04-21 16:22:39
1290
原创 GD32用ADC扫描模式+DMA传输 查询方式等不到EOC标志置位
按兆易创新官方文档 GD32F30x_用户手册_Rev2.5.pdf 编写ADC扫描规则组并开启DMA传输的程序。在软件触发转换之后,继续运行其它代码,隔一段时间查询一次EOC标志。查询到EOC标志位恒为0,但是DMA确已将数据搬运到定义的数组缓冲区中。所以这种方式不可行,改为查询FTFIF位,程序正常运行。猜想应该是DMA响应并转运ADC转换值寄存器数据,相当于程序读取了转换值寄存器。由于EOC标志位读后自动清零的特性,导致用查询方法查询不到其置位。...
2021-04-21 13:24:12
2085
1
原创 三菱PLC之Q02HCPU 通讯数据(读软元件)破译记录
当接到破译Q02HCPU的通讯协议任务的时候,我是很懵逼的,因为我对PLC一窍不通。虽然说能通讯上采得到数据就能破译,但是不知道该用什么软件和Q02H通讯,因为不懂plc,而这款plc的网络讨论却约等于零。搞了好几天之后才知道可以用QC30R2线缆连接电脑,电脑上安装GX Developer和Q02H通讯。QC30R2一头插PLC,另一头为RS232母头。因为我的笔记本没有RS232接口,所以我用一条USB-RS232转接线和QC30R2连接。但是搞了两三天,GX Developer和Q02H死活通讯
2021-04-17 18:35:28
2609
原创 STC单片机免冷启/自动下载原理&DIY免冷启烧录器(纯硬件版和软件版)
当我们在stc官方烧录软件点击下载时,烧录软件会以2400的波特率连续发送0x7f,同时ch340g的DTR和RTS引脚会拉低。于是我们就可以利用DTR或RTS引脚做一个纯硬件的自动烧录器。图1 纯硬件版原理图 1/2图2 纯硬件版原理图 2/2,接上图原理分析模块上电稳定后且没有下载命令时,DTR/RTS输出高电平,电容C11右端为高电平,NPN三极管Q2导通,Q1: pmos管si2301cds导通,目标单片机上电。当stc烧录软件发出下载信号时,DTR/RTS拉低,左
2021-04-05 19:33:25
12333
24
公历农历对照-待查错.xlsx
2025-03-23
使用AiThinkerIED开发ESP8266的资料
2023-01-02
段码屏驱动例程 HT1621B STC8H4K64TLCD
2022-07-16
Intel英特尔Hex格式官方文档
2022-04-25
字库芯片GT20L16S1Y和GT30L32S4W带地址运算版手册.rar
2021-09-21
Keil5MDK仿VS Code 的Monokai主题.prop
2021-09-16
NodeMCU Lua开发工具包(API文档 固件 烧写固件 Lua编辑器) 附Markdown编辑器.rar
2021-08-05
USB HUB 2.0 - FE1.1S.rar
2021-05-16
三菱PLC - Q02HCPU - RS232口通讯协议(读)(部分).zip
2021-04-08
STC免冷启烧录器DIY.zip
2021-04-05
CM-R HR202 温湿度DEMO硬件 程序 文档 调试上位机.zip
2021-02-17
CM-R湿敏电阻性能指标 阻值与湿度关系曲线.pdf
2021-01-27
FriendlyARM Mini2440用户手册(2011+2014)
2018-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人