- 博客(35)
- 收藏
- 关注

原创 学生和教师信息管理系统
这是一个比较综合性的程序,要求能运用GUI 和面向对象的方法来编程,同时涉及到数据的读写(文本或mysql)和保存。工程结构: 学生明细: ================================GUI界面设计==============================...
2019-08-14 18:14:59
1803

原创 烟感器设备接入AWS IOT的一种方法(二)
AWS 上的 Demo server 停掉了,为此做个记录,以备后查。借助AWS 官方的 IOT core sdk 可以模拟设备(假设是烟感器)进行TLS认证,和加密通讯数据。方法一:借助Mqtt.fx 工具连接到AWS IOT core 平台上 。获取设备端的 crt, 加密公钥和私钥,以及root.CA 具体方法参见“烟感器设备接入AWS IOT的一种方法(一)” 以下给出结果:...
2019-08-12 21:06:04
1557
2
原创 记一次硬件i2c驱动移植遇到的问题
1. 配置好SDA ,SCL ,确保i2c通讯正常(一般可以通过验证chip id 来判断)。后面再调试MK8000的跟随云台,标签端要加gsensor(DA217) ,使用i2c通讯。2. 然后按第三方模块(比如心率血氧模块)要求调用适当的timer ,就可以正常工作了。read 是一次性读4字节的,而一般i2c是读1字节,这里需要调整。之前多通过software_i2c 进行i2c对接。附:读 gsensor x, y, z 坐标值。2.现接口:改为了1字节发送,
2025-03-12 18:26:39
114
原创 记一次按键中断的bug
从power down唤醒后,GPIO中断行为要重新配置,参考board.c的restore power down函数。一次使用mk800E的芯片做开发,增加一个5V_dev 的IO中断。一开始怀疑中断flag 没有清除,检查过后发现是清除了的。总结:有时候需要弄懂一些代码的意思还是需要多看,积累经验。但接入5v充电的时候,发现一直触发该中断,无法停下来。然后做了配置,问题解决。
2025-03-03 18:59:07
317
原创 记一次5v充电导致设备自动开关机的debug
后来我想了下决定用最直接的方法:将按键IO口的状态打印出来,这样当5V充电口插拔正常的时候,按键IO口也是正常的 0 (默认下拉输入,上升沿)。当多次插拔后发现按键IO口变为了1 ,这个时候mcu认为按键一直被触发,所以进入了系统。根据我的经验,5v充电IO口和按键IO口并不复用,5v充电会导致按键中断的产生,基本能肯定是硬件方面的问题,进一步分析可能跟触摸键有关。如是跟硬件反馈该问题,一起测试了后,硬件要我先解决闪灯延时的问题。我们进行多次操作发现上述bug一开始不出现,但多试几次后,会必现。
2025-03-03 18:48:30
213
原创 步进电机驱动调试问题
11.由于软件未变更,只是多次烧录软件,可能碰触过连接线,怀疑接触不良。1. 将两个电机交叉验证,发现始终跟M2接口有关。5. 怀疑硬件问题,通过逻辑分析仪发现有个IO口一直无信号。2. 出现问题时其中一个马达反转无法驱动,正转正常。4. 怀疑1ms延时过短,改为2ms ,问题依旧。10. 再次重烧软件,分析仪抓包问题消失。与硬件沟通,将该IO口独立设置高低电平。7. 将软件恢复正常,重烧后,问题依旧。12. 重新插拔连接线,目前问题消失。2. 检查电机IO口配置,无异常。3. 复位重启多次,问题依旧。
2024-08-06 16:05:40
287
原创 按键双击,长按和防抖的一种实现方式
2. 使用ns_timer 作为软件定时器。3. 使用按键中断来进行sleep唤醒。1. 程序使用了systick来计数。
2024-06-04 11:34:46
341
原创 调试软件iic协议心得
主控发送了一个字节8位(8个 SCL 时钟)的数据后,在第9个时钟周期,释放 SDA 控制权(IO 引脚输出改为输入),读取 SDA 状态,读到低电平表示通信成功,为高通信失败。2. 使用开发板的demo (比如N32WB031)需要注意SDA,SCL 切换输入模式。如果都设置为OD,则不要切换为输入模式。3. 发送slave id (从机地址),需要注意第9个scl 时钟周期是ACK。1. 初步调试需要借助示波器或逻辑分析仪。发送写寄存器地址0x6B。发送从机写地址0xD0。写入寄存器内容0X80。
2024-04-19 17:00:10
275
原创 有关合泰BA45F5260中断的思考
后面看规格书发现PA 口都有唤醒和中断功能 ,当电平从高到低(L)时,就说明RF收到数据,mcu需要被唤醒,这个时候只需要唤醒功能
2023-07-28 19:04:31
298
原创 记一次烟感设备的高低温测试数据异常分析
4. 经过多次测试发现ADC采样 在10度以上的数据 10度~65度 ,跟ADC 表格里面的参数一一对应,没有问题,说明ADC采样稳定,但在10度以后,似乎ADC 停止采样了一样,个人感觉跟硬件有关 ,或底层IO口配置有关。5. 由于检查GPIO口各项配置,未发现异常,后面想了下使用设备A的软件烧录到设备B中看下,结果发现设备B也能成功打印0度以下的温度。2. 于是开始对比设备B和设备A软件的差异。测试程序如下:设定 25度开始--->65度---->0度-->---->0度---->25度结束。
2022-09-21 13:08:09
619
原创 git仓库-客户端软件安装配置过程
git 软件有客户端软件和服务器端软件(也就是远程仓库服务器需要下载和安装两个工具: Gitblit 和 java jdk)5 .将生成的ssh-key id_rsa.pub 放到git服务器(远程仓库)里面,就可以访问远程仓库了。之前一直用svn,进来公司有新项目想使用git仓库,于是体验了一番。git 跟SVN一样也是一款版本管理系统。git使用起来更加方便。这里主要介绍git客户端的安装和使用过程。软件, 安装步骤基本默认下一步即可。3. 设置仓库的全局用户名和邮箱。
2022-09-16 12:35:17
484
1
原创 关于RF协议移植(温感器)的注意事项
1.将RF二代的协议文件 RF_B.c ,RF_B.h 加入到工程中,通过宏定义框起来,然后在串口收发函数中通过宏定义调用RF二代的串口收发处理函数(这里就是RF协议层的处理)。由于B端设备的RF协议是旧版(二代),而现有的协议是新版(三代),两者之间的协议不兼容,协议帧格式不同,RF模块和软件不同 ,所以要做移植(迁移)在接收函数和发送函数中可能有些应用层的功能条件判断,这些应用层的功能可以删掉,只保留协议收发的部分 ,参照二代RF协议的收发机制,进行串口收发。...
2022-08-15 20:36:24
525
原创 关于wifi配网模式切换的一个问题
最近在调试wifi版烟感的时候,对其进行EZ(Smartconfig )<------->AP Mode 切换的时候出现问题:wifi 模块不断复位,mcu不断重发配网指令 ,由此形成死循环 。分析: 出现该问题主要是 在切网函数中,有写入相关判断Flag 到eeproom,而一旦wifi模块的配网模式没有切换过来,那么程序判断就会出错 。09:37:10.016]收←◆55AA000100247B2270223A22736B[09:37:10.052]收←...
2021-11-10 20:21:48
361
原创 Send_Ack 问题处理
最近调试RF子设备与Lora基站的通讯,发现一个现象,就是有时候mcu回给RF模块的ACK 数据的crc 校验和是错误的 。现象:比如send_ack 正常为:AF 00 AB 01 00 72 其中72 是crc8 校验和。但有时候会出现:AF 00 AB 01 00 F2 的现象 。分析:1.检测 send_ack ()函数的数据类型是否一致 2. RF模块在发送数据的时候可能初始化不稳定,第一帧或最后一帧会发生错误 。解决:1. 检查了数据类型保持一...
2021-11-10 19:43:18
525
原创 debug调试奇怪问题01
设备:RF烟感+ RF网关mcu:L416调试目标:对烟感A 的RF模块和mcu接debug输出打印信息,观察联动报警状况。预期现象:烟感A触发报警后,烟感B,C设备联动报警;烟感A静音后,B,C联动静音。问题:烟感A通过烟雾触发报警时,烟感B,或C 反倒先报警(并且是主动报警),烟感A变成了被动报警。分析:如果不接debug线,则问题解决;如果接RF+mcu 两个debug口则问题复现;如果接一个debug口则问题解决。初步判断跟串口强相关。排查:1.怀疑debug线或口出现短路现
2021-11-10 19:28:29
212
原创 关于一款智能安防网关系统的项目开发总结
随着物联网技术的发展,智能硬件以及相关的智能网关系统越来越多的被开发出来,销售到全球各地。人们也越来越倾向于购买可以“联网”的硬件产品,习惯于用app对联网的智能产品进行远程管理和控制。在最开始的巨型机时代,人们只能通过总线与计算机进行点状连线;在PC时代,人们实现了计算机与计算机的网状通信与连线;在移动互联网时代,智能手机将每个人都相互连线;而在物联网时代,随着5G技术的兴起,除了计算机和手机外的,其他所有传统硬件产品都可以通过联网模块接入互联网,并通过app或其他交互方式进行管理和控制。其中比较有代..
2021-02-24 22:40:30
1210
原创 Unable to find vcvarsall.bat 的解决方案
最近在Windows 平台上使用pycharm ,想玩玩 词云库功能。结果下载 wordcloud 插件的时候报错:Unable to find vcvarsall.bat然后查询说是要这样搞:https://blog.youkuaiyun.com/jtscript/article/details/44514575实际上我安装过 vs2010, 查了下注册表有这个值,但安装目录中找不到这个文件...
2020-01-08 16:22:50
845
原创 aws-DynamoDB的多列格式
在AWS 的IOT-Core 中通过rule engines 将smoke alert event 转存到 (通过Lambda -->)Dynamodb 中,结果发现,数据都放在一列里面了。------------------------------------------------------------------------- 鼓捣了很久还没解决这个问题,后面看了些...
2019-10-09 15:19:45
331
原创 python爬网获取图片到本地
通过python 可以将图片直接下载到本地,或者将图片/MP3/视频等资源的Url 路径和名称保存在数据库中 。这里使用的是mysql 数据库。在上传到mysql的时候发现报错:Field 'id' doesn't have a default valueid 是序号,作为主键。 在 insert into 数据库中的时候并没加id ,id不是自动增量 ,所以报错,解决办法:my...
2019-08-20 18:52:34
363
原创 利用pyinstaller 打包py 为exe 文件
参考链接:https://www.cnblogs.com/yuyan/archive/2012/03/27/2419524.html做了一个身份证验证的小程序,想直接在windows下运行,网上查了下有pyinstaller 工具,还有类似的py2exe等。=======================验证效果========================================...
2019-08-13 17:34:14
156
原创 Python3.5 does not support a 'F'prefix
学习俄罗斯方块的时候,借鉴别人的代码,发现遇到这个提示:Python3.5 does not support a 'F'prefix经查 f-string 格式化字符串是python 3.6版本新增的格式化字串的方法,比如:name = nancyage = 18print({name} is {age} old)打印出来就是 nancy is 18 old上...
2019-08-05 17:43:06
15389
2
原创 通过GUI写入信息到文件
本例的需求是:通过GUI录入界面将学生信息录入到系统中(可以是数据库,或文件,本次使用txt文件读写)。如下图一:=========================分界线========================要求:1. 需要一个信息添加的GUI界面。 2. 功能: 检查各个参数是否合法...
2019-07-11 16:47:18
861
原创 Python程序打包之PyInstaller工具
本文配置环境:操作系统:win10python版本: 3.5因linux下的配置和安装非常方便,通过pip 安装也基本无报错。现就win10下安装和配置遇到的一些问题记录一下,以备后查。在pycharm 的setting 中有install 相关插件,不过这些插件都是在python 环境下通过import * 进行操作的。我需要在win10环境下通过安装pyinstaller 工...
2019-06-25 15:15:45
530
1
原创 python学习:批量删除文件
需求:1. 批量删除指定目录下文件名为奇数的文件2. 显示删除前文件总数,删除后文件总数,列出删除的文件名"""思考:1. 删除前后计算总数 , 应该用 方法,后面直接调用2. 怎么筛选文件名 数字为奇数(A: 文件,B 数字是奇数) 可以用正则表达式3. 删除前,存入list ,需要打印删除的文件"""直接上代码:import os import rede...
2019-04-19 16:35:12
1968
原创 网事回眸——让你烦恼的那些事
如果说整个互联网就是一个有机生命体的话,那么每个独立的主机就是这个生命体的细胞,不同的CPU和操作系统组成不同种类的细胞,单独的细胞处理能力有限,而将这些细胞组织起来,连接起来的就是神经系统:网络路由和交换设备。 如果按网络重要性来划分:国际间的网络是最重要的,其次是国家内部的骨干网;再次是省内的骨干网,接着是城市内的骨干网络,然后由市内的骨干网的机房分出通信光纤到...
2019-02-28 19:57:33
132
原创 python3.0/tkinter设计一个计算器
最近在学习python GUI设计,试着做了一个计算器,能够实现加减乘除和求余。感悟:1. 程序第一步是进行UI框架设计,窗口的大小,功能区的大小和位置设定。最好做个草图,有大概估计。 2. UI设计出来后才是功能模块的添加,需要对基本操作比较熟悉,例如:"{:.12g}".format(result) 3.程序运行结果如下,如有疑问可发e...
2019-02-25 17:50:51
2275
原创 python-GUI(tkinter)基本用法之计算圆的周长
from tkinter import *from tkinter.messagebox import * # 系统弹窗消息class Calculator: def __init__(self): # 构造函数,初始化GUI界面 # 先创建一个窗体 --self.frame self.frame = Tk() # 添加一个按钮...
2018-12-21 17:33:53
2218
原创 学习:python str.isdigit() 有浮点数的判断
str.isdigit() 是个很好的工具,用来判断字符串中是否全为数字。而浮点数因为有 "." ,所以会返还FALSE。参考示例:# 提示用户输入圆的半径,计算出该圆的周长和面积。要求如下:# 圆周率 π 值取 3.1415926# 如果输入的是负数和零,提示半径不能负数或者零# 计算机的结果保留两位小数if __name__ == "__main__": PI = ...
2018-12-20 12:36:14
7835
3
原创 浅谈智能摄像机背后的p2p连线技术
物联网主要由各类传感器(音视频/图像/温湿度/烟雾/压力/速度)+无线入网模块(WIFI/BLE/Zigbee/NB-IOT)组成,经过约十年的发展,国内物联网已经初具规模。 物联网各行业占比情况如下: 其中大家熟知的智能家居份额占比不到2% ,而工业+农业+交通+物流+电网 份额超过50% 以下介绍面向普通消费者的物联网行业:智能家居这一块: ...
2018-09-21 18:01:15
4214
原创 烟感器设备接入AWS IOT的一种方法
最近和同事一起做了一个烟感器接入 AWS IOT 的Demo ,遇到一些问题,想记录下来,以备日后查阅。需求:1. 烟感器(WIFI方案)接入AWS IOT core 平台,APP端也接入AWS IOT 端。2. 烟感器收发消息数据(jason格式)通过AWS IOT 与APP互动。3.APP端可以控制烟感器端状态,并获取烟感器端的history Data.环境:...
2018-09-12 16:02:31
3055
3
原创 RTMP server 搭建的一种方法
RTMP SERVER ubuntu 16.04 LTS nginx-rtmp-module CPU:双核 内存:4G 带宽:5Mb/s http://blog.youkuaiyun.com/kingroc/article/details/50839994 参考链接 is OK http://summervast.blog.51cto.com/690507/3...
2018-06-15 14:06:20
6409
3
原创 LNMP +discuz论坛 详细架设过程
1. 环境:OS:Ubuntu 14.04 LTS x64 更新apt-get update2,安装apt源管理工具、添加nginx和php的安装源apt-get install python-software-propertiesadd-apt-repository ppa:nginx/stableadd-apt-repository ppa:ondrej/
2017-07-18 11:39:57
939
原创 eclipse cdt Program "make" not found in PATH
在说这个问题之前先介绍下安装环境:系统环境:win7 x64 1. 下载jdk 安装包 安装并设置系统环境变量。例如:D:\Program Files\Java\jdk1.8.0_131\bin;D:\MinGW\bin;在cmd 命令行中输入 java javac 验证。2. 下载eclipse IDE for C/C++ Developers (CDT)
2017-07-13 18:32:03
8055
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人