- 博客(15)
- 资源 (5)
- 收藏
- 关注
原创 内存池使用
思想: 静态分配空间进行数据存储,分配内存池结构体进行管理(包括哪一个位置是空闲的,每一次存储的时候存储的位置,释放空间的时候释放的位置,剩余空间等),添加入队出队列优先级进行有效快速处理(根据分配空间的结构体中定义的优先级,进行入队,入队的时候轮训每一个节点的优先级。3,在写入队列时,根据每一个模块定义的优先级进行入队。地址偏移是根据内存池的偏移进行管理。1,静态分配长度不同的空间,对数据量不同的模块进行存储。固定分配长度和个数不同的空间,进行消息存储。2,分配对应的内存池对每一个存储模块进行管理。
2023-08-09 11:00:17
119
原创 配置加串器 pattern 步骤 注意事项,详细说明
28, 配置984 的iic 0x70 =0x18 0x78 =0x1A ,0x71 =0x90 0x79 = 0x90 0x88,0x89 都等于0。//设置 IS_DES_INT。//设置 IS_DES_INT。29 配置中断 0x51 =0x83 0x40 = 0x26 0x41 = 0x8c 0x41 = 0x20。
2023-07-25 14:33:01
407
原创 #undef #define 和*.cfg文件
查看 关于#undef 这个意思是取消之前的定义.看最后编译的结果,像是XXX(A),替换了cfg里面的东西,直接变成了多行,这里还没整明白,加到代码里面的之后编译成.i文件后为。一个配置文件module.cfg。今天看见一段有意思的代码,
2023-01-06 15:25:22
156
原创 如何调整单片机功耗
如何调低功耗此文章以智能手表为例,其余的系统大同小异:目录一,智能手表功能(简介)二,智能手表一般功能(简介)三,智能手表其他模块 (简介)四,智能手表功耗调节一,智能手表功能(简介)提高人生活质量二,智能手表一般功能(简介) 时间显示,手机互联 , gps , 计步采集 ,心率采集,睡眠采集…三,智能手表其他模块 (简介)tp 模块 ,lcm模块 ,心率传感器,计步传感器,gps 模块…四,智能手表功耗调节 一 ,确认单片机整个系统最低功耗(最小系统功耗)通过相应手册 (一般
2022-08-06 17:33:26
994
原创 运算复杂度为len*len/2的 排序算法
/*列*/#include "stdint.h"#define __ucode uint8_t #define __uaddr uint32_t#define sort_big_operation(a,b,c) \do{ \ if( (a) > (b) ) \ { \ (c) = (a);
2021-11-30 16:37:08
763
原创 旋钮编码器编码dk05e01t
1,思想:通过旋钮编码器信号识别旋钮正转or反转从而进行需要的操作2,资料:编码器数据手册(1)从数据手册得知 A通道先来下降沿并且完成一个周期则为正转。(2)B通道先来下降沿并完成一个周期则为反转。(3)细化正反识别 (去掉抖动与毛刺)① A来下降沿中断后读取电平 A 低 B 高 + 延时3ms后B来中断后读取电平A低 B低为正转②B来下降沿中断后读取电平 B 低 A 高 + 延时3ms后A来中断后读取电平A低 B低为反转3,具体实现void dk05e01t_clearA(void
2021-08-10 15:16:29
836
原创 同样一个8位的flag不同的位存储方式
同样一个8位的flag不同的位存储方式第一种:定义好一个结构体之后,可以直接对其调试,还可以直接对定义的每一个位进行操作。这样的优点点是每一个位都是独立开的,且可以相关flag直接设置操作下面展示一些 内联代码片。typedef union{ uint8_t bytes; struct bit{ uint8_t b_0 :1; uint8_t b_1 :1; uint8_t b_2 :1; uint8_t b_3 :1; uint8_t b_4 :1; uint8_t
2021-06-12 17:26:06
277
原创 贪吃蛇小游戏
贪吃蛇小游戏以stm32c8t6 芯片 320*240显示屏 普通按键为例。使用工具1,keil编辑器硬件1,单片机(其他的相应修改)2,按键3,显示屏逻辑1,划分320240显示区域未长宽若干等分 这里划分成3224 的大小 软件模拟屏幕2,使用随机数生产方式产生食物或者墙壁3,使用链表方式记录蛇身三 , 主函数// An highlighted block#include <bmp.h>#include "user.h"//系统是24m的系统// RC
2021-06-08 20:05:11
260
2
原创 为什么GUI显示字符串的时候能识别长度,用sizeof和strlen 不能得到正确的长度。
为什么GUI显示字符串的时候能识别长度,用sizeof和strlen 不能得到正确的长度。 sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的空间,返回值跟对象、结构、...
2020-11-03 11:56:33
338
原创 尾查排序
尾查排序排序 :**原理:**将一串数挨个拿出来比较。**如何比较:**每一次和最后一个比较,比前面的大就停止。如果比前面的小,就把被比较的数组往后移一位,再次与前面的数组比较,直到比前面的大就停止或者数组比较到arr[0]时停止。下面内容的限制 ,1,数组长度被限制。2,可以成传入参数进来比较后面使用的时候根据情况修改便可。void Apply(){ char arr[10] = {9,5,8,4,6,7,1,11,2,3}; char path[10]; ch
2020-09-25 17:18:30
164
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人