随笔分类 - 单片机FreeRTOS
摘要:STC32G12K128单片机研究 1. 新一代的32位机,8051内核,速度更快
阅读全文
摘要:原因是底层的sprintf 不支持 g参数,比如下面的 double d = item->valuedouble; sprintf((char*)number_buffer, "%1.17g", d); 但是咱们底层的代码不支持 g,所以这个 函数是失效的,从而导致 cJSON_AddNumberT
阅读全文
摘要:BC95 是兼容海思指令集和部分移远Q指令 BC260 是移远自有指令集
阅读全文
摘要:1. 有损声音编码的格式, 网上的库下载地址 https://opus-codec.org/downloads/ 2. 网页提供 的 Opus-tools 提供命令行实用程序来编码、检查和解码 .opus 文件 3. 看下代码,在网页下载代码,目前最新是 1.4版本 4. 代开代码,看下官方的例程怎
阅读全文
摘要:1. cmake 的作用是生成 makefile 文件,因为makefile 比较麻烦,那么写完cmake 然后用工具生成 makefile 2. 我理解的 一个 cmake文件对应一个模块, 有5个半 的部分组成,分别是 (1) 编译设置 (2)需要头文件路径 (3)需要的 C 文件 (4)需要的
阅读全文
摘要:看下实现,就是给一个任务发送了一个事件。event 有3个参数,第一个参数是回调,第2个参数是回调函数的实现,第3个参数是回调函数的参数。 bool osiThreadCallback(osiThread_t *thread, osiCallback_t cb, void *cb_ctx) { if
阅读全文
摘要:1. 原理图如下,超声波测距,然后数码管显示距离 2. 代码如下 #include <hidef.h> /* for EnableInterrupts macro */ #include "derivative.h" /* include peripheral declarations */ #de
阅读全文
摘要:1. 先看原理图,使用内部的ADC电压采样,通过数码管输出 2. 相关代码 #include <avr/io.h> //1 总的来说,ADC总共有3个寄存器, // 这个ADC是10位的,原来找到了寄存器的头文件 #define LED_DATA PORTD #define LED_CONTROL
阅读全文
摘要:#define NIMEN QINWO+4 函数,由于QINWO没有定义,导致编译错误,错误的地方在头文件这行。那么从里面可以得到的经验教训是,如果编译器提示错误在哪行,说明出问题的地方一定跟这行里面的东西有很大的关系。 mian { printf(NIMEN); }
阅读全文
摘要:如果一个函数内部有太大的数据,可能会导致异常死机,之前调试代码遇到过几次。 void adc_test(void) { char adc_data[8192] = {0}; }
阅读全文
摘要:C语言按指定分隔符拆分字符串 1. 先看下面的函数 参数1:分隔符、 参数2:字符串 参数3:分割后的字符串存放的位置 参数4:预计需要分割的个数 int at_get_words(char chop,char *srcStr, char **word, int size) { int index
阅读全文
摘要:1. 在搞TCP的时候,经常需要按照协议组包。大部分数据之前都是结构体形式的,那么怎么用TCP发送出去 typedef struct { char pack_head[2]; short len; short cmd_num; unsigned char index; unsigned char f
阅读全文
摘要:1. TMC4361 是一个步进电机运动控制器。下图我有几个地方没搞明白。 和微处理器通过 SPI接口通讯。 与 SPI 步进电机驱动器通讯的 SPI 接口 。 dcStep是什么?步进电机转速随负载动态变化。 NFreeze是什么?如果电路板级出现功能障碍, 某些应用需要对策来立即结束当前操作。
阅读全文
摘要:1. 如果将关系密切(比如两个任务之间需要经常收发数据)的若干功能分别用不同的任务来实现,则需要进行大量的任务之间数据通信和同步通信,这系统来说是一个很大的负担。因此应该将关系密切的若干功能组合成一个任务,相关数据为各个功能共享,因此可以节省大量的资源。 2. 任务之间的切换需要占用CPU的资源,所
阅读全文
摘要:消息发送函数OSMboxPostOpt() 作用,ucos 3中的消息邮箱,具有广播功能,发送一条消息就可以使所有等待该消息的任务进入就绪状态,从而完成消息分发功能,具有一个消息唤醒多个任务的机制。
阅读全文
摘要:1. 先看下引脚 2. 供电,用逻辑分析仪测试下数据线 3. 插上淘宝买的雨量传感器的转接板,看下电脑收到的串口数据 4. 测试此时数据线的逻辑,转接板一共发了4个数据,但是雨量传感器没有回复
阅读全文
摘要:1. ADC的初始化部分基本一致,下面是引脚复用配置 2. 下面是功能初始化 3. ADC的数据采集有3中方式,中断,DMA,正常查询模式,下面是正常查询模式的代码
阅读全文
摘要:1. 前面的数 7A 01 00,计算的结果是0X4920 2. 那么把数据CRC加上 3. 测试代码,计算出来的结果对不上,什么情况?可是我把参考模型的全部都选了一遍,也对不上其中一个!!! 4. 换了套代码,还是一样的值,难道说,CRC检验的必须是双数字节吗?我输入的是5个,或许我可以输入6个测
阅读全文
摘要:1. 仿真的时候,进入之后 2. 说是main()未定义,可是明明定义了,什么原因?喔,看错了,是--main。对比了一下和正常工厂的配置,都一样,换个jlink V9测试一下吧。换了个ST LINK V2 也不行,看样子是工程的问题喽?屏蔽了一些main()函数的一些代码,发现可以执行到main(
阅读全文