- 博客(78)
- 资源 (21)
- 收藏
- 关注
原创 Zephyr NRF7002 实现AppleJuice
ble的信道和BR/EDR的信道是完全不一样的。但是范围是相同的,差不多也都是2.4Ghz的频道。可以简单理解为空中有40个信道0~39信道。两个设备在相同的信道里面可以进行相互通信。而这些信道SIG又重新编号:这个编号就是把37 38 39。3个信道抽出来,作为广播信道,其他都是数据信道。这篇文章主要讲广播,所以基本数据信息都是围绕37 38 39这三个信道上面的通信来讲的。我们可以看到这3个信道是分散排列的。大家可以思考下为什么。其实看下面一张图就知道了。
2024-02-05 17:05:44 1412
原创 【ESP32之旅】ESP32C3 Servo库的支持
最近使用esp32c3 发现其在arduino下不支持Servo库,这还得了。那不得手动给他适配一个。地址如下,下载下来直接导入即可。
2023-05-22 00:17:58 937 5
原创 安卓在子类中调用父类的方法
在父界面中创建 Intent 时将当前的 Activity 实例作为额外参数传递给子界面,在子界面中使用 getIntent() 方法获取 Intent ,然后调用 getParcelableExtra() 方法获取父界面实例。非常抱歉,可能是我表述不够清楚。在实际开发中,调用 getParentActivity() 方法需要在子界面中获取到父界面的实例。在子界面中创建时通过该方法获取当前的父界面实例。无论使用哪种方式来获取父界面实例,都可以在子界面中访问父界面的属性和方法。在子界面创建时保存父界面实例。
2023-04-04 23:25:09 800
原创 【TuyaOS开发之旅】环境搭建
涂鸦最近更新了打磨良久的TuyaOS,整体使用感受非常的nice。所以决定写一个专栏讲解一下TuyaOS的入门使用,来方便小白快速的入门和熟悉TuyaOS的开发。
2022-12-14 22:57:12 506
原创 【Banana PI Leaf S3开发板试用体验】MicroPython环境搭建
函数说明:初始化i2c总线。scl:SCL信号线的I/O口sda:SDA信号线的I/O口freq:SCL时钟频率首先介绍MODE1寄存器,如下图:如果未停止所有PWM输出就将其进入到睡眠模式,那么,所有输出通道在下一轮都将输出高电平。睡眠后重新启动PWM的操作为:注意,在设置PWM频率(写PRESCALE寄存器)的时候,要先设置为Sleep模式,请参考后面源码部分。
2022-11-14 22:49:00 278
原创 【ESP32之旅】ESP32-S2 MicroPython环境搭建
MicroPython 作为一个可以在嵌入式设备上使用的python 发行版因其易用性和丰富的功能受到了广大电子爱好者的推崇。作为开源电子的桥头堡,ESP32当人不让的也支持了MicroPython。MicroPython的官网对ESP32 提供了源码和bin文件两种支持,并且依然在更新迭代维护。
2022-11-10 23:16:03 1296
原创 【ESP32之旅】ESP32C3 Arduino库使用方法
安装目前官方已经支持了ESP32C3 的部分功能,可以在其官方wiki中看到:Arduino IDE 安装官方提供了两个版本的安装连接,release和Dev。其中Release为稳定发布版本,Dev版本则支持更多的新特性。Stable release link:https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.jsonDevelopment release l
2022-05-29 21:40:39 4561 2
原创 MSP430 Energia DHT11的使用
关于EnergiaEnergia 是一个TI适配的类Arduino的IDE,使用的Arduino的语法和关键字,支持部分Arduino的库。相关介绍可以参考下文:ENERGIA IDE、配置、编译器或调试器 | TI.com.cnDHT11 库官方并没有对DHT11进行适配,Git上寻找了很久找到了一个支持MSP430全系列的DHT11的第三方库。连接如下:songzhishuo/Energia_DHT_master: Energia 支持的MSP430 的DHT11库 (github.com)
2022-05-14 19:33:32 1013
原创 STC8G1K08A 串口无法烧录程序
STC8G1K08A 串口无法烧录问题现象描述STC8G1K08A是不需要外置晶振的,因此只需要飞线出VCC GND TXD RXD 进行数据烧录即可,在首次烧录程序之后后续无法再次烧录。问题分析仔细阅读了数据手册后,看到其中一句话:也就是说默认情况下P3.0和P3.1没有进行内部上拉,因此在下载器为3.3V电平时候不能很好的识别到电平。这里的做法很简单:解决方法1.对于已经烧录不进去的单片机,在外部对RXD和TXD进行10K-4.7K的上拉处理,即可烧录成功。2.对于还未烧录的单片机为了
2022-05-04 18:23:42 5154 1
原创 Nano Pi M1 安装QT和No tool chain set from kit问题解决
安装QT1、安装sudo apt-get updatesudo apt-get install qt5-defaultsudo apt-get install qtcreator检查安装orangepi@orangepi:~$ qmake -v QMake version 3.1 Using Qt version 5.9.5 in /usr/lib/aarch64-linux-gnu2、QT使用示例:扫雷游戏git clone https://github.com/qmeng0207
2022-04-10 23:27:10 6187
原创 泰凌微82XX系列多adv广播配置方法
多广播在实际开发的产品中可能需要多个特征的广播,比如天猫精灵可能需要使用一个阿里的私有广播、Apple 设备可能使用的Ibeacon等。在TI的SDK内部已经帮我们实现好了循环广播,只需要在初始的时候分别通过bls_ll_setAdvData接口注册进不同的Handle即可,协议栈会遍历广播每个handle的内容。(这只是我透过表象的猜想,不一定对)但Telink的SDK并没有做这种“过度”的封装,需要我们自己通过定时设置广播内容达到循环广播的目的,伪代码实现如下:#define SysTick_
2022-03-28 10:03:23 800
原创 单片机不支持printf 浮点类型的解决办法
在一些单片机中因为资源受限官方提供的SDK中通常不提供浮点类型数据的打印。如需浮点打印功能可以参考如下做法:前提条件串口通信正常printf 函数已经移植完成操作方法添加以下函数到工程,以下函数的作用为将一个float类型函数转换为一个字符串。将转换完成的字符串通过printf("%s");进行输出打印。/** * @brief 将float类型数据转换为字符串输出 * * @param num [IN] 要转换的数据 * @param n [IN] 小数位的个数 * @r
2022-03-28 09:50:47 1354 1
原创 用VScode替换CCS(eclipse)来编译程序
Vscode 替换CCS原理说明其实本质上CCS就是一个套壳的eclipse,它使用eclipse当做编辑器,真正的编译器是gmake。所以只需要在vscode中去跑gamke理论上就可以进行代码的编译。找到ccs目录下的gmake目录:如下图所示:我的目录为D:\ti\ccs1000\xdctools_3_61_00_16_core操作方法1.添加环境变量在环境变量中添加gmake的目录,方便我们全局使用gmake程序,添加环境变量之后重启VScode,就可以使用了。2.找不到XDCt
2021-12-17 23:37:01 5850 15
原创 HC05和电脑蓝牙通讯
通常情况下都是将HC05和HC04进行主从配对,然后进行通讯。如果手边没有HC04其实可以使用笔记本自带的蓝牙和HC05进行通讯。配置方法如下:将HC05配置为主机模式将电脑和HC05的保存连接删除。单击下方更多蓝牙设置,进行蓝牙串口的配置。添加HC05串口设备选择传出设备然后浏览选中HC05[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k3pjSHku-1638707454440)(C:\Users\songz\Pictures\博客截图
2021-12-05 20:31:44 6031 4
原创 PlatFormIO 配置项修改,解决烧录速度慢问题
记录了一些常用配置参数,工程中编辑PlatFormIO.ini 修改即可,可以解决默认串口烧录不成功、烧录速度慢等问题。ESP8266常见烧录速度:115200 256000 921600 3000000 ,设置其他速度可能导致匹配波特率不成功烧录失败。[env:esp12e]platform = espressif8266 ;平台board = esp12e ;开发板类型framework = arduino ;编译方式upload_port = COM17 ;下
2021-11-03 14:45:12 4851
原创 IIC 简单介绍
IIC介绍:IIC历史:IIC (Inter-Integrated Circuit),是一种同步、多主、多从、分组交换、单端、串行计算机总线,由飞利浦半导体(现在的 NXP 半导体)在 1982 年发明。它广泛用于在短距离、板内通信中将低速外设集成电路附加到处理器和微控制器上。IIC 也可以写成 I2C 或 IIC。自 2006 年 10 月 10 日起,实施 I2C 协议不需要任何许可费用。但是,获得恩智浦分配的 I2C 从设备地址则需要付费。一些竞争者如西门子(后来的英飞凌技术,现在的英特尔移动.
2021-11-01 11:18:45 5089
原创 Mosquitto 介绍和简单使用
介绍Eclipse Mosquitto是一个开源消息代理,实现了MQTT协议版本3.1和3.1.1。Mosquitto轻量,适用于低功耗单板计算机到完整服务器的所有设备。Mosquitto项目还提供了用于实现MQTT客户端的C库以及非常受欢迎的mosquitto_pub和mosquitto_sub命令行MQTT客户端。安装以Ubuntu16为例添加到存储库列表sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa更新软件包sud
2021-11-01 10:56:22 28751 2
原创 ESP8266 NodeMCU Arduino IO 映射对应表
通过此IO对应表可以将NodeMCU 的丝印和原IO定义对应起来。可以将此文件定义为system.h 包含到需要调用的文件即可。/* * @Author: Argon * @Date: 2021-03-16 19:41:04 * @LastEditTime: 2021-11-01 10:49:27 * @LastEditors: Argon * @Description: define esp8266 io pin to Dx * @FilePath: \espc:\Arduino_S
2021-11-01 10:54:23 803 1
原创 树莓派历史版本链接地址
无图形界面 Lite 版本下载地址为 http://downloads.raspberrypi.org/raspbian_lite/images/桌面加推荐软件完整版镜像下载地址为 https://downloads.raspberrypi.org/raspbian_full/images/树莓派系统是基于Debian系统进行的定制,历史版本下载地址为http://downloads.raspberrypi.org/raspbian/images/...
2021-11-01 10:41:59 1560
原创 fbtft 无法点亮ili9341问题分析和解决
问题描述在使用FBTFT驱动ILI9341屏幕时,出现白屏无反应。但是fbtft设备已经挂载成功,如下所示:[ 1.015507] fbtft_of_value: buswidth = 8[ 1.019597] fbtft_of_value: debug = 0[ 1.023301] fbtft_of_value: rotate = 270[ 1.027247] fbtft_of_value: fps = 30[ 1.105666] mmc0: host does
2021-10-10 15:42:41 1585
原创 wttr.in Linux 下查看天气
在Linux 命令行下可以使用wtt.in 来查看未来14天的天气情况。http://wttr.in是一个功能丰富的天气预报服务,它支持在命令行显示天气。它可以(根据你的 IP 地址)自动检测你的位置,也支持指定位置或搜索地理位置(如城市、山区等)等。1. 安装CurlcURL是一个利用URL语法在命令行下工作的文件传输工具,通常的linux发行版已经预装了此软件,若未安装可以用过包管理器进行安装,或者使用buildroot去安装。以Ubuntu 为例:sudo apt install curl
2021-10-10 11:33:45 954
原创 ESP32 IDF 串口映射方法
ESP32 IDF 串口映射方法修改方法:在ESP32 IDF软件包中其实已经支持了printf函数在UART0 / UART1之间进行切换,只需要在Menuconfig 配置项中进行配置然后重新编译即可。这里以ESP32的HelloWorldDemo为例进行说明:1.编辑源码打开 esp-idf\examples\get-started\hello_world Demo程序目录,输入 idf.py memuconfig 进入可视化配置项,修改如下目录配置项:选择:Component confi
2021-08-23 23:09:56 2612
原创 RT-Thread之旅:SConscript自动关联添加的.c .h
在添加的代码目录中新建一个SConscipt文件,将文件内容填充为下面内容即可。# RT-Thread building script for componentfrom building import *cwd = GetCurrentDir()src = Glob('*.c') + Glob('*.S')#libs = ['airkiss']libpath = [cwd]CPPPATH = [os.path.join(cwd)]# group = DefineG
2021-07-15 00:32:19 1028
原创 【Linux之旅】linux开发板环境搭建
系统烧录在进行操作之前要保证Uboot的可用性,按照教程:I.MX6U烧录/更新正点原子出厂系统_orange-bear的博客-CSDN博客环境变量设置在uboot启动之后需要手动设置网络相关参数ipaddr=192.168.2.100 #IP地址netmask=255.255.255.0 #子网掩码ethaddr=32:34:46:78:9A:DC #MAC地址serverip=192.168.2.153 #TFTP地址设置启动项EMMC启动检查
2021-06-10 23:07:26 2260 2
原创 【Linux之旅】TFTP安装
搭建 TFTP安装和配置 xinetd 执行以下指令,安装 xinetd。sudo apt-get install xinetd 查询/etc/下是否存在 xinetd.conf 文件,没有的话则自己新建一个。已经有 xinetd.conf 文件可以跳到 2.2.2 小节。ls /etc/xinetd.conf这里已经查到有 xinetd.conf 文件,如果没有,就执行以下指令创建一个 xinetd.conf 文件。sudo vi /etc/xinetd.conf创建出来的文件是空白
2021-06-10 22:59:15 1459
原创 观B站UP 谭盐 视频小记
世人慌慌张张,不过是图碎银几两。偏偏这碎银几两,能解世间万种慌张。这碎银几两虽解世间惆怅,可也断了儿时念想,让少年染上沧桑 ,压弯了脊梁。
2021-02-15 01:22:46 456
原创 STM32 如何移植U8g库
资料汇总:U8g2 github: https://github.com/olikraus/u8g2移植u8g2库到stm32 https://blog.csdn.net/apple_2333/article/details/95748006移植视频教程:https://www.bilibili.com/video/BV1y7411U7CN?from=search&seid=4892106553367340001注意的地方:OLED的RST引脚不能悬空,可以连接在STM32的NRST引脚上
2021-02-12 23:57:35 680
原创 Git不完全操作指南(从入门到踹门)
文章目录安装配置用户名新建版本库初始化版本库提交代码如果提示 “*** 请告诉我你是谁”错误:代码版本退回git reset版本退回:1.退回旧版本:2.回溯新版本:查看版本日志(所有提交的版本信息):撤销修改删除文件Git版本库机制关联Github或者GitLab:1.申请帐号:2.创建Repository:3.配置SSH keys5.链接远程仓库:6.将本地仓库资源提交到远程仓库:7.将远端仓库代码克隆到本地:8.将远程更新合并到本地Ⅰ.自动合并到本地master分支Ⅱ.手动合并到本地master分支9
2021-02-12 23:56:10 273
原创 MT7688 初步探索
起因最近参加了面包板社区的测评活动,领取到了一块海凌科的MT7688开发板,外观如下。Hilink相关资源官网资源官网提供了诸多的软件资源,但是大多是都是为出厂的透传固件所准备的。资源可以通过如下网站来获取:http://h.hlktech.com/mobile/download/fdetail/33网络透传模式出厂固件默认烧录的是Hilink定制的“傻瓜透传”固件,此固件已经集成了TCP/UDP网络透传服务,客户在使用的时候不必在使用程序或命令行来完成网络到串口的双向透传。极大的方便了
2020-10-24 23:27:39 5017
转载 高斯 GANSS GS87-D 设置指南
前言大概一年前入手高斯GS87-D白色茶轴, 用到现在个人感觉相当满意, 只是蓝牙设置逻辑颇为奇怪且繁琐, ~~说明书也弄丢了, 因此写下这个笔记权当备忘.~~今天突然在柜子角落发现了遗失的说明书, 故把之前文章中的错误改正并且把说明书上的其他也内容整理一下搬上来.蓝牙模式如何打开蓝牙模式供电蓝牙工作需要供电, 给高斯 GS87-D 供电有两种方式:键盘背后的开关打到ON;使用 USB Type-C 电源.切换模式: 有线和无线模式切换键是 Fn+P按下 Fn+P 右上角键
2020-10-15 11:11:53 11352 1
原创 Seeed STM32MP1开发板教程(2)GPIO的简单操作
1. 用GPIO sysfs读写IO(Seeed的设备树不支持这种操作,仅作为介绍)在Linux中,最常见的读写GPIO方式就是用GPIO sysfs interface,是通过操作/sys/class/gpio目录下的export、unexport、gpio{N}/direction, gpio{N}/value(用实际引脚号替代{N})等文件实现的,经常出现shell脚本里面。比如在shell中控制树莓派3B的GPIO12:sudo sucd /sys/class/gpioecho 12 >
2020-10-11 11:45:53 966
原创 Seeed STM32MP1开发板教程(0)前期准备篇
镜像下载和安装这部分请参考seeed官方wiki:https://wiki.seeedstudio.com/cn/ODYSSEY-STM32MP157C设备登陆默认情况下seeed官方提供的的镜像的帐号密码如下:用户名 :debian密码 :temppwd更换更新软件源因为debian默认的软件源在海外,国内访问速度异常感人,因此可以将默认软件源更新为清华大学的软件源。https://mirrors.tuna.tsinghua.edu.cn/help/debian对软件源进行修改之后对
2020-10-11 11:29:44 711
原创 Seeed STM32MP1开发板教程(3)IIC设备AHT10的使用
Seeed在出厂烧录的固件中挂载的设备树为stm32mp1-seeed-npi-base.dtb,这个设备树是不支持IIC的,我们需要替换为stm32mp1-seeed-npi-full.dtb,具体的操作请参考我的这篇博客Seeed STM32MP1开发板教程(1)Wi-Fi的使用。设备检测:不同的I2C设备的器件地址是不同的,Linux操作系统下I2C的器件地址在通常指的是高7位的数据,最低字节用来判断读/写。因此在程序编写时候发送的设备地址应该仅为高7位,七位地址如下图所示。[外链图片转存失败
2020-10-09 21:17:51 692
原创 Seeed STM32MP1开发板教程(1)Wi-Fi的使用
设备树替换Seeed在出厂烧录的固件中挂载的设备树为stm32mp1-seeed-npi-base.dtb,默认情况下此设备树是不支持Wi-Fi的,如需使用Wifi功能就需要挂载stm32mp1-seeed-npi-full.dtb这个设备树。直接修改uEnv.txt文件,此文件会在uboot引导Linux内核的时候主动去加载/boot/dtbs/4.19.9-stm32-r1目录下指定的设备树文件。打开uEnv.txtvim /boot/uEnv.txt编辑uEnv.txt文件将dtb修改
2020-10-09 21:10:44 644
原创 C语言调用shell命令
```c#include <stdio.h>#include <string.h>#define MAX_FILE_LEN 1024*10void executeCMD(const char *cmd, char *result){ char buf_ps[MAX_FILE_LEN]; char ps[MAX_FILE_LEN]={0}; FILE *ptr; strcpy(ps,.
2020-09-28 21:57:40 1295
LocalSDK-20191115.zip
2020-01-31
STM32烧录成Arduino的文件和工具
2019-03-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人