自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Little Luck

愿许春风知我意,散我心中意难平

  • 博客(138)
  • 问答 (1)
  • 收藏
  • 关注

原创 说说这三年的感受(2021~2023)

这几年给我的感受非常不好,也许是30岁之前的见识短,转眼从23岁入行到现在,10年岁月眨眼而过,人来人往 ,遇到过贵人,也跌入过低谷,徘徘徊徊向前走...

2023-08-10 19:51:44 144

原创 JS实现坐标系转换(wgs84、bd09ll、gcj02)百度、GPS、高德、腾讯地图相互转换

实现坐标系转换(wgs84、bd09ll、gcj02)百度、GPS、高德、腾讯地图相互转换

2022-10-17 11:08:10 7458 3

原创 vb.net 物联网助手exe 软件重构

1. TCP Server 线程监听2. 串口数据监听3. 定时器 1分钟1次 历史记录保存4. 参数超过上限或下限值后,触发执行操作5. 实时日志查看6. 支持 参数配置 和 操作配置 ( 可远程配置后一键下载 )软件界面:软件代码:Imports System.Net.SocketsImports System.NetImports System.TextImports System.ThreadingImports System.IOImpor...

2022-02-16 10:01:11 5088

原创 HbuilderX 竖屏切换横屏后,返回点击其他页面,字体变大样式乱的解决方案

HbuliderX 竖屏切换横屏后,返回点击其他页面,字体变大样式乱的解决方案

2022-01-14 23:03:36 1853

原创 JAVA 线程延迟的几种操作

我们常用的延迟操作,在JS或者python 3中有异步操作,处理这种问题是比较简单,在java中也有几种异步处理操作的方式,这里我们来看一下几种操作第一种,主线程直接延迟 1秒System.out.println("主线程 -> 1");try { Thread.sleep(1000);}catch (Exception e){}System.out.println("主线程 -> 2");//do something这种方式不适用与并发高的操作,当多个并发同时访

2021-09-24 10:06:53 12745

原创 Sketchup 外壳设计之方盒

3D打印机打印出来,效果还是非常棒的,外壳1.5以上的厚度,就会有不错的坚固性,密度相比注塑低,比塑料的柔韧性差,外表的抛光度差。好在价格低,非常不错!

2021-08-30 11:30:01 601

原创 STM32 Cube ADC DMA 多通道扫描实现多个模拟量取值

一。使用 DMA由于常规通道组只有一个数据寄存器,因此,对于多个常规通道的转换,使用 DMA 非常有 帮助。这样可以避免丢失在下一次写入之前还未被读出的 ADC_DR 寄存器中的数据。 在使能 DMA 模式的情况下(ADC_CR2 寄存器中的 DMA 位置 1),每完成常规通道组中的 一个通道转换后,都会生成一个 DMA 请求。这样便可将转换的数据从 ADC_DR 寄存器传输 到用软件选择的目标位置。 看下面这张图说明了,从ADC转换到Chanel的过程!当...

2021-07-18 18:10:21 1390 19

原创 STM32 Cube ADC 测量土壤湿度

一 。说明本来想买个温湿度模块,结果买了个湿度 - _ - !1. 什么是AD转换AD转换是把离散的模拟量转换为数字量的过程,其原理就是使用单片机的高频率和时钟来采样x轴的点样,根据电压的变化使用曲线函数来获取y轴数字值的过程,我们叫做AD转换2.如何确定AD采样的位数,并知道电压值如果单片机的的ADC为12位,那么它的最大值为4095。单片机在进行AD转换前需要先设置一个参考电压。假如把参考电压设置为5V,5V=4095,0V=0;根据这样的关系,我们就可以把模拟电压进行数字化了。比如

2021-07-16 22:43:58 3011 8

原创 STM32 Cube ADC MQ135测量空气质量和氨气PPM

一 。说明1. 什么是AD转换AD转换是把离散的模拟量转换为数字量的过程,其原理就是使用单片机的高频率和时钟来采样点样,根据电压的变化使用拟合曲线来获取数字值的过程,我们叫做AD转换2.如何确定AD采样的位数,并知道电压值如果单片机的的ADC为12位,那么它的最大值为4095。单片机在进行AD转换前需要先设置一个参考电压。假如把参考电压设置为5V,5V=4095,0V=0;根据这样的关系,我们就可以把模拟电压进行数字化了。比如:2V=2/5*4095=1638。3. 什么是A0 和

2021-07-15 23:47:05 6212 11

原创 VB 实现485物联网环境数据采集上位机EXE

1.界面效果2. VB代码' @author qiyulin @date 2021.07.07 VB实现物联网EXE客户端上位机软件Option ExplicitPrivate CONF(100) As StringPrivate showLog As IntegerDim labels(100) As ObjectDim names(100) As StringDim timer_index As Integer Private Sub GetAvaila.

2021-07-07 20:34:00 2098 9

原创 STM32 Cube BMP180 获取温度、气压、海拔

一. 介绍BMP180中内置有E2PROM,所以要获取数据,就要使用I2C读写E2PROM来实现获取数据!BMP180的整个流程:1. 首先要初始化,读取几个E2PROM地址上的值共11个,用于温度和气压的计算2. 读温度:(1)使用:0xEE 写入操作,向地址:0xF4 ,数据:0x2E 。 表示:我要读温度啦 (2) 等待 5ms (3)使用:0xEF 读取操作,从0xF6,0xF7 上读取:温度未转化值3. 读气压...

2021-07-04 02:38:24 2369 14

原创 STM32 Cube I2C 获取BH1750光照值

用AT89C51 要使用单片机的IO口来模拟上升沿和下降沿,没接触Cube HAL库,自己做模拟太麻烦了!现在我们来学习一种更简单的方式,先让我们看如下2段I2C的写入操作!一。介绍1. BH1750我们用STM32 cube 库, 这里ADDR接地!2. E2PROM 24C02我们观察 BH1750写命令和 24C02的数据写入,我们发现在24C02 比 BH1750 少 一个数据 + ACK比较:看上边这2个写入指令,分别是HAL库里的 2个I2C的方法!

2021-06-30 16:03:52 1019 7

原创 STM32 Cube 发送和接收485数据

1.说明发送485数据和串口数据是不同的,刚入行一直以为是相同的只是电平的信号可能不同发送485数据,需要对发送和接收的RE和DE进行使能操作,来决定发送有效,还是接收有效,也就是需要单片机的IO来控制数据的流向!发送串口数据(TTL),直接RX和TX反接线即可这里既然知道了485和串口的区别,那么发送485之前一定要看下电路的原理图是怎么接线的例如:这里PB0 - DE,PB1 - RE , PB10和PB11接的TX和RX2.看原理图那么我们分析下, 当DE和R...

2021-06-21 23:11:40 4857 1

原创 STM32 Cube 串口数据发送和接收

1. 选择芯片,配置串口引脚

2021-06-20 21:16:25 2034 3

原创 8051/2单片机 DHT11 空气温湿度传感器取值

一、说明对各种信号的处理的经验很重要!DHT11温湿度取值每1次数据传送为40bit,其中8bit的湿度整数,8bit的湿度小数,8bit的温度整数,8bit温度小数和8bit的校验码

2021-06-05 14:20:05 648 2

原创 8051/2单片机常用的本地通讯方式 UART,RS485,I2C,SPI 之 SPI 25AA040A 读写 E2PROM 4

欲速则不达,还是要慢一点,再慢一点~PART3SPI(SCLK,SDO,SDI)全双工*SCLK时钟*SDO(MOSI)数据输出*SDI(MISO)数据输入*8051SPI和I2C一样也是需要用IO模拟*SPI总线传输共有4种类型,*CPOL位,高电平为:1,低电平为:0*CPHA位,边沿,先读后写:0,先写后读:1*传输时候,先传输高位再传输低位**实验程序采用SPI串行总线的EEPROM,25AA040A...

2021-06-03 10:23:48 976 2

原创 8051/2单片机常用的本地通讯方式 UART,RS485,I2C,SPI 之 I2C E2PROM 3

单片机IO使用E2PROM24C02C规定1.起始信号保持时间Thd:sta>4us2.起始信号的建立时间Tsu:sta>4.7us3.SCL低电平持续时间Tlow>4.7us4.SCL高电平持续时间Thigh>4us5.停止信号的建立时间Tsu:sta>4us...

2021-06-01 12:15:16 396

原创 8051/2单片机常用的本地通讯方式 UART,RS485,I2C,SPI 之 Modbus 485 2

一 ,单片机串口通讯1.串口UART,波特率:9600接设备的时候,一般只接GNDRXTX,不会接Vcc,避免与目标设备上的供电冲突。1.1RS485标准(+2V~+6V:1/-6V~-2V:0)1.2RS232标准(-15V~-3V:1/+3V~+15V:0),需要MAX232进行电平反转后,才能与MCU进行通讯1.3TTL标准(2.4V--5V:1/0V--0.5V:0)————————————————版权声明:本文为CSDN...

2021-06-01 12:12:11 602 2

原创 8051/2单片机常用的本地通讯方式 UART,RS485,I2C,SPI 之 UART串口通讯 1

1.UART串口通讯*1.串口UART,波特率:9600*接设备的时候,一般只接GNDRXTX,不会接Vcc,避免与目标设备上的供电冲突。*1.1RS485标准(+2V~+6V:1/-6V~-2V:0)*1.2RS232标准(-15V~-3V:1/+3V~+15V:0),需要MAX232进行电平反转后,才能与MCU进行通讯*1.3TTL标准(2.4V--5V:1/0V--0.5V:0)...

2021-06-01 12:09:15 544 2

原创 8051/2单片机基础 实现开关,驱动2位的共阳极数码管显示小数,驱动喇叭播放音乐

1.实现开关,开关2次后,LED闪烁4次2.实现驱动共阳极数码关显示3.13.驱动喇叭播放,dao,re,mi,fa,sao,la,xiC代码:/*** 8051 DEMO 2* 1. 实现开关,开关2次后,LED闪烁4次 * 2. 实现驱动共阳极数码关显示 3.1* 3. 驱动喇叭播放 ,dao,re,mi,fa,sao,la,xi* 8051 规定中断号如下* INT0 中断号 0* INT1 中断号 2* T0 中断号 1* T1 ...

2021-05-16 14:05:20 896 2

原创 8051/2 单片机基础 LED闪烁,蜂鸣器,数码管驱动,独立按键,中断,定时中断,串口通信

从软件转硬件路总是很艰难,各种电路知识,3个多月了,现在总算是入门了。AT 8051/21.驱动LED闪烁2.驱动蜂鸣器进行响动3.驱动共阳级,单数码管,0—9 变化(MPX1-CA) - 使用8排阻 + NPN三极管4.驱动共阴级,但数码管,0-9 变化(MPX1-CC) - 使用芯片74HC245 + PNP三极管5.独立按键,控制单片机,并点亮/熄灭LED6.中断,控制点亮/熄灭LED - INT0 , INT17.定时中断,控制点亮/熄灭LED - T0 , T18.串口通信..

2021-05-08 22:50:04 1620 12

原创 汉枫HIS 实现LED屏幕本地传感器采集并显示

HF汉枫 DTU ,HIS脚本大小,大小不超过10K!要处理8个以上的参数值,就会特别吃力,需要不断的优化脚本!还是不建议用HF来实现本地转发,逻辑的处理对DTU的考验还是比较大的!同时里边还有大量的异或运算!以下脚本仅作参考和学习cmd01=[0x03,0x03,0x00,0x00,0x00,0x01,0x85,0xE8]cmd02=[0x04,0x03,0x00,0x00,0x00,0x01,0x84,0x5F]cmd03=[0x05,0x03,0x01,0x05,0x00,0x0..

2021-04-15 17:21:27 511 2

原创 获取一个字符出现的次数

获取 ? 号出现的次数String str = "insert into sys_test (id,name) valeus (?,?)";int count = sql.length() - sql.replaceAll("\\?","").length();

2021-04-08 09:31:55 118

原创 元器件选型

一. 元器件电压电流测量1. 首先要知道每个元器件工作的电压和电流,从而知道电阻,我们需要用到电流,电压表 或者 万用表 对元器件进行测量2.红LED, 电压1~2v, 电流 1mA-30mA ,正常亮度:2V,6mA黄LED, 电压1.8~2.2v, 电流 1mA-30mA ,正常亮度:2V,6mA绿LED, 电压1.9~2.2v, 电流 5mA-50mA ,正常亮度:2V,10mA草帽白LED,电压2.8~3.1v,电流 2mA~38mA,正常亮度,2.8V,26mA蜂鸣器:电压

2021-03-15 11:25:49 2197

原创 Linux 压缩和解压缩

tar压缩文件夹tar -cvf dir.tar dir1解压缩tar -xvf dir.tartar.gz压缩文件夹tar -zcvf file.tar.gz file1解压缩tar -zxvf file.tar.gz

2021-02-20 12:02:36 91

原创 软件基础架构近10年的变化

我印象里记得13年以后,还在捣鼓公司服务器的东西,安装虚拟化环境,那时候按照下边这张图来算的化应该叫On - Premises,时间界定可能不太清除给一下几个时间点2013年以前,On-Premises , 本地部署!2013以后,IaaS/PaaS/FaaS,阿里云崛起,云服务器的到来!以后的发展 Serverless 一定是发展的方向,只专注函数和业务处理,不再考虑吞吐量,带宽,存储等等!框架,编程语言,在PaaS架构之前还是有些作用,当 FaaS / Serverless 大面积普及.

2021-02-20 10:09:36 185 4

原创 我职业生涯的第7年( 2020年 )

2020年是不平凡的一年,这一年平凡的我遇见了可以陪我走过余生的人,我们就是这么自然而然的领证结婚,并没有浪漫求婚,我觉得感动她的是我始终站在她的立场考虑,知道这么多年她的不容易,她也理解我这么多年苦。从事这个行业的第7年,没有太高的起点,来到这个城市从一无所有到有了自己的家庭,用7年的时间,让自己融入这座城市,和本地人有个相同的起点。19年算是软件行业的巅峰时期,在这个行业有所遇见的是未来软件的技术将不会有太大的突破,而且软件的红利也将下滑,始终觉得一项技术的成功在于促进社会的生产力,..

2021-02-03 08:44:22 202 4

原创 微信AD UI Mob最简洁,规范,视觉体验极佳的小程序UI

突然看到的UI,觉得比市面上所有的UI都更加流畅,体验更好,规范更高,视觉体验也是极佳!有想体验的小伙伴,可以前往微信搜索:AD UIMob

2021-01-14 18:10:53 492 3

原创 深色背景二维码无法识别,二维码无法识别的5大因素

做串口屏幕开的过程中使用的二维码为深色背景,突然发现APP的二维码识别模块无法识别。原来真的不是二维码想多大就多大,想什么颜色就什么颜色!深色背景二维码(除了微信外其他扫码设备无法识别)浅色背景二维码(都可以识别)二维码不起作用的原因主要以下有5个:质量差(图案图像清晰)反转颜色(经典的二维码在白色的背景上加入黑色方块,一定要使用浅色背景和深色前景,交换颜色不是所有的设备都可以识别)小尺寸(二维码的大小= 距离/10 或 2 x 2英寸)对比度差(即使使用对比色,前景也.

2020-10-27 10:07:08 6308

原创 智慧物联APP/小程序设计

一个半桶水的UI设计UI中国 :https://www.ui.cn/detail/556638.html感谢您的支持,如对您有所帮助,请您打赏,谢谢啦~

2020-08-15 11:22:55 590

转载 【单片机基础】入门知识

1.从电路到集成电路1.1 电路 物理课的电学知识,直流电,交流电,当电路,负载,构成一个回路形成电路 基尔霍夫电压定律 基尔霍夫电流定律 欧姆定律 功率,体积,功能 趋势 : 功率越小(越来越省电),体积越小,功能越多,工作电压越低,待机时间长 CPU : 电压1.2v, 1.1v , IO电压为 5V 1.2 微器件的出现 电路的核心:开关控制(用电来控制一个开关开和关,三极管), 倍率控制(2A的电流-> 200mA,电流控制电流源,电流控制电压源) 电子管,晶体管,

2020-08-10 18:19:45 5737 2

原创 农业物理网终端设计(HF DTU + DACAI 7‘ + ZZ IO1600 16Port Do + 北斗)

实现全云端化:屏幕参数控制+ 继电器控制 + 北斗设备定位 的云端农业物理网解决方案1.485通讯协议设计2.设备连接3. 串口和网口通讯监测4. HF DTU脚本实现cmd01=[0xFE,0x01,0x00,0x00,0x00,0x10,0x29,0xC9]cmd02=[0x01,0x03,0x00,0x05,0x00,0x23,0x14,0x12]num=0recvtime=0mac=MACmac01=mac.stringHex()DATA_S=[0xAA

2020-07-24 19:52:25 471

原创 大彩 DACAI lua脚本实现 modbus 485 从机数据采集(支持云端下发脚本控制),含有北斗设备定位

展示内容协议设计一,参数确定协议协议结构:协议内容:1.协议头:AB AB 2.后16位为设备ID:262044017068AAAA3.后2位使用背景(场景ID): 00( OEM ) ,02 (中天) 4.后2位置代表有几个传感器:085.传感器参数6. 尾码 AB AB参数说明:01 01 03 00 第一个2B位:空气温度 第二个2B位 ~ 第三个2B位 :截取位置 从第1个截取到第三个第四个2B位 :是否进行数据放大,01为 0.1倍 02 .

2020-07-23 12:03:36 3810 3

原创 Java Map的深度复制和浅复制

来看一段代码,猜一下运行结果!//给 list 放入 2个map对象 List<Map> list = new ArrayList<Map>(); Map map1 = new HashMap(); map1.put("name","张三"); map1.put("count",2); list.add(map1); Map map2 = new HashMap();

2020-07-03 08:52:27 1498

原创 表格在线生成SQL工具

http://sql.sinoverse.cn/超好用的工具,表格在线生成SQL的小工具推荐,处理结果:

2020-06-20 18:25:12 2467

原创  判断一个点的经纬度是否在规划的区域内(js)

判断一个点的经纬度是否在规划的区域内var isPointInPolygon = function(point,pts){ var N = pts.length; //pts [{lat:xxx,lng:xxx},{lat:xxx,lng:xxx}] var boundOrVertex = true; //如果点位于多边形的顶点或边上,也算做点在多边形内,直接返回true var intersectCount = 0;//cross points count of x .

2020-06-16 11:12:35 5234 3

原创 细数从业7年做过的项目

13年毕业到至今整整8年,突然回头看看原来已经走的这么远了,不知不觉往前已经走了8年了,岁月无情啊!记录真是个特别好的习惯,让你的生命留有痕迹。1. FTS种植管理系统2. FTS养殖管理系统3. 追溯宝追溯管理系统4.长寿康农产品追溯管理平台5....

2020-06-15 17:31:28 791 1

原创 微信小程序实现获取手机号(修复第一次授权错误问题)

按钮HTML<button type='warn' open-type="getPhoneNumber" @getphonenumber="getPhoneNumber" class="mini-btn" style="background:#0FCB83; margin:0 80upx;">授权登录</button>引入JSvar WXBizDataCrypt = require('../../common/WXBizDataCrypt.js');WXBizD

2020-06-11 14:53:33 2991

原创 互联网的下个10年是属于“云”的时代

互联网的下个10年是属于“云”的时代,作者从以下自己接触过的6个角度简述对云的几个方面的看法。1.云场景(办公,会议,教育,招聘等)2.云开发去框架化 组件化 轻量化 简洁风 按量付费 Nodejs 自动化3.云桌面4.云AI5.数据安全6.物联网1.云场景过去的10年,办公人员是在每天公司办公,在会议室按点举行会议,在课堂教授课程等等的应用场景都会转移到线上,未来的10年将会出现各种信息将会离你更加“近”,让你变的更“懒”,时间更加“松散”。2.云开发..

2020-05-09 14:45:19 268

原创 Linux压缩当前目录下的所有文件

压缩命令tar -cvf test.tar ./*解压命令tar -zxvf test.tar感谢您的支持,写的文章如对您有所帮助,开源不易,请您打赏,谢谢啦~

2020-04-08 18:09:05 4262 2

空空如也

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

TA关注的人

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