自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

精诚所至

不以恶小而为之

  • 博客(72)
  • 资源 (3)
  • 收藏
  • 关注

转载 LDO浅谈(原理本质、实例分析)

LDO基础讲下

2023-12-04 16:19:41 112

原创 采用驱动IC和NMOS的防反电路设计

无论是常规的低侧NMOS防反接电路还是高侧的PMOS防反接电路均有其局限性。本节简述采用驱动IC加NMOS的方案做防反电路的设计及其优点。

2023-12-04 14:34:18 366

原创 WiFi AP之hostapd.conf配置参数详解

【代码】WiFi AP之hostapd.conf配置参数详解。

2023-05-09 18:37:33 3111 1

原创 WiFi AP之dnsmasq详解

WiFi AP关于dnsmasq的详细用法

2023-05-09 17:52:50 2543

原创 ip6tables v1.8.7 (legacy): Couldn‘t load match `pkttype‘:No such file or directory

openthread协议之边界路由器OTBR构建错误汇总

2022-07-19 17:58:17 1950

原创 ipset v7.10: Kernel error received: set type not supported

openThread协议之边界路由器构建填坑

2022-07-19 17:22:37 1282

原创 UG-SW04-LoRaWANConfig配置门思LoRa设备使用说明

UG-SW04-LoRaWANConfig使用说明书0.概述LoRaWANConfig是门思科技针对LoRaWAN节点模块进行调试、测试的专用软件。通过此软件可实现对LoRaWAN节点的多种参数的快速设置。使用LoRaWANConfig软件可以模拟MT指令操作支持MT指令的模组,并测试模组返回数据。MT指令介绍见:《门思科技MT指令集》1.软件安装1.1 Microsoft .NET Framework4.5安装 LoRaWANConfig的运行环境需要.net组件,如确认..

2022-04-08 17:32:49 955

原创 homeassistant core安装方式无HACS插件成功解决(记录)

问题引出的根源:1、很多此种安装方式的HA插件比较少;(但为什么要这种方式安装呢,因为这样安装的就是彻底开放了,你能搭建出什么神级智能控制,完全取决于你的技术)2、最近在做一个视频流的接入,视频延迟严重,普遍是FFmpeg导致的原因,都需要涉及HACS插件。尝试过的踩坑:常见方式:各种论坛下载hacs.zip,解压到HA目录下面的custom_components/hacs,重启。。。结果就是报一大堆错误。正确姿势:进入HACS的官网(Prerequisites | HACS),进入

2022-02-21 16:14:57 22311 8

原创 OpenCV 级联分类器之样本处理、训练、测试

1、什么是级联分类器 此处不做详解,可以参考这个博客:https://www.cnblogs.com/wumh7/p/9403873.html2、分类器样本创建 样本创建是一个比较耗时耗资源的过程,但是前期做好一个优质的样本,对于后期的样本训练以及想获取到一个精度较高的分类器都是密切相关的。样本,又分为正样本和负样本。通常样本基数越大,肯定生成的分类器精度越高。如果检测的目标是一个固定物体,没有变化(如特定商标,logo等),这样的物体只要提供一份...

2021-08-12 16:36:10 5215

原创 Bluetooth Mesh 之 vendor model详细设置及开发(实战项目)

1、BLE Mesh环境信息 本文基于实战项目中ble mesh gateway的host端的SDK1.7.4来描述。其他版本及设备端的vendor model使用设置只做参考。 Vendor model的概念本文不在讨论范围,只对如何使用做说明。如果对概念性东西不熟悉,请参考文档。2、Vendor model...

2021-06-26 18:19:44 1246 4

原创 mesh网络相关基础之缩写,更新中

BLE:Bluetooth Low Energ,蓝牙低能耗。Bluetooth SIG:Bluetooth Special interest group,蓝牙技术联盟。GAP:Generic Access Profile,通用访问配置文件。GATT:通用属性协议。SM:security manager 。DFU:Device Firmware Update。NCP:Network co-processorDTM:direct test modeIVI:Initializati

2021-06-23 10:02:57 321

原创 C实现websocket服务,实例

目录0、数据帧格式1、头文件2、初始化:websocket_init()3、base64_encode()4、int _readline()5、int shakehands()6、void inverted_string()7、int recv_frame_head()8、void umask()9、int send_frame_head()10、int main()0、数据帧格式/*-----------为了便于理解,在这里吧数据帧格式粘出来-...

2021-06-23 09:58:50 1452

原创 LuCi API 学习资源

个人学习luci过程中收集的一些资料luci API官方手册http://openwrt.github.io/luci/api/index.htmlluci wikihttps://github.com/openwrt/luci/wikiluci js APIhttps://openwrt.github.io/luci/jsapi/##UCIhttps://lvii.gitbooks.io/outman/content/openwrt.uci.htmlopenWRT官网http

2021-06-16 17:28:01 684

转载 进程上下文与中断上下文精简理解

目录一.什么是内核态和用户态二.什么是进程上下文与中断上下文三.为什么要进行不同之间状态的切换四.什么情况下进行用户态到内核态的切换五.中断上下文代码中注意事项一.什么是内核态和用户态内核态:在内核空间执行,通常是驱动程序,中断相关程序,内核调度程序,内存管理及其操作程序。用户态:用户程序运行空间。二.什么是进程上下文与中断上下文1.进程上下文:(1)进程上文:其是指进程由用户态切换到内核态是需要保存用户态时cpu寄存器中的值,进程状态以及堆栈上的内容,即保存

2021-03-18 16:11:40 877

原创 问题总结

目录一、C语言相关1、编译2、内存3、网络4、编程5、性能6、算法7、与C++区别8、其他最新更新:2021.03.17一、C语言相关1、编译1、什么是预编译?什么时候需要预编译?2、C++与C混编时extern "C" {}作用?2、内存1、如何修改为一个字节对齐?2、C语言中,常量存储在哪里?局部变量和全局变量、静态局部变量和静态全局变量存储在哪里?3、内核申请内存的方式,以及区别用法?4、内核和user数据交换的方..

2021-03-17 16:36:56 192

原创 Android SELinux avc:denied报错模板通用修改策略

报错模板:avc:denied{readwritegetattr}forpid=3944comm="handsetpowerlib"name="xxxx"dev="tmpfs"ino=5545scontext=u:r:AAA:s0:c512,c768tcontext=u:object_r:BBB:s0tclass=CCCpermissive=1信息提取:主体:AAA客体:BBB客体类别:CCC需要allow的权限:readwritegetattr...

2021-02-25 15:29:58 2471 3

原创 SELinux 关于avc:denied {read write getattr xxx} for 错误

环境平台:msm8953、android7.1.2实例报错:avc:denied{readwrite}forpid=3944comm="handsetpowerlib"name="xxxxx"dev="tmpfs"ino=5545scontext=u:r:untrusted_app:s0:c512,c768tcontext=u:object_r:device:s0tclass=chr_filepermissive=1可得:主体untrusted_app在对客体类别为...

2021-02-25 14:48:40 3234

原创 rk3288之CPU定频实现(手动、内核)

目录1、CPU定频终端手动实现2、CPU定频内核驱动实现平台环境:rk3288、android5.1、kernel3.10.01、CPU定频终端手动实现#cd/sys/devices/system/cpu/cpu0/cpufreq查看CPU支持的调频策略:#catscaling_available_governors#conservativeinteractiveondemanduserspacepowersaveperformance解释以上6种策略简述:...

2021-02-24 17:05:42 2288

原创 rk3399添加开机启动脚本

目录1、脚本添加2、Selinux域添加domain环境平台:rk3399、android7.1.2、kernel4.4.126有两个步骤1、脚本添加device/rockchip/common/init.rockchip.rc中添加:servicemy_start_service/system/bin/sh/system/bin/start.shuserrootdisabledonshotonproperty:sys.boot_complete...

2021-02-24 16:40:50 1928

原创 rk3399 USB转网口之AX88772A移植调试

项目平台:RK3399 4Gandroid:7.1.2kernel:4.4.126# 1、项目需求# 2、驱动移植3、调试结果

2021-02-23 11:42:12 3448 4

原创 eDP接口信号组成认识

eDP接口信号主要由Main Link、AUXCH与HPD三部分组成,如下图所示。Main Link:表示主通道,用来传输各类型视频数据和音频数据;AUX CH:表示辅助通道,用于传输低带宽需求的数据,以及链路管理和设备控制信号;HPD:表示热插拔检测通道。Main Link南1~4对数据线组成,每对数据线都是一对差分线。对于一款液晶屏而言,Main Link具体需几对数据线,这取决于屏幕的分辨率和彩色位数。在该通道中传送的信号有视频像素信号、视频定时信号、视频格式信号、比特/像素及

2020-11-30 14:28:45 22774 3

原创 高通关闭插入USB后自动开机的解决方案

1、问题描述现象:关机状态下,插入USB充电会自动开机。原因:是由于编译的是userdebug模式,而user模式进入的则是充电界面。所以与编译条件相关。2、源码涉及和解决相关源码:ap/bootable/bootloader/lk/app/aboot/aboot.c....unsigned char*update_cmdline(const char* cmdline){ ..... }else if((target_build_variant_user()

2020-05-29 17:42:51 2903 1

原创 高通 Msm835平台充电功能的开发与调试

平台充电相关代码:835平台kernel充电相关代码:driver/power/supply/qcom/qpnp-fg-gen3.c 电池电量相关驱动代码 driver/power/supply/qcom/battery.c 电池充电相关代码 driver/power/supply/qcom/qpnp-smb2.c  高通充电控制相关代码 driver/power/supply/qcom/smb-lib.c 高通充电控制相关代码 arch/arm/boot/dts/qcom/msm8998-

2020-05-29 16:06:57 5582 2

原创 Android seLinux导致的APP访问设备权限问题

android KK 4.4 版本后,Google 默认启用了SELinux,即均为Enforcing模式;如果当某个操作不被SEAndroid允许时, 会把SELinux 审查异常打印在kernel log 或者 android log(L 版本)中,对应的关键字是: “avc: denied” 或者”avc: denied”。例如对文件进行write,该如何排查出信息,可以在sepolicy中,添加上相应的allow语句,将权限开放出去;当然还有其他方法。1. 确认 seLinux导致权限问题1

2020-05-19 11:34:06 1107

原创 Linux字符设备---ioctl详细解析

一、 什么是ioctlioctl是设备驱动程序中对设备的I/O通道进行管理的函数。所谓对I/O通道进行管理,就是对设备的一些特性进行控制,例如串口的传输波特率、马达的转速等等。下面是其源代码定义:函数名: ioctl功 能: 控制I/O设备用 法: int ioctl(int handle, int cmd,[int *argdx, int argcx]);参...

2020-05-08 10:49:47 1843

原创 Android驱动移植---Camera HW-硬件基础知识

1.Camera的成像原理景物通过镜头(LENS)生成的光学图像投射到图像传感器(Sensor)表面上,然后转为模拟的电信号,经过 A/D(模数转换)转换后变为数字图像信号,再送到数字信号处理芯片(DSP)中加工处理,再通过 IO 接口传输到 CPU 中处理,通过 LCD 就可以看到图像了这个成像原理还是很重要的,对未来我们分析问题会有很大的帮助。图像传感器(SENSOR)是...

2020-04-27 17:07:00 1073 1

原创 RK3399 - Android7.1 调试串口波特率修改

共两地方修改:uboot和设备树dts修改一:UBOOT部分目录:u-boot/configs/rk3399_defconfig中修改BAUDRATE:修改二:kernel DTS部分目录:kernel/arch/arm64/boot/dts/rockchip/rk3399-android.dtsi中修改<rockchip,baudrate>PS:...

2020-04-01 18:13:52 1596

原创 CRC16 Modbus计算原理与代码实现

1、CRC16计算原理1) 预置 1 个 16 位的寄存器为十六进制FFFF(即全为 1) , 称此寄存器为 CRC寄存器。2) 把第一个 8 位二进制数据 (通信信息帧的第一个字节) 与 16 位的 CRC寄存器的低 8 位相异或, 把结果放于 CRC寄存器。3) 把 CRC 寄存器的内容右移一位( 朝低位)用 0 填补最高位, 并检查右移后的移出位。4) 如果移出位为 0, 重...

2020-04-01 14:03:19 2744

原创 MIPI video mode 和 command mode 的区别

1、何为LCD RAM?LCD 是指字面意思是液晶显示屏(Liquid Crystal Display), 而RAM: 随机存取存储器(Random-Access Memory),两者完全是风马牛不相及的东西。下图是一个标准的LCD的爆炸图(不含TP),请注意图中红色mark的地方:控制IC-- LCD的大脑。所谓的LCD RAM自然是指此大脑是否包含RAM.题外话<不感兴趣的...

2020-03-30 16:48:20 2615 1

原创 Android镜像之boot.img解压、打包及使用--附源码unpackbootimg.perl

解压boot.img:# unpackbootimg.perl boot.img解压出boot.img-kernel和boot.img-ramdisk.gzPS:解压输出的Command line,后续打包boot用得上。解压ramdisk镜像:# mkdir ramdisk# cd ramdisk# gzip -dc ../*-ramdisk.gz | cpio...

2020-03-11 11:28:36 5676

原创 单独修改编译一个framwork模块,make snod会有的问题

全编andorid后,单独修改编译一个framwork模块,make snod会有如下告警信息:Warning: with dexpreopt enabled, you may need a full rebuild使用这样make snod 出来的镜像,内核不能启动,模拟器一直停留在“android”标志状态。查看log发现有如下错误打印:DexOpt: mismatch dep si...

2020-03-06 17:38:07 395

原创 Android系统固件包解包、修改(涉及root提权)、打包

目录 瑞芯微android固件包介绍  一、解包、打包  二、固件升级  三、固件修改  3.1. 固件精减、添加APK软件  3.2. 提取Root权限  3.3. 修改用户分区大小 3.4. 修改设置中“关于MID”中的机型型号 3.5. 美化界面 3.6. 美化桌面 瑞芯微androi...

2020-02-25 17:09:49 24134 4

原创 RS485串口编程

1.1 单工、半双工、全双工首先,我使用的是芯片为 SP3485E 为半双工通信。那么先要明确什么是单工、半双工、全双工。单工数据传输只支持数据在一个方向上传输;半双工数据传输允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;全双工数据通信允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备...

2020-02-25 17:07:44 12459 1

原创 iptables4表5链

iptables四个表五条链 其实关于iptables的使用网上的资料和教程也比较多,主要是要理解其中的路由前和路由后每个表和链所处的位置和作用,明白了也就简单了,以下是我转载的觉得写的比较详细的一篇博客,有时间我将写一篇关于这些表和链的实质性的配置例子。一、netfilter和iptables说明: 1、 netfilter/iptables IP 信息包...

2020-02-25 17:05:07 334

原创 关于系统滴答定时器SysTick_Config()解析

上图是LPC1114系统滴答定时器(SysTick)的结构图。系统滴答定时器位于Cortex-M0内核中,也就是说,不论是LPC1114,还是其他的Cortex-M0内核单片机,都有这个系统定时器。其存在的主要目的是为嵌入式操作系统提供100Hz(即10ms)的定时节拍。当然,也可以做为其它的普通定时等其他用途。下面是LPC1114用户手册上列举出的一些用途,你可以了解了解。可编程设置频率...

2020-01-17 13:42:08 14498 2

原创 snmp是啥及snmpd.conf基础实用配置解析

1、snmp是什么前两天项目要求一个附加功能,远程监视服务器的运行状况,要定期监视指定端口,指定业务,还包括服务器的磁盘空间,内存,CPU使用率等等。这头俩事还好说,ping和telnet也就搞定了,实在不行就开个socket连一下,关键后边的事有点抓瞎,要是在本地,可以通过API得到系统信息,分析磁盘空间,内存啥的,可是远程得到别的机子的信息,那不成木马了么。到网上一查,原来有SNMP可以帮...

2020-01-17 13:41:03 6797 1

原创 打开keil工程 keil : Cannot read project file "xxx"终极解决

这是一个恶心的官方bug。解决如下:新建的工程输出为更低版本格式方能解决。最后关闭工程的时候会提示保存为目前的版本,点击“取消”(一定不能点击确定,不然又是保存为新版本)。Project--->Export-- >Save project to uVision3 formatOK,大功告成,这下随便关随便开,工程打开如流水!!!!...

2019-08-19 14:26:29 36631 13

原创 keil光标变成小黑框解决方法

按键盘上insert可以在细条和小黑框之间切换。

2019-08-16 17:51:58 3796 1

原创 QT 比较全面详细分析--事件机制(浅显易懂)

QT开发(六十三)——QT事件机制分析一、事件机制事件是由系统或者QT平台本身在不同的时刻发出的。当用户按下鼠标、敲下键盘,或者是窗口需要重新绘制的时候,都会发出一个相应的事件。一些事件在对用户操作做出响应时发出,如键盘事件等;另一些事件则是由系统自动发出,如计时器事件。事件的出现,使得程序代码不会按照原始的线性顺序执行。线性顺序的程序设计风格不适合处理复杂的用户交互,...

2019-07-17 15:00:34 1708

原创 关于QAbstractSocket::connectToHost() called when already looking up or connecting/connected to

QAbstractSocket::connectToHost()calledwhenalreadylookinguporconnecting/connectedto"192.168.1.100"问题是因为你第一次搭建客户端成功时,没有关闭端口,只要在你QAbstractSocket::connectToHost()函数之前加一句:tcpSocket->abort();//...

2019-07-09 11:18:35 11447

mesh profile specification v1.0.1.pdf

ble bluetooth profile sepecfication

2021-06-26

bluetooth-le-and-mesh-software-api-reference-manual_v1.7.4.pdf

所有mesh基于gecko cmd mesh开的API说明。

2021-06-26

crc16计算原理实现

CRC16校验码计算,参数两个para1,para2;para1为计算的数据指针,para2为需要计算CRC16的数据长度。

2020-04-01

空空如也

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

TA关注的人

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