自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 git pull总是提示输入merge信息

在拉去代码时有时会出现如下merge信息默认以vi文本打开的:q退出,完成拉取但是git log查询历史确存在一个merge的commit解决办法:

2021-10-14 18:32:14 1313 1

原创 头节点单链表

直接上代码#include <stdio.h>#include <string.h>#include <stdlib.h>typedef struct list{ int num; struct list *next;}list_t;//链表头初始化list_t *list_init(){ list_t *head = (list_t *)malloc(sizeof(list_t)); if(head == NUL

2021-06-01 17:55:52 93

原创 使用alios things rel1.6.6实现私有蓝牙配网

修改蓝牙UUIDalios things SDK默认蓝牙UUID如下:修改UUID(函数:ble_stack_init)如下:其余按照自己需求修改UUID蓝牙广播包组包蓝牙广播蓝牙数据包解析保存wifi的ssid和passwd简单粗暴型正常型...

2021-06-01 13:41:08 272

原创 vscode+remote_ssh+ubuntu

使用vscode+remote_ssh+ubuntu中遇到的坑软件如下电脑:win10 64位ubuntu:20.10vmware:16.10注意事项:必须安装16.04+的版本才可支持remote_ssh(限制要求)悲惨遭遇:之前下载ubuntu镜像文件选择错了,选择了16.04的i386的导致框架错误,remote_ssh一直连接不上ubuntu安装就不加赘述,网络上教程很多ubuntu下安装需要软件安装结束后,需要设置root密码(sudo passwd root)安装ssh服务

2021-03-20 18:52:42 317

原创 HSV HSL与RGB转换

算法公式请参考:转换公式转换工具请参考:在线转换下方代码可直接编译测试#include <stdio.h>// #define RAND_MAX_ONE //h:0-360 s:0-1 v:0-1 非百分比#define RAND_MAX_HUNDRED //h:0-360 s:0-100 v:0-100 百分比#define MAX(R,G,B) (((R)>(G))?(((R)>(B))?(R):(B)):(((

2021-02-04 14:40:00 289

原创 NRF52840之FLASH存储-FDS方式

采用NRF52840的开发板按键2按下,写入flash按键3按下,读取flash按键4按下,回收flashFDS数据帧格式FDS操作步骤一:修改sdk_config.h的配置参数二:注册回调函数,初始化,判断脏数据三:写入flash四:读取flash五:回收flash,flash初始化时判断脏数据个数,直接进行回收即可注意事项:操作记录,比如fds_record_update,fds_record_delete等,update和delete操作,必须先找到相应记录,然后才

2020-07-21 14:31:07 1880 3

原创 涂鸦Zigbee EFR32MG学习笔记-6:Event

以上节Timer为例,打开以下文件:软件已经实现事件的初始化,开发人员只需要定义事件和事件的处理函数即可:在按键回调中,调用事件处理函数:按下按键时,事件回调产生,并且每隔5s再次产生。再次按下按键时,事件回调结束。相关事件API接口函数:emberEventControlSetActiveemberEventControlSetInactiveemberEventControlSetDelayMS...

2020-06-08 14:12:41 542 2

原创 涂鸦Zigbee EFR32MG学习笔记-5:Flash

以上节TIMER为例,打开下列文件:1:先定义Token的名字CREATOR不可少,后续可自定义2:定义Token存储数据类型,可结构体,可数组3:定义Token的存储DEFINE_BASIC_TOKEN:基础TokenDEFINE_INDEXED_TOKEN:带索引的Token第一个参数与1中的CREATOR之后的需要保持一致第二个参数为数据类型第三个参数:DEFINE_BASIC_TOKEN:初始化的值DEFINE_INDEXED_TOKEN:数据类型的个数,上图中表示有3个st

2020-06-05 15:30:45 567

原创 涂鸦Zigbee EFR32MG学习笔记-4:TIMER

以上节USART为例,新建user文件夹,myTimer.cRTCDRV_Init已经由软件自动初始化,开发人员直接调用申请API,即可获得定时器;其余相关函数,在rtcdriver.c中自行查看

2020-06-04 11:51:17 735 1

原创 STM32cube之TCP裸机轮询方式测试

开发板:STM32F407ZGTx实验效果:点击开发板KEY0进行连接动作,点击KEY1发送字符串"test"至服务器前面LWIP已经设置ETH。新增PE3(KEY0)、PE4(KEY1)、TIM3(定时时间50ms)由于是轮询接收数据且无操作系统,所以ETH并不需要开启global interrupt由于LWIP需要每隔250ms自动调用tcp_poll函数,由于我们采用的系统是...

2020-06-03 14:32:33 727

原创 STM32cube之LWIP测试

开发硬件:STM32F407ZGTx测试目的:开发板接上网线,使用静态IP,Ping测试使用外部时钟8MHZ配置时钟系统168MHZ配置ETH和USART1开发板使用的RMII_TX_EN,RMII_TXD0,RMII_TXD1使用的芯片脚位为PG11,PG13,PG14需要修改,并且需要对PHY芯片进行复位,所以ETH_RESET对应的脚位PD3设置成输出,重新设...

2020-06-03 14:32:26 461

原创 STM32cube之串口DMA使用

开发板:STM32F411RETX串口2的RX使用DMA实现选择DMA,点击Add,选择USART2_RX的DMA串口初始中,对DMA也进行了初始化,因此需要使能DMA的时钟,所以将位置调换一下串口初始化之后开启空闲中断和DMA接收中断在stm32f4xx_it.c中修改void USART2_IRQHandler(void)main函数中增加一段打...

2020-06-03 14:32:17 364

原创 STMF103XX时钟选择和delay介绍

在stm32f10xx的启动文件中(startup_stm32f10x_xx.s),我们可以找到SystemInit跳转之后在函数最下发有一个SetSysClock();再次跳转之后,选择对应的函数,默认为SetSysClockTo72(),因为定义了宏SYSCLK_FREQ_72MHz再次跳转之后:在此函数中,我们需要选择时钟源,stm32f10xx默认...

2020-06-03 14:32:10 955

原创 STM32cube之串口中断使用

开发板:STM32F411RETX选择上节printf中的串口2在stm32f4xx_it.c中在HAL_UART_IRQHandler中在UART_Receive_IT中自实现HAL_UART_RxCpltCallback函数主函数显示接收到的数据...

2020-06-03 14:32:04 220

原创 STM32cube之串口printf使用

开发板:STM32F411RETX串口输出选择PA2 PA3串口2作为打印口串口配置在usart.c中,加入如下代码,huart2是cube自动生成的一个结构体变量,根据自己生成的修改#include "stdio.h"#ifdef __GNUC__ /* With GCC, small printf (option LD Linker->Librarie...

2020-06-03 14:31:58 773

原创 STM32cube之定时器使用

开发板:STM32F411RETX保留之前GPIO的初始化选择定时器TIMER3,内部时钟源,自动装载上一章节中我们配置的时钟都是16MHZ的,因此超时时间(1599+1)*(9999+1)/16MHZ=1s启动定时器(下次生成代码不会删除定时器的启动)定时器的回调需要自己实现,cube只帮我们实现初始化在stm32f4xx_it.c中会有如下的中断在点...

2020-06-03 14:31:51 738 1

原创 STM32cube之GPIO的使用

打开软件之后,通过MCU型号进行选择,以STM32F411RETX为例:首先配置时钟系统,如果使用外部晶振,需选择根据自己的需求设置对应的时钟设置对应的脚位为输出生成项目代码生成的用户代码,需要写在指定位置,这样在重新生成代码的时候,才不会被删除掉,下图放置的位置在重新生成项目代码时会被删除...

2020-06-03 14:31:34 421

原创 涂鸦Zigbee EFR32MG学习笔记-3:Printf

以上节BUTTON为例,配置相关USART串口初始化同样也由软件自动初始化,相关串口打印函数已由软件实现,开发人员直接调用打印函数:

2020-06-03 14:30:41 614

原创 涂鸦Zigbee EFR32MG学习笔记-2:BUTTON

以上节LED为例,修改外设,删除不需要的外设按键初始化同样也由软件自动初始化,开发人员直接在回调函数中使用即可:不管按键按下还是弹起,都会进入此回调函数下载程序参考笔记-1:LED...

2020-06-03 14:30:34 625

原创 涂鸦Zigbee EFR32MG学习笔记-1:LED

一:新建工程以Gecko SDK Suite: EmberZNet 6.5.5.0 SDK举例:选择EmberZNet 6.5.5.0 GA Soc Example下的Z3Switch:双击custom_efr32mg13p732f512gm48.hwconf出现外设配置界面:可自行配置外设,下图为创建example工程时的默认配置配置完毕之后,点击Z3SwitchSoc_2.isc中的Generate按钮成功生成如下代码并点击编译,编译成功如下:选择连接的设备,下载程序:

2020-06-03 14:30:27 1346

原创 涂鸦Zigbee EFR32MG学习笔记-0:获取SDK

一:下载Simplicity Studio软件下载地址二:注册三:下载SDK

2020-06-03 14:30:02 1098 1

空空如也

空空如也

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

TA关注的人

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