自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(62)
  • 资源 (7)
  • 收藏
  • 关注

原创 给QT程序添加图标

1.先准备一个ico图标文件,可以自己做一个,或者到一些网站找找,比如下面这个。2.然后转换完毕将xxx.ico图标文件放到与.pro同一个目录下。编译运行,可执行exe应用程序图标就变成你想要的效果了。3.在.pro文件添加一行代码。

2023-12-20 10:36:52 661

原创 STM32的M4内核在keil上面float访问就hard_fault原因

个人说明:尤其最后一种,在开发中有时会使用内存1字节对齐的方式,造成float没能做到4字节对齐,从而在访问时出现hard_fault的情况出现。如果你的应用程序中使用了浮点数,确保在 Keil 中启用了浮点单元支持。在编写代码时,确保访问浮点数的内存位置是正确对齐的,否则可能会导致硬件故障。:在 STM32F4 中,硬件浮点单元的配置需要匹配你的应用程序。:如果你的应用程序中有使用浮点数的中断处理程序,确保这些中断的优先级设置正确。:确保你的栈和堆大小设置足够大,以容纳浮点数操作可能使用的临时数据。

2023-11-07 11:19:45 1599

原创 WSL下gcc for arm交叉编译链的系统配置

先设置PATH环境变量,然后在make编译时指定ARCH架构 CROSS_COMPILE交叉编译工具链(执行make命令时指定的参数,只对当前命令有效;下次执行make时仍需要再次指定那些参数)设置完毕后,要执行 source ~/.bashrc 命令使其生效,这条命令是加载这些设置的环境变量。也可以手工执行“export”命令设置环境变量,该设置只对当前终端有效(另开一个终端需要再次设置)。使用这条指令查询,如果版本等信息打印出来则表示配置成功。如需永久修改,请修改用户配置文件。

2023-10-22 21:07:26 1137

原创 vsc连接wsl安装vsc时遇到权限问题的解决方案

mkdir: cannot create directory ‘/home/xxx(用户名)/.vscode-server’: Permission denied。可以新建文件 /etc/wsl.conf,并拷贝如下内容。遇到下面的权限提示时。

2023-10-14 23:44:26 1194

原创 Windows上用QT开发BLE(Bluetooth low energy)程序,及一个坑的填充

由于BLE的一些方法不能直接在slot中操作,会造成运行时奔溃,并报错:Could not await service operation (A method was called at an unexpected time.因此,需要在slot中做一些延时,延时方法使用QTimer的singleShot,也就是上面几个函数中使用的 QTimer::singleShot(),这点很重要!6.对搜索到的服务进行处理,即slot槽函数ble_dev_tool_service_discovered_slot。

2023-05-28 22:40:19 9664 35

原创 gitlab远程仓库操作之配置ssh

第一步:创建SSH Key。第二步:登录github,打开“settings”中的SSH Keys页面,然后点击“Add SSH Key”填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容。在了解之前,先有git账号,由于你的git仓库和github仓库之间的传输是通过SSH加密的,所以需要一点设置。Id_ras是私匙,不能泄露出去,id_rsa.pub是公匙,可以放心地告诉任何人。点击 Add keys,你就应该可以看到已经添加的key。

2023-05-10 19:44:36 1019

原创 ubuntu基于Docker搭建Gitlab服务器

因为通过ssh链接gitlab时默认访问的是22端口,但是使用docker部署,22端口在宿主机一直被占用,所以映射为2222端口,需要修改gitlab配置文件。GitLab的访问地址是:http://IP:8000/。即时是GitLab被我们玩坏了,只要这三个文件还存在,就可以很简单的重建。现在就可以通过地址:http://IP:8000访问GitLab,但是为了正常使用,我们还需要配置GitLab。GitLab的配置文件在我们外挂的磁盘下/gitlab/config/gitlab.rb。

2023-05-10 19:24:57 1482

原创 gitlab服务器发送邮件配置

找到如下图所示的部分,放开注释,修改配置,此处我用的发件邮箱是QQ邮箱,所以域名配置都是qq.com,如果用的是163或者gmail邮箱等等,更改对应配置即可;如果您的SMTP提供程序使用端口25或587,则SMTP连接开始时 未加密,但可以通过STARTTLS进行升级。注意: 这将禁用您的GitLab实例中的所有传出电子邮件,包括但不限于通知电子邮件,直接提及和密码重置电子邮件。如果您的SMTP提供程序正在使用端口465,则SMTP连接开始 通过TLS加密。在GitLab服务器上,执行。

2023-05-10 19:11:58 3675

原创 KEIL MDK5.37/8版本自行添加AC5(ARMCC)编译器

点击Use Arm Complier一栏最后的三个省略号,选择刚刚安装的编译器路径。其中,ARMCC是旧版的编译器,ARMCLANG是3.7/8版本的编译器。.37开始,AC5(ARMCC)编译器不再默认安装,需要独立安装。或者从旧版本的keil安装目录中拷贝到新版的keil中。切换至Folders/Extensions选项卡。查看可选编译器,是不是出现了AC5?到此,添加编译器就完成了。

2023-05-10 18:10:03 1900

原创 git 解决 “fatal: Could not read from remote repository.“

如果是客户端与服务端的ssh key 不匹配,此时需要先将本地生成的 id_rsa以及id_rsa.pub这两个文件【一般在用户名下的.ssh文件夹下】删除掉,然后再使用上述指令生成新的rsa密钥。如果是客户端与服务端未生成ssh key,那么直接使用:ssh-keygen -t rsa -C "youremail@example.com" 生成新的rsa密钥即可。”,然后打开之前新生成的id_rsa.pub文件,将密钥复制后填写到账户中。注: 以上操作命令均在 Git Bash 中完成。

2023-05-10 18:04:03 5422

原创 ubuntu安装小米随身wifi驱动

最近装了一台小机器,Ubuntu系统,20.04版本,想着用网线实在麻烦,就翻出来了以前的一个小米随身wifi,然而插在。上,发现wifi用不了,于是百度之,找了些文章,使用如下方法解决。发现已经有wifi,并且可以链接网络上网了。先用有线网络让机器能够上网,然后在终端输入。留意期间如果出现一些错误提示可以不用管。

2023-05-08 09:42:12 892

原创 删除keil编译生成的过程文件

在Keil中编译工程时,会生成很多过程文件,工程文件夹就会变得很大,当复制此工程时,就会不方便。一般的过程文件后缀为:.o .d .crf .htm .dep .lnp .axf 等。需要注意的是,上面的.sct后缀的文件其实是不能删除的,否则芯片的描述文件丢失编译就会出现错误,即找不到sct文件。要复制工程时,双击执行它,就会自动把上述的过程文件删除,让工程文件夹最小。保存为 keilkilll.bat,后缀名为.bat。

2023-05-06 23:34:29 982

原创 STM32WB55的SDK使用SWO打印功能的方法

开发过程中,经常需要对调试数据进行打印,一般会使用串口,而STM32一共有2个串口,分别是USART和LPUART,对于一些需要外挂串口设备超过2个及以上的系统来讲,就显得不够用了。SWO输出的功能只能在Debug仿真模式下才能使用,在下载程序,并启动仿真之后,通过工具栏的view下拉菜单下的serial windows下的Debug(print)viewer即可进行打印观察了。5.当然,SWO也有一个缺点,那就是它是一个单向的通信,也就只能用来打印信息,不能作为输入。四、SWO输出的使用。

2023-03-21 10:53:20 1238 1

原创 STM32WB55的开发的SDK几个注意点

STM32的SDK非常强大,基本涵盖了比较多的应用demo,但在利用sdk进行应用开发时,需要注意一些小细节,本文记录部分需要特别注意的地方,以备参考。

2023-03-14 15:03:28 594 1

原创 RT-Thread Studio创建STM32WB55工程

本文介绍如何利用RT-Thread创建STM32WB55的工程

2022-12-16 14:00:03 763

原创 Qt 获取本机的IP地址、MAC地址

Qt 获取本机的IP地址、MAC地址

2022-11-09 09:14:54 510

原创 VScode打开ESP32工程头文件波浪线不跳问题解决

VScode打开ESP32工程头文件波浪线不跳问题解决

2022-09-10 00:08:13 3613 9

原创 ESP32的VScode环境搭建

介绍ESP32的VScode环境搭建和需要注意的若干问题

2022-09-07 13:49:42 3992 1

原创 STM32WB55的FUS更新及协议栈固件烧写方法

STM之前出了WB系列的无线多协议芯片,可以支持BLE、ZigBee等常见主流协议,甚至可以多协议共存动态运行,芯片集成了M4和M0双核,确实比较不错。今有机会项目中一试。新拿到的WB芯片需要根据情况更新FUC和烧写协议栈固件,下面介绍相关的方法和注意事项...

2022-08-06 23:13:46 1656 2

原创 51单片机读取DS18B20(单总线)

DS18B20的介绍和操作

2022-06-14 14:50:09 3091

原创 关于keil中,while循环条件不成立却无法跳出的问题

关于keil中,while循环条件不成立却无法跳出的问题

2022-06-10 17:25:42 2705 2

原创 汇顶Goodix GR5515的125K Coded模式广播、扫描以及链接

一、在从机端初始化广播参数的时候需要使用gap_ext_adv_param_t s_gap_adv_param;来定义参数变量,并进行如下的参数赋值 s_gap_adv_param.type = GAP_ADV_TYPE_EXTENDED; s_gap_adv_param.disc_mode = GAP_DISC_MODE_GEN_DISCOVERABLE; /* The advertisement shall not be both connec

2022-04-26 10:12:48 973

原创 汇顶Goodix GR5515的Broadcaster与Scanner的Role配置

首先是Broadcaster的配置上,需要注意配置的参数选择,如下。其中的 APP_USING_ADV_ONLY_EN 即为选择Broadcaster只广播模式还是可连接模式# if (APP_USING_ADV_ONLY_EN==true) s_gap_adv_param.disc_mode = GAP_DISC_MODE_BROADCASTER;# else s_gap_adv_param.disc_mode = GAP_DISC_MODE_GEN_DISCOVERABL

2022-04-26 09:51:19 460

原创 IAR EWARM 如何解决 Inconsistent wchar_t size 错误

在使用Nordic的NFC开发的时候,碰到了如题的错误,查找相关资料,发现如下的说明Linker error Error[Lt009]: Inconsistent wchar_t size - Nordic Q&A - Nordic DevZone - Nordic DevZonehttps://devzone.nordicsemi.com/f/nordic-q-a/27260/linker-error-error-lt009-inconsistent-wchar_t-sizeSDK 14.

2022-04-16 15:23:48 1690

原创 汇顶Goodix GR5515的一些小细节

1. 关于IO口的电压域和功能特别说明如下表所示,汇顶这颗芯片还挺特别的,使用的时候还得特别的注意2.关于串口5515一共有2个串口,但只有一路支持DMA,即UART0支持,UART1不支持3.需要特别注意custom_config.h文件中的配置,如CHIP_TYPE:定义芯片型号是5513还是5515APP_DRIVER_USE_ENABLE:定义是否使用app驱动DFU_ENABLE:DFU功能CFG_MAX_CONNECTIONS:最大连接个数……等等

2022-04-08 15:26:47 3498

原创 汇顶Goodix GR5515的FREERTOS移植及低功耗测试

其实说移植,更确切说是完善DEMO Code,因为官方已经有一个ble_app_template_freertos的demo code了,为了方便测试功耗已经功能的运行.1.打开工程工程的目录结构还算简洁,

2022-04-07 18:39:40 1564

转载 收藏一个Nordic和Zephyr的博客,做后续开发参考

开发你的第一个NCS(Zephyr)应用程序 - iini - 博客园

2022-02-08 16:47:23 358

原创 关于使用mingw64进行Atmosic蓝牙的编译下载调试

安装完SDK之后,可以使用keil编辑、编译,但不方便下载,因此需要使用 mingw64 进行编译和下载程序下面记录操作步骤流程1.安装完SDK之后在开始菜单中会有如下文件夹,其中 SDK_4.2.0就是要使用的mingw64工具点击打开就会跳转到SDK所在目录后续最常用的几个命令如下1)ls 列出当前路径下所有的文件夹和文件2) cd 文件夹名称 跳转到其中的下一个文件夹3) cd .. 返回...

2021-12-30 09:50:12 524

原创 windows使用Apple的Trackpad

因为右手使用鼠标非常多,造成右手经常疲劳,又担心鼠标手严重,所以买了一只有出色触控体验的trackpad使用,但又发现在win上只有触摸和点击的功能。后来发现有一个国外的ExtraMagic,但需要安装驱动,且电脑必须开启测试模式,另外,很重要一点是这个软件限制了使用时间,即安装之后只能使用7天,七天之后只要电脑重启了,就不能使用,必须重新下载安装软件安装才能使用。 之前在网上一直找不到类似的软件,今天电脑又重启,提示软件过期又得重新安装,于是乎我就想度娘上看看有没有更新...

2021-11-03 11:12:54 3053 8

原创 关于Cypress PSoC 6使用DMA驱动DAC的输出

前面已经说明记录如何使用DMA进行ADC采集,本文再说明如何使用DMA进行DAC的输出控制一、硬件连接关系和配置如上图1.DAC的时钟控制DAC的输出频率2.DAC的trigger输出到DMA的tr_in,即每次DAC输出完成触发一次DMA搬运二、DMA配置需求是在固定时间内,通过一个IO口输出1024个点的电压数据由于是一个IO口,每次只需要向一个目标地址搬运一个数据,因此只需要一个Descriptor即可Descriptor的配置如下。注意此处就可以利用X l..

2021-11-01 16:37:07 588

原创 关于Cypress PSoC63的DMA配置(二)

在前一篇的文章中,Cypress的DMA一个Descriptor只能做到256次的ADC采样,而项目需求需要达到1024次,因此需要用到多Descriptor的方式。1.首先Descriptor是可以创建多个的,最多可以255个2.创建之后,将每个Descriptor首尾串联3.在前3个Descriptor的Trigger output、Interrup以及Chain to descriptor的配置如下这样就能执行完本descriptor就接着执行下一个descriptor..

2021-10-29 21:49:03 283

原创 关于Cypress PSoC63的DMA配置(一)

由于使用了PSoC Create,因此PSoC63的DMA配置可以通过这个软件的组件进行预配置,文中以ADC采样触发DMA存储为例说明一下配置的各项目标:ADC每次采样两个通道的值(ADC的配置不在此赘述),并在EOS触发一次DMA数据拷贝,采样3次之后DMA模块触发中断配置说明:1.将ADC的EOS接到DMA的tr_in,并将interrupt接到isr2.DMA的配置如下对配置的个别重要参数做简单说明由于我们是ADC一次触发两个通道,且每个通道是2字节,并且3次采样之..

2021-10-29 11:31:56 624

原创 Altium Designer安装孔周围放置圆形Polygon Pour Cutout

1. 在Keep-Out层画2个圆, 中间的圆用作安装孔, 外圆做为禁止覆铜层. 这样做的好处是,放好安装孔后, 外面禁止覆铜层也覆不上铜, 防止螺钉与覆铜接触.2. 选中外圆, Tools -> Convert -> Create Board Cutout from Selected Primitives.3. 双击外圆, 选PolyRegion4. 选Polygon Cutout, Layer选Multi-Layer5. 删除外圆6. 这样在定位...

2021-02-08 00:15:43 4581

原创 双电源自动切换电路

日常电器中,双电源自动切换的例子随处可见如:交流适配器和USB供电的电源切换、电池供电和USB供电的自动切换。这些电路都遵守一个共同原则:优先选择电压高者。其实最开始这个电路是在 锂电充电电路上发现的,数据手册非常贴心的给出了双电源自动切换的参考应用,简单易实现。电路:电路实际现象:只插入交流适配器,电路会自动切换为交流适配器供电。 只插入USB-5V电源,电路会自动切换为USB供电。 同时将交流适配器和USB-5V电源接入电路,由于交流适配器的输出电压一般为 ...

2021-02-05 15:20:34 13896 7

原创 RTT在STM32L4上的PWM没有输出的一个重要原因

stm32中使用pwm时存在问题,没有输出呀,其根本原因在于drv_pwm中没有打开时钟也就是打开对应的时钟,添加 __HAL_RCC_TIMx_CLK_ENABLE();就可以使用啦。static int stm32_pwm_init(void){ int i = 0; int result = RT_EOK; pwm_get_channel();#ifdef BSP_USING_PWM1 __HAL_RCC_TIM1_CLK_ENABLE();.

2021-01-19 16:22:33 1320

转载 IAR仿VS Code配色方案

IAR仿VS Code配色方案先展示一下效果配置方法设置完背景颜色后,设置每种语法的字体颜色。我是采用取色的方式获取VS Code中每种语法字体的颜色,然后在IAR中填入对应的RGB数值实现的。具体如下图:填写这三个数值即可。下面给出每种语法具体的字体颜色,对应着进行输入即可。当然也可以自己取色,获取出三原色值填入。每种语法字体具体的三原色值背景颜色都是用的 30, 30, 30语法 红 绿 蓝 字体风格 Default 177

2021-01-03 20:31:59 1487

转载 qt中建立图片资源文件

qt中如果你要添加图片资源文件我们需要执行以下步骤:(1)先找好一张图片,这里就不多说了,网上资源很多。(2)把我们找好的文件统一放到一个文件夹,然后拉到工程文件所在的文件夹下(3)在qt中新建一个资源文件,注意右键点击主文件找到添加新文件(4)找到QT 点击右边的QT Resource File(5)点击choose,然后我们自定义一个名字(6)如果是第一次添加则要找到刚才添加的资源文件,都是在最下面,右键点击Open in Editor...

2020-12-22 17:30:24 574

转载 别人的一点感悟

原文地址:https://www.cnblogs.com/Renyi-Fan/p/8148658.html翻过这道山,就有人听到你的故事。项目(需求)是很好的学习途径,项目(需求)+看书,这样效果才好,注意项目在前面。方向错了的话,容易出问题和狼狈。择苦则安,择做则乐(闲)。悟透:所有错误的抉择(所有的挣扎)都是因为没想明白,没领悟透。接触:那些不好的东西,不要接触,停不...

2020-04-20 21:21:06 337

转载 PKCS7填充标准代码实现(C)

在AES加密算法中,若加密数据不是16bytes的整倍数,则需要按照一定标准对数据进行填充,使其满足 DataSize % 16 = 0。本文是根据PKCS7标准进行数据填充。PKCS5Padding和PKCS7Padding都是密钥的一种填充方式,即当密钥长度不足时的一种密钥填充方式。PKCS5Padding的填充方式为当密钥长度不足时,缺几位补几个0,eg.针对AES128,如果密钥...

2020-03-17 10:23:53 1446

原创 NB-IoT:指定频点操作

可以指定频点,但操作上有一定的顺序要求,可以参考如下:AT+NEARFCN=0,2508,123——这里取值均为例子AT+CFUN=0AT+NCSEARFCNAT+CFUN=1AT+CGATT=1先设置频点,然后再清除频点,然后在CGATT...

2019-07-25 17:50:16 2011

51单片机操作ds18b20

51单片机单总线操作ds18b20温度传感器,适合初学者,课题组等学习交流使用

2022-06-14

51单片机汇编语言P0口接8个LED,中断0和1接按键,闪烁移位程序

51单片机汇编语言P0口接8个LED,中断0和1接按键,闪烁移位程序,包含汇编程序所有逐行注释和流程图

2022-06-10

基于nrf系列(nrf52832)的ads1120驱动

基于nordic的nrf52系列的nrf52832,做的ads1120驱动,驱动中将spi部分驱动单独做了一个,这样就可以在其它使用spi的设备中也是用。代码作为学习和交流,产品化的话请根据需要进行完善

2022-06-09

基于nrf52系列(nrf52832)的tmp112、bh1750、sht3x驱动

基于nrf52系列(nrf52832)的tmp112、bh1750、sht3x驱动。由于都使用的I2C,因此将I2C部分独立提取出来。各自再有自己的驱动。代码作为交流学习使用,产品化请自行根据需要完善

2022-06-09

nrf52系列(nrf52832)的VKL128液晶驱动程序

nrf52系列(nrf52832)的VKL128液晶驱动程序,使用twi(I2C)进行驱动,代码做交流学习使用

2022-06-09

CC2541认证(FCC、CE等)代码,也可作为频点功率测试用

固件默认上电即处于发射状态,文件名中的2402MHz、2440MHz和2480MHz表示上电初始状态所处信道,MODULATED和UNMODULATED分别表示调制波和非调制波          通过Key1可以在如下6个Tx状态间切换     2402_UNMODULATED——>2440_UNMODULATED——>2480_UNMODULATED——>2402_MODULATED——>2440_MODULATED——>2480_MODULATED     按下Key2键则进入Rx模式,所处信道为2402MHz     按键引脚如下,均为低电平有效,端口内部上拉     Key1:P0.4     Key2:P0.5

2022-06-09

在nordic的芯片上移植TI的OSAL的snv

ti的osal中有一个flash的snv模块,用起来还是挺好用的,方便灵活,且考虑了擦写均衡,因此本次尝试在外部的flash中使用该模块,而使用的主芯片为nordic的nrf52832 主要包含出了flash驱动app_spi.c,外部flash读写app_flash_ext.c,以及snv的代码修改osal_snv.c,osal_snv.c文件保存了原有代码部分方便对照 因TI的osal_snv.c代码有可能涉及到版权问题,因此本代码仅作为交流学习使用,商用请留意其版权说明。

2022-06-09

空空如也

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

TA关注的人

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