自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GKoSon的博客

活捉一枚野生程序猿

  • 博客(49)
  • 资源 (15)
  • 收藏
  • 关注

原创 STM32-12M-乱码

http://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=616329&highlight=HAL我以前就知道 发过帖子8M的话OK12M的板子 乱码当时我看到https://mp.weixin.qq.com/s/Rl_dkWjznjEf7JwlPH3zwA就是修改2个地方但是现在不好 没...

2019-08-30 13:37:08 158

原创 准备RTT串口

对接BM77模块 主要是看到U3那么继续分析BM77小板子是6个PIN 看闸机板子好了 做好焊接工作模块出来6根线红色+橙色是 3.3V和GND 作为一组棕色--RX--PB11黄色--TX--PB10红色--CTRL--PB1橙色--RESET--PB0先用自己熟悉的方式搞定!...

2019-08-29 17:34:26 203

原创 测试#define的左值##就是string的拼接

#include <stdio.h>int fun1(void){ printf("%s\r\n",__FUNCTION__);}int fun2(void){ printf("%s\r\n",__FUNCTION__);}#define GET_FUN(id) fun##idint main(int argc,char **argv){ GET_FU...

2019-08-29 16:13:34 733 2

原创 STLINK接线

2019-08-29 15:47:15 2653

原创 IAR环境准备

1下载最新8.4https://www.iar.com/iar-embedded-workbench/#!?currentTab=free-trials

2019-08-29 13:23:58 443

原创 中国移动OTA-暂时放弃

https://open.iot.10086.cn/doc/book/device-develop/OTA/example/simulate.htmlhttps://blog.csdn.net/yunjie167/article/details/90214866https://open.iot.10086.cn/doc/book/easy-manual/auth.html不得不放弃 浪...

2019-08-29 12:17:30 452

原创 HAL_Delay

__IO uint32_t uwTick;#define HAL_MAX_DELAY 0xFFFFFFFFUuint32_t uwTickFreq = HAL_TICK_FREQ_DEFAULT; /* 1KHz */ /*1U*/__weak void HAL_Delay(uint32_t Delay){ uint32_t tickstart = HAL_GetT...

2019-08-28 14:38:12 1194

原创 【野火】完成延时模块自己测试基于麒麟座

#ifndef __GDWT_DELAY_H#define __GDWT_DELAY_H//#include "stm32f7xx.h"//#include "stm32l4xx.h"#include "stm32f1xx.h"HAL_StatusTypeDef GHAL_InitTick(uint32_t TickPriority);void CPU_TS_Tmr_De...

2019-08-28 14:29:50 277

原创 快速的微秒延时--等待示波器

void DelayUs(unsigned short us){ unsigned int ctrlResult = 0; us &= 0x00FFFFFF; //取低24位 SysTick->LOAD = us ; //装载数据 SysTick->VAL = 0; SysTick->CTRL = 1; ...

2019-08-28 14:26:17 243

原创 自己上手

如何自己上手?1找到结构体 文件如下D:\Work\TOUCHBLUE+\Drivers\CMSIS\Includetypedef struct{ __IOM uint32_t CTRL; /*!< Offset: 0x000 (R/W) Control Register */ __IOM uint32_t CYCCNT; ...

2019-08-28 12:01:18 484

原创 [算法]递归一行代码解决约瑟夫环问题

https://mp.weixin.qq.com/s/xBiQHKdSop1HzKTF7EVhCQ约瑟夫环问题算是很经典的题了,估计大家都听说过,然后我就在一次笔试中遇到了,下面我就用 3 种方法来详细讲解一下这道题,最后一种方法学了之后保证让你可以让你装逼。问题描述:编号为 1-N 的 N 个士兵围坐在一起形成一个圆圈,从编号为 1 的士兵开始依次报数(1,2,3…这样依次报),数到 ...

2019-08-28 10:38:08 631 1

原创 基础知识-微信文章time_after

#include <stdio.h>int main(int argc,char **argv){printf( "%d---%d\r\n",(char)0X80,0X7F);printf( "%d---%d\r\n",(char)0XFF,0X7F);printf( "%d---%d\r\n",0XFF,0X7F);}//知识1--%d 输出有符号的整型 所以0X...

2019-08-28 10:23:15 249

原创 [野火]一种Cortex-M内核中的精确延时方法-ns级别-DWT

看书 对书里面内容写文字原创:杰杰物联网IoT开发2018-11-10https://mp.weixin.qq.com/s/1ruKZ2uJFaWqQn-tnGQp6A前言为什么要学习这种延时的方法? 很多时候我们跑操作系统,就一般会占用一个硬件定时器——SysTick,而我们一般操作系统的时钟节拍一般是设置100-1000HZ,也就是1ms——10ms产生一次中断。很...

2019-08-28 10:17:39 3540 2

原创 黑白名单的程序设计-蓝加需要优化

黑白名单下发:设计思路 第一次设备入网 需要自己去拉黑白名单这里去拉的时候携带的参数是1 代表首次此后设备正常工作 下电上电这样的话 去拉携带的参数不是1因为1代表一股脑的全部把这个地点的数据下来 那么参数是啥呢?用时间!平台一个一个给你下发黑白名单 都是携带时间的 我把时间保持下来下次就用这个时间上去拉!还可以保证 断点续传为此TOUCH代码有专门的模块#ifndef _S...

2019-08-27 16:29:45 800

原创 【经典】研究内存FLSH和SRAM--MX自己更新全局找STM32CubeF4

从这里开始 基于IAR分析问题回答:TOUCH的代码是放在FLASH的 它变量很多都在SRAM2里面也就是0X10开头的地方 包括mian.c的堆栈 它还有很多SRAM1也就是0X20开头的没有使用 地主家还有余粮!第一步:居然需要再次下载 我看看MX工具自己下载 很难受 一会儿就中断了自己去搞!全局搜索一下就开始浏览器下载啦 最后解压 放在文件...

2019-08-26 16:05:11 386

原创 蓝加GIT总结篇

上周五已经完成释放,并且给了邵振飞HEX,现在准备代码给同事我希望DEL一些里面的内容所以做一个分支对外准备新建分支 对外给人git branch reaseoutgit checkout reaseout效果如图现在开始疯狂操作新的释放版本注意修改一下提交的脚本echo "-------Begin-------"git log -5 --pretty=onelinegi...

2019-08-26 14:46:32 94

原创 MALLOC应用蓝加JS-我的大块方式不适合JS-JS内存泄漏

#if defined(_MSC_VER) //没用 这是微软的环境static void * CJSON_CDECL internal_malloc(size_t size){ return malloc(size);}static void CJSON_CDECL internal_free(void *pointer){ free(pointer);}s...

2019-08-26 14:29:02 125

原创 MALLOC模块

#ifndef __GMALLOC_H#define __GMALLOC_Htypedef unsigned char uint8_t;typedef unsigned short int uint16_t;typedef unsigned int uint32_t;typedef uint8_t u8;typedef uint16_t u16;...

2019-08-26 11:09:26 486

原创 一个疯狂的BUG JS还是malloc失败

昨天准备释放HEX了 临时发现施工用的矩形有按键的 我想把按键BBB声音拿到 简单修改 在释放自己测试下 看看OTA 我的神 超级大的问题!总是下载34次以后HTTP断开 以前是99次的时候断一次就好了开始分析问题!后来我注意到 问题不是在这里 因为测试比较多了 设备安装以后 入网 拉黑白名单大概134次下发以后 设备会自动死机!!回滚代码到以前 全部都是如此 死机!!...

2019-08-23 17:13:34 193

原创 记录一个BUG-malloc

目前MQTT收到消息的代码如下:可以看到 这里保存数据用的是mallocFREERTOS是传递的数据 不是地址 所以这里玩了一个鬼把戏 这个数据就是一个指针 完成传递的!看接收的那边就明白了在这里做了free!!这样是可以的!!!成对!!!一般也没有问题 情况如下:下面的也可以但是偶尔也有死机 如下:感觉跑飞了 不是一对一对的了!也即是接收的...

2019-08-23 10:35:29 168

原创 [混日子系列]开始ONENET学习RTT

麒麟座芯片用的STM32F103RET6闪存容量是E系列,达到512K板子使用了ADXL345这款小而薄的3轴加速度计,板载还有一个24C02 的 EEPROM找了几个BSP没有STM32F103RE的 强行修改为STM32F103RE在编译也可以 但是HEX下去看到现象不对!怎么办?找到GIT的那个例子开始吧https://blog.csdn.net/Sanjay_Wu/art...

2019-08-22 14:27:59 242

原创 【命令行】printf \b

转义序列 说明 \b 后退一格(Backspace) \t 水平制表(Tab=4个空格) \v 垂直制表 \r 回车(Enter) \f 换页 \a 发出鸣响 \n 换行 \" 输出/输入双引号(") \' 输出/输入单引号(‘’) \? 输出/输入问号(?) \\ 输出/输入反斜杠...

2019-08-21 15:33:30 4008

原创 【命令行】欢迎体验自己写的命令行任务

creat_console_task(); //控制台初始化 void creat_console_task( void )//任务模块接口{ static xTaskHandle consoleHandle; osThreadDef( console, console_run , osPriorityNormal, 0, configMINIMAL_STACK_...

2019-08-21 15:27:28 186

原创 STM32H7双核培训

MX直接安装在下面 默认:C:\Program Files (x86)\STMicroelectronics\STM32Cube\STM32CubeMX下载的包放在下面 剪切过去:C:\Users\XXXXX\STM32Cube\RepositoryWB--双核H7XX--双核 硬件信号量同步下载最新版本IARtypedef enum{ LED1 = 0,...

2019-08-21 14:35:37 3273

转载 【算法】最近常遇到的算法-数组嵌套

三分钟理解字符串经典考题:有效的字母异位词原创: 程序员小吴今天分享的题目来源于 LeetCode 上第 242 号问题,是一道字符串的经典考题。题目描述给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例 1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t =...

2019-08-21 14:22:01 351

原创 【算法】根据实际来优化算法-比较string

#include <stdio.h>#include <string.h>unsigned char aiot_strcmp( const char *pst , const char *str , unsigned char len){ if((len == 0)||(pst == NULL)||(str == NULL)) { return ...

2019-08-21 14:21:38 103

原创 IAP OTA技术要点

IAP技术要点:APP的代码:SCB->VTOR = FLASH_BASE | 0x20000;APP的KEIL0x8020000 0x600000x8000000 0x80000BOOT代码跳转之前必须__set_PRIMASK(1)BOOT代码最好少init 最后不要中断...

2019-08-20 14:53:38 837

原创 LCD1602-准备自己写模块前面已经准备好了GPIO控制可以完成了-US延时呢

/** ************************************************************ ************************************************************ ************************************************************ * 文件名: ...

2019-08-16 17:12:02 244

原创 LCD1602-测试GPIO一起控制

快速做一个工程 开始 while (1) { HAL_Delay(200); HAL_GPIO_WritePin(GPIOC, GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_9, GPIO_PIN_RESET); HAL_Delay(200); HAL_GPIO_WritePin(GPIOC, GPIO_PIN_7|GPIO_PIN_8|GPIO_P...

2019-08-16 17:06:14 770

原创 LCD1602开始--麒麟座OK

LCD1602每行显示16个字符一共2行DB0--PB5DB1--PB6DB2--PB7DB3--PB8DB4--PB9DB5--PC0DB6--PC1DB7--PC2控制使能PB4 [1--延时--0完成使能]数据/命令选择 PC6 [1-数据 0-命令]读/写选择 PA11 [1-读 0-写]分析一个数据过来比如11001010那么...

2019-08-16 15:58:08 370

原创 中国移动红外发射?

PC9做的红外发射 IR_Init(38000); 使用TIM8-通道4做PWM 或者PC9模拟翻转

2019-08-16 14:03:02 87

原创 【工具】snprintf和sprintf(buf,"%.3s",功能一样 在就已经不用memcpy+MIN了

#include <stdio.h>#include <string.h>/*int snprintf(char *str, size_t size, const char *format, ...);最多从源字符串format中拷贝size字节的内容(含字符串结尾标志'\0')到目标字符串成功返回源串的长度(strlen, 不含'\0')失败返回负值*/...

2019-08-16 13:38:41 477 1

原创 中国移动看原理图-接线

稍后自己做线去果然 直接连接 可以看到板子有LOG看上去在做M6312的AT指令果然看跳线帽 是放弃WIFI的

2019-08-16 10:56:47 370

原创 记录一个高级BUG

偶然出现一次,差点额忘记,但是一旦出现,后患无穷,记录一下。我做OTA升级,能感觉到BIN文件已经HTTP下载成功,并且新程序已经RUN因为新程序会在任务中一直鸣叫,但是MQTT一直没有看到设备入网。看LOG,我的设备没有连接到正确的平台!思考:这个BIN文件是之前上传到平台的,其间我已经修改了工程!因为CFG文件是不变了,设备会读CFG获得平台地址!也就是我CFG改了以后...

2019-08-16 10:28:18 187

原创 优雅的处理URL

http://192.168.66.34:9000/reader/08/14/1.bin如何优化的处理URL?目标:1-我需要192.168.66.34:9000 去连接平台2-我需要路径去拼接HTTP的GET 分析:第一步可以strstr拿到://然后移动3步拿到192.168.66.34:9000/reader/08/14/1.bin写一个字符串插入字符函数//在f...

2019-08-15 11:17:13 196

原创 汪汪队立大功sscanf处理url PATH

9000 reader/08/14/1.bin#include <stdio.h>int main(int argc,char **argv){ char pip[16]; int pport; sscanf("9000 reader/08/14/1.bin", "%d%s", &pport, pip); printf("%s\n%d\n", pip, ...

2019-08-14 11:24:06 230

原创 sscanf处理url 还没有最好

sscanf最合适找一个string#include <stdio.h>int main(int argc,char **argv){ char pport[5]; sscanf("192.168.1.2:8001", "%[^:]", pport); printf("%s\n", pport); return 0;}//192.168.1.2/*取...

2019-08-13 13:54:34 467

原创 蓝加开发技巧合计

函数内部用一用 #define TEMSIZE 16 #undef TEMSIZE下面的问题 == -1即使是char也不行 看到ack是255 其实-1就是255 怎么办?if(ack ==(char)-1)可以char ack=0;if(ack == -1) log(INFO,"自己打包失败\n" );Warning[Pe514]: pointless ...

2019-08-13 13:53:47 126

原创 恢复出厂设置的程序设计

本来想复位 恢复一下 也就是擦掉我的CFG文件的我以为是:case CFG_SET_RESTORE:{/*清空内部文件 在重启 凶猛*/sys_cfg_clear();soft_system_resert(__func__);}break;应该是可以的 但是还有高级的void device_set_default( void ){err_log_format();perm...

2019-08-11 09:32:04 859

原创 OTA中的搬运技巧for

================STM32F412我的搬运============================#define IAPBINPRJADD 0x08020000 //这个地址就是IAPBIN工程中的IDE设置的地址 main开头的地址!!务必#define IAPBINPRJADDEXT 0x08040000 //这个地址就是IA...

2019-08-11 08:29:31 241

iso15693Read.c

针对15693协议的NFC卡-ST25TV的操作 如果有开发需求可以参考 或者联系我

2022-01-12

麒麟座IIC测试AT24C02RET6.zip

通过中国移动的麒麟座开发板STM32F103软件模拟IIC读写板载的AT24C04测试的读写 基本工程--US延时--IIC模块--基于设备的对接层 含有git 和一个TOUCH的IICzip

2020-01-22

TOUCH-KING2.zip

OTA范例 现在成功完成自己的优化 保证SIM800C高性能的下载 成功率非常高 速度非常快 每次都是连接TCP执行下载

2019-11-21

TOUCH-KING.zip

自己做的OTA工程 包括BOOT工程 APP工程 合并的脚本 目前的这个HTTP下载思路比较独特它是SIM800C做一个HTTP下载部分 此后拿去头部在KFIFO中读写 成功率不是很好 打算后面优化这里

2019-11-20

统一蓝牙协议规范.docx

TLV的协议文档 很多场合都可以用 开始文档写好就可以做SDK了

2019-09-29

nanopb-执行完毕.C.H文件-3个文件

一个nanopb-0.3.9.3-windows-x86测试案例 如果编译出来 和我的.C.H一样 说明你成功了

2019-09-17

STM32-KEIL分散加载范例

以前看到IAR可以做 linux内核也可以做,一直以为是一个未解之谜,比如一个数组ARR[10]注意的话,你以后在每个模块.C.H用的时候用ARR[1] ARR[4]是不能在空白地方作为全局变量的 必须在函数内部 而 我们需要的是在空白地方做全局变量!分散加载就是这个技术!附件是我KEIL成功的!非常顺利,因为我从RTT源码里学习的

2019-04-24

W25Q64内部结构图

W25Q64内部结构图 方便快速管理内存 就像STLINK提供的工具一样

2019-04-09

STM32位带参考programming manual

HAL_GPIO_WritePin(LED_GPIO_Port, LED_Pin,GPIO_PIN_SET);//亮 这样的操作是库函数,试试位带吧。STM32F103有文章已经成功,但是L471貌似不可以,它GPIO的地址不在区间内!!但是可以自己写*p1=((uint16_t)0x0800);//不亮 看我文章吧

2018-12-26

NXPR663官方文档

NXP官网已经更新了,但是新包里面没有V2.0的描述,这个包是旧版本的,反而看的比较清楚。针对RC663开发有帮助

2018-12-05

STM32L471_HAL_SPI1_W24Q64读写代码

STM32L471_HAL_SPI1_W24Q64读写测试 之前都是标准库写的,这次换成了HAL库 可以看到风格是MX生成代码 然后搬运到对应的模块的地方

2018-11-14

STM32L471用户手册Reference manual

用户手册 比如在最后可以表达#define CHIP_ID_START 0x1FFF7590 #define CHIP_FLASHSIZE_START 0x1FFF75E0 完成芯片信息查询

2018-11-14

BM77数据手册的指令

bm77_read_mac(uint8_t *mac) bm77_write_mac(mac); 抽象2个函数 读写MAC地址

2018-11-12

M1卡读写上位机开发库函数说明文档

读写M1的3个流程,寻卡--防冲突--选卡 该文档指导库函数中返回值的意义SAK。这是最新版,增加了UID白卡的操作函数

2018-11-06

BB0906蓝牙协议

BB0906蓝牙模块,本文描述各种收发指令。安卓是bm77的设备使用蓝牙3.0协议spp,0906使用的是ble协议。

2018-10-30

空空如也

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

TA关注的人

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