- 博客(69)
- 资源 (7)
- 收藏
- 关注
原创 [GUI] ESP32(idf)触摸屏(XPT2046)驱动及驱动校准
1. XPT2046简介XPT2046是一款4线电阻式触摸屏控制器,包含12位125 kHz采样SAR型a /D转换器。XPT2046可以通过执行两个A/D转换来检测按下的屏幕位置。…下面简单的了解下吧内部逻辑电路引脚描述基础应用电路读写时序2. XPT2046驱动XPT2046 用的是SPI驱动,不过这里使用的是模拟的spi,原因有三:1. XPT2046 不支持太高的SPI速率2. ESP32上没有足够的SPI了,一个60MHzSPI用来驱动LCD屏、一个16MH
2021-09-06 23:00:18
8164
9
原创 [GUI] ESP32(idf)驱动3.5寸SPI-TFT屏移植LittleVGL
一、展示成果博客上传图片限制在5M内,视频转 GIF 帧率压缩太严重了,还得再次压缩才小于5M,效果完全失真了小伙伴们有什么好的工具或方法解决吗gif 图上应该看不出什么区别。但是ESP32 用60MHz的 spi 驱动跑 lvgl,其卡顿比 stm32 spi 驱动跑 lvgl 明显好很多,,毕竟stm32 spi 也达不到 60MHz嘛主控:ESP32开发工具:esp- idf-v4.3LCDF4.3寸 ILI9488温度传感器:K型热电偶+MAX6675GUI:little V
2021-08-29 01:34:20
5262
3
原创 [GUI]stm32搭载3.5寸SPI-TFT屏移植LittleVGL
唠几句,记录下移植笔记新项目用到LVGL,也是首次接触GUI库,所以Emmmm,,,学呗!!!之前都是直接在LCD屏上画点、画线、画圆、画个矩形、画个多边形、显示个字符串、显示张图片而已,没有用过GUI库,在网上找了点学习资料,然后把LVGL库的用法整体过了一遍。寻思着搞个屏练习一下,然后趁着周末把SPI屏(IFI9488/ 480*320)驱动起来,甚至还优化了绘图部分的程序,下面是部分优化记录方式一:移植淘宝卖家提供的Demo串口日志:刷整屏用时3ssystem Init compla.
2021-07-19 00:27:50
4577
10
原创 [物联网]4G模块openCPU通信之http通信
1.Http简介HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1。HTTP协议(HyperText
2021-04-23 16:17:43
3962
2
原创 [Linux]关于Transmission下载服务器的搭建与配置
1. Transmission简介Transmission是一个强大的BT工具,懂的自然懂哈。目前官网发布了多个版本可供下载使用,包括:Mac、GTK+、QT版本,还有Daemon版本。Transmission支持DHT、Magnet Link、uTP以及PEX等特性。尤其是支持Magnet Link磁力链接下载十分重要,因为目前网上很多资源都是采用这种方式来分享的,而不是传统的.torrent文件,例如TPB、BTDigg。linux下,Transmission软件包下面包含多个套件:tran
2021-04-15 14:09:08
11141
原创 [stm32]用定时器编码模式解码EC11旋转编码器
1.客官,要不先康康内脏左调右调没调出来,那就拆开看看,到底吃了几碗粉再做个搭桥手术吧2.怎么驱动呢先看看EC11旋钮旋转时的波形吧1. 首先想到的是用IO中断咯在中断中判断哪路IO先来就可以确定是正旋还是反旋咯2. stm32不是有定时器编码模式么,正好可以用来解码EC11直接上代码吧!//定义一下IO口#define KEY_Port GPIOA#define KEY_A GPIO_PIN_0#define KEY_B GPIO_PIN
2021-04-13 17:45:06
4846
3
原创 [linux] 只有xxx.git文件夹,如何恢复仓库文件
起因用arm板子搭建的git服务器挂了,内存卡直接不能正常识别。还好之前将git仓库放到了挂载的移动硬盘中,不过只有一堆.git文件夹。那如何通过.git文件夹来恢复项目仓库呢?一堆.git 文件夹如下就先试着恢复其中的一个吧,进进入 .git文件夹 查看其目录结构如下:1.创建bundle文件git bundle create ./repo_slim.bundle --all2.从bundle 文件中 clone 出代码git clone ./repo_slim.bundle r.
2021-01-21 16:19:22
1282
原创 [linux]记录内核编译日志
记录一下Linux内核编译和内核启动日志,没啥干货,不小心进来的直接退出划走即可记录Linux kernel编译过程/********************************************//** 找到arm板子对应的内核架构配置文件 **//********************************************/slim@slim:~/Desktop/slim_linux_alpha/arch/arm$ cd configs/slim@slim:~/De
2020-11-16 18:07:30
4048
2
原创 [Linux]Linux挂载win10共享目录
sambaSamba是用于Linux和Unix的标准Windows互操作性程序套件。网上Linux搭建samba服务器的教程很多,但是对我不适合:我Windows上硬盘1T,Linux上硬盘30G,所以我想把Windows上的硬盘分一点出来作为Windows和linux共享的空间。Windows设置共享文件夹1.新建一个要共享的文件夹或目录2.右键设置其属性3.设置共享属性、共享权限、共享用户4.验证:\ip\share_file开启samba服务Windows默认关闭了s
2020-11-09 17:00:07
2500
7
原创 [linux]NanoPi NEO2安装OpenMediaVault
设置OMV环境添加OMV源–>转到OMV源设置博客安装OMV源公钥,用于验证签名sudo apt-get install -y wget gnupg2wget -O archive.key http://packages.openmediavault.org/public/archive.key #获取keysudo apt-key add archive.key # 把下载的key添加到本地trusted数据库中# 设置环境变量export LANG=C.UTF-8export
2020-11-03 11:34:32
1476
原创 [linux]armbian修改为清华源
查看系统发行版本命令lsb_release -a本机为基于Debian的armbian buster所以用清华Debian源修改apt为清华软件源备份原文件:sudo cp /etc/apt/sources.list /etc/apt/sources.list-bak修改源sudo vi /etc/apt/sources.list将下列源替换到sources.list中这里还添加了OMV的官方源,主要是为安装OMV做准备,不打算用OMV的可以不添加#tsinghua so
2020-11-02 17:21:57
722946
原创 [linux]NanoPi NEO2安装armbian
Armbian是轻量级的Debian系统和为ARM开发板专门发行并重新编译的Ubuntu系统。为快速开发,为快速验证,提供了便利,比如在arm linxu上运行arm docker。省去了很多交叉编译的工作量在里面。1.下载armbian系统点击进入armbian官网选择适合自己需求的镜像文件进行下载。For each board we usually provide:one CLI Debian and one CLI Ubuntu based server image,one des.
2020-11-02 16:31:05
1813
原创 [linux]在Linux内核(arm平台)中安装tree
刚移植linux内核到arm平台上(imx6ull),里面很多工具都没有,也不能用通用的安装命令sudo apt-get install来安装。只能手动编译安装了,下面就记录一下tree的安装吧linux for arm系统信息未找到tree命令1. 备料(tree)点击下载tree工具解压tar -zxvf tree-1.7.0.tgz看下里面的内容:2.修改Makefile该arm平台用的编译工具arm-linux-gnueabihf修改Makefileprefix = /ho
2020-10-29 14:58:43
659
原创 【MQTT】在ESP32平台上用microPython实现MQTT通信
想要搭建MQTT服务器,请参考☞☞ 搭建MQTT服务器篇服务器平台:Ubuntu20.04 + mosquitto硬件平台:ESP32开发板MQTT客户端:mosquitto、 通信猫、 mqttfx等等开发平台:Thoony 3.2先看下 microPython 支持哪些模块吧:>>> help('modules')__main__ gc ubinascii upysh_boot
2020-10-13 13:51:10
12732
8
原创 [linux] Ubuntu20.04上安装搭建MQTT服务器mosquitto
mosquitto是支持MQTT v3.1 的开源消息代理软件,而且搭建更加方便快捷。本博文记录了MQTT协议简介 和 在Ubuntu 20.04上安装和配置mosquittoMQTT协议简介MQTT(Message Queuing Telemetry Transport)消息队列遥测传输协议,是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。.MQTT最大优点在于,可以以极少的代码和有限的带宽,为连.
2020-10-12 10:57:58
15653
2
原创 [linux] Ubuntu20.04上安装搭建私有Git服务器Gitea
Gitea 是相比于gitlab更加轻量化,而且搭建更加方便快捷。本博文记录了在Ubuntu 20.04上安装和配置Gitea安装sqlite3sudo apt-get install sqlite3安装Gitea安装gitsudo apt-get install git#查看版本git --version创建git用户创建一个新的系统用户git,作为Git应用的管理用户# 新建Git用户sudo adduser git# 修改或新增git用.
2020-10-10 15:46:16
6585
2
原创 [玩转Python] Python如何调用c函数
python为什么要调用c函数代码c 对于 Python 来说更偏向于底层,而且c的执行速度是 python 无法比拟的;python 对于 c 来说编写更加简单,而且Python是面向对象;同时Python作为“胶水语言”能够运行c代码;再者如果想调用以前用C写的各种算法,也可以直接使用python调用python中用ctypes模块加载调用c是最简单的一种咯。这里就演示一下如何在python中调用C语言代码咯,使用到的C语言代码链接如下CRC8/CRC16/CRC32常见几个标准的算
2020-09-28 17:37:08
708
原创 [玩转BLE]瑞昱RTL8762CMF蓝牙5.0(烧录篇)
芯片简介ARM Cortex-M4F 32位处理器存储8Mbyte flase160KByte SRAM功耗评估power down模式(GPIO唤醒及寄存器值保持):450nADeep LPS模式(GPIO和timer唤醒、寄存器值保持、SRAM保持、32K低速晶振开启)2.5uA0dBm发送:8.4mA接收:6.8mA蓝牙速率支持 2Mbps支持长度扩展(DLE)BLE5.0支持AES128/192/256加.
2020-09-27 16:54:00
14775
3
原创 [玩转BLE]奉加微PHY6212初体验(烧录篇)
芯片简介ARM Cortex-M0 32位处理器存储512KB/2MB系统闪存128KB ROM138KB SRAM,睡眠保持8通道DMA功耗评估睡眠模式1,只可通过IO唤醒,电流:0.7uA睡眠模式2,可通过RTC唤醒,电流:2uARx峰值电流:6.7mATx 0dBm峰值电流:6.7mA蓝牙速率BLE 2Mbps支持长度扩展(DLE)最高数据吞吐量1.6MbpsBLE5.0AES.
2020-09-27 11:36:02
8090
8
原创 [玩转树莓派]树莓派编译安装python3.8.5
1.更新资源pi@raspberrypi:~ $ sudo apt-get updatepi@raspberrypi:~ $ sudo apt-get upgrade2.安装python依赖环境pi@raspberrypi:~ $ sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2-dev3.下载python3.8.5版本源码并解压你也可以 下载其他的python版本pi@raspberrypi:
2020-09-14 12:40:17
2404
1
原创 【RT-thread】如何将RT-thread系统移植到stm32
1.RT-thread简介T-Thread(Real Time-Thread),是一个嵌入式实时多线程操作系统。在 RT-Thread 系统中,任务调度通过线程实现的。RT-Thread 主要采用 C 语言编写,浅显易懂,方便移植。针对资源受限的微控制器(MCU)系统,可通过方便易用的工具,裁剪出仅需要 3KB Flash、1.2KB RAM 内存资源的 NANO 版本;而对于资源丰富的物联网设备,RT-Thread 又能使用在线的软件包管理工具,配合系统配置工具实现直观快速的模块化裁剪,无缝地导入丰富
2020-09-02 16:17:42
2148
原创 [玩转BLE]nRF52832提示ERROR 4 [NRF_ERROR_NO_MEM]的处理方法
打开跟踪调试模块,错误定位如下:error> app: ERROR 4 [NRF_ERROR_NO_MEM] at ..\..\..\ble_app.c:1293我们转到ble_app.c 的1293行看一下:其实看一下ble_ancs_c_init()的返回值,就知道是在函数内部已经出错了,进入到函数中继续跟踪调试。ret_code_t ble_ancs_c_init(ble_ancs_c_t * p_ancs, ble_ancs_c_init_t const * p_ancs_init)
2020-06-08 10:13:40
6847
12
原创 【MQTT】MQTT.fx上传数据节点到OneNet平台
关于如何接入OneNet平台请参阅博文:MQTT.fx连接OneNet平台1.设置平台端数据流这里设置了温度和湿度2.上传数据流订阅上传结果通知消息为了确保设备上传消息确实被平台所接受处理,设备可以订阅系统 topic 获取上传数据点结果消息;选择Subscribe项,输入订阅topic名称topic 命名规则:$sys/{pid}/{device-name}/dp/pos...
2019-10-28 15:33:30
5459
5
原创 【MQTT】MQTT.fx连接OneNet平台
今天心血来潮想通过MQTT协议连接中移物联网OneNet。然后找了个MQTT客户端——MQTT.fx。MQTT.fx 是目前主流的mqtt客户端,可以快速验证是否可以与IoT Hub 服务交流发布或订阅消息。设备将当前所处的状态作为MQTT主题发送给IoT Hub,每个MQTT主题topic具有不同等级的名称,如“小区/区域/车位闲置” 。MQTT代理服务器将接收到的主题topic发送给给所有...
2019-10-25 18:38:10
7197
10
原创 [玩转BLE]设置蓝牙广播间隔
如图,设置广播时间间隔为2s。//======平台 CC2640======//====simple_peripheral=====// 设置广播间隔 (units of 625us, 160=100ms)#define DEFAULT_ADVERTISING_INTERVAL 3200 //2s ... uint16_t advInt = DEFAULT_ADV...
2019-09-26 15:59:38
4828
原创 [玩转BLE]发送窗口、连接间隔、从机延迟
连接参数与BLE性能分析1. 连接事件——连接间隔短主从设备功耗大数据发送延迟短数据吞吐量较高2. 连接事件——连接间隔长主从设备功耗低手机发送延迟长数据吞吐量较低3.从设备潜伏值小从设备功耗高从设备及时或更快速的收到主设备发送的数据4.从设备潜伏值大从设备在潜伏期期间功耗低从设备无法及时或快速接收主设备发送的数据从机潜伏对...
2019-09-26 15:43:54
7505
1
原创 [玩转BLE]蓝牙协议栈结构及链路层数据结构
BLE协议栈结构先看一下BLE协议栈的结构,分成Host和Controller两层BLE协议栈由控制器Controller和主机Host两大部分组成。任何蓝牙Profile和应用程序的实现都位于协议栈的GAP和GATT层之上。PHY(物理层):2.4G无线系统LL(链路层):控制设备的RF状态,设备处于五种状态之一Standby(准备就绪)Advertising(广播...
2019-09-19 17:24:47
4298
2
翻译 [玩转BLE]标准GATT特征值属性类型
摘自 蓝牙标准GATT特征值属性GATT配置文件的属性类型。表中的所有服务编号均为标准编号。权威的法规遵循信息包含在适用的Bluetooth®规范中。NameUniform Type IdentifierAssigned NumberSpecificationCharacteristic Aggregate Formatorg.bluetooth.descrip...
2019-09-09 14:47:51
2341
翻译 [玩转BLE]标准GATT配置文件属性类型
摘自 蓝牙标准GATT配置文件属性类型GATT配置文件的属性类型。表中的所有服务编号均为标准编号。权威的法规遵循信息包含在适用的Bluetooth®规范中。NameUniform Type IdentifierAssigned NumberSpecificationCharacteristic Declarationorg.bluetooth.attribute...
2019-09-09 14:39:19
684
翻译 [玩转BLE]标准GATT特征列表
摘自 蓝牙标准GATT CharacteristicsGATT特征是定义数据的属性类型。表中的所有服务编号均为标准编号。权威的法规遵循信息包含在适用的Bluetooth®规范中。NameUniform Type IdentifierAssigned NumberSpecificationAerobic Heart Rate Lower Limitorg.blue...
2019-09-09 14:32:44
2985
翻译 [玩转BLE]标准GATT服务列表
摘自蓝牙标准 GATT ServicesGATT服务是封装设备部分行为的特征和与其他服务的关系的集合。表中的所有服务编号均为标准编号。权威的法规遵循信息包含在适用的Bluetooth®规范中。Name(名称)Uniform Type Identifier(统一类型标识符)Assigned NumberSpecification(规范)Generic Access...
2019-09-09 12:02:16
4705
原创 [玩转BLE]通用访问规范层(GAP层)协议笔记
通用访问规范GAP(Generic Access Profile)是BLE设备内部功能对外的接口层,它规定了三个方面:GAP角色、模式和规程、安全问题。GAP层将设备分为四种角色,分别是外围设备,中央设备,播报设备和观察设备。这些设备围绕着广播和连接的差异性而区分,外围设备和播报设备对外发出广播数据,中央设备和观察设备扫描外部广播数据,播报设备和观察设备通常不建立连接,而外围设备和中央设备可以建...
2019-09-06 17:40:19
1700
gitea.service
2020-10-10
C/C++链表增删改查排序操作
2018-11-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人