- 博客(52)
- 收藏
- 关注
原创 芯片知识
1.合泰的触摸芯片唤醒:按键开了唤醒之后,寄存器STANDBY_TIME会从127倒计时,63ms减1,倒计到0就进入休眠,有按键按下就好重新装载127。他们工程师推荐,STANDBY_TIME<5时就去做休眠的准备,如果不想休眠,就固定时间赋值STANDBY_TIME为127.
2026-01-31 10:10:56
97
原创 vscode中只在固定后缀的文件中搜索
3.vscode只有排除,没有包含;也就是说只有黑名单,没有白名单;所以把不需要的文件都弄进去,保存一下。5.重新打开vscode就可以了。// 排除常见无需搜索的目录。2.输入setting,选择。4.在搜索这里把排除勾上。我就只想搜.c.h文件。
2026-01-16 09:02:46
305
原创 单片机中如何随机
2.我们使用步长,比如1~20,先把随机值循环一遍,然后步长自加,再把数值循环一遍,步长再自加,步长20后变成1,依此循环。1.我们先用电脑直接产生1000个随机值,放到单片机中,这样你就有1000个伪随机值了;
2025-12-20 08:43:20
153
原创 关于主从单向配网
我的数据是单向的,数据只从主到从,如何让从识别特定的主,避免接收到两个主的数据,产生信号干扰呢?2.给主上电,主在上电的5S内会发配网的标志位并且携带自己的固定ID;3.从接收到主在配网状态,就记住这个ID,以后只接收这个ID的数据;4.时间过了5S后主发送数据携带自己的ID,从根据ID接收数据。1.通过按键触发,从进入配网状态;
2025-12-11 18:59:03
122
原创 sublime使用mathmatic插件生成整数
输入:int(i/5)这样就可以生成0,0,0,0,0,1,1,1,1,1,选中一列,ctrl+shift+p;
2025-12-08 17:42:45
136
原创 迪文屏 显示ASCII字符
在DGUS里面如何配置才能不用中文字符集就能直接显示ASCII码,选择GB2312内码才能正常显示,我这里就显示了冒号,其他自己试试。
2024-05-04 17:59:16
395
原创 51.N皇后
n皇后问题 研究的是如何将 n个皇后放置在 n×n 的棋盘上,并且使皇后彼此之间不能相互攻击。给你一个整数 n ,返回所有不同的n皇后问题 的解决方案。每一种解法包含一个不同的n 皇后问题 的棋子放置方案,该方案中 'Q' 和 '.' 分别代表了皇后和空位。来源:力扣(LeetCode)链接:https://leetcode.cn/problems/n-queens著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。/** * Return an array...
2022-05-19 15:16:23
156
原创 红外接收C语言实现 NEC 定时器
使用定时器实现红外的接收,定时器的时间为80uS,协议为NEC。 typedef unsigned char bit;typedef unsigned char BYTE;//timer 80us 定时器每80us进去一次#define n_InfraredLowBitMin 4//560us#define n_InfraredLowBitMax 10//560us#define n_InfraredZeroBitMin n_InfraredLowBitMin#define n_Inf
2022-03-01 18:01:10
1170
原创 通过AD旋钮(编码器)改变数据,C语言实现
说明:我有一个带位置限制的编码器,里面是一个滑动变阻器,我通过AD采样到的值是0X00-0XFF,我想通过旋转编码器改变某个范围内的数值,比如30-80,但我不想直接映射,因为这样会出现调一小幅度,数值变化较大的情况。所以我想:1.向上旋转,数据++,方向为上,在方向为上时,不理会向下旋转的动作。2.向下旋转,数据--,方向为下,在方向为下时,不理会向上旋转的动作。typedef volatile unsigned char BYTE;typedef volatile unsigned
2022-01-06 13:07:41
1144
原创 滤波-限幅消抖
//////////////////////////////使用限幅消抖 ////vesion1.0 ////2021.12.03 //////////////////////////////#define n_OPTIMIZE_OFFSET 1//优化偏差#define n_OPTIMIZE_COMPARE_TIME 10 //比较的次数typedef volatile unsigned char BYTE;...
2021-12-03 12:50:27
363
原创 MODBUS RTU C语言 从机实现
参考链接:Modbus协议解析--小白一看就懂的协议_“社会大学三年级”的博客-CSDN博客_modbus协议详解水平有限,仅供参考////////////////////////////////////////////////////////////modbus_rtu//地址(1字节)+功能码(1字节)+寄存器地址(2字节)+数据()+校验(2字节)////////////////////////////////////////////////////////////typedef
2021-09-16 18:13:21
6273
4
原创 AVR IO操作 异常
我在中断中用pc1进行IO口翻转驱动无源蜂鸣器;主循环中pc2-pc4驱动LCD驱动芯片;出现了一个问题,蜂鸣器异响,IO口的翻转频率也出现了变化。原因是AVR的IO口操作是整个IO操作,比如PORTC;例如 PORTC |=0x02;上面这条语句翻译成汇编之后是两条语句,如果在这两条语句中间跳到了中断,就会出现问题。解决的办法有两个:1.IO操作的时候屏蔽中断。2.把IO操作改成汇编,比如asm(“CBI (0x15),1”);//清零PORTC的bit1,因为PORTC的地址是0X15
2020-12-08 00:30:21
497
1
原创 AVR比合泰消耗ROM(flash)
我写了一个基本相同的实现,用的是8K的flash,我用AVR几乎写不下(还需要我优化很多东西),用合泰仅用了54%。不知道是不是编译器的原因。还有,我测试了AVR的语句,单个语句(比如判断)要比合泰的多几个字节。...
2020-11-27 17:32:56
222
转载 WinAVR在win10下编译报错 win10安装不了USBISP驱动
1.WinAVR在win10下编译报错具体报错是:Build started 18.11.2014 at 23:33:54 0 [main] sh 13304 sync_with_child: child 11844(0x14C) died before initialization with status code 0xC0000142 38575 [main] sh 13304 sync_with_child: *** child state waiting for long...
2020-11-23 18:42:09
1783
原创 把一个范围的数映射到另一个范围
如何将一个范围的数映射到另一个范围,这是一个很简单的问题。但是有时候8位单片机对乘除法支持不是很好,会出现溢出,这样你就不能很好地得到你想要的数。这里我提供一个简单的算法,可以对整型进行误差较小的映射。/*************************************目的:将200 - 1023 中的某个数映射到 20 - 160 上*原范围:200 - 1023*目标范围:20 - 160*大数到小数的映射会出现精度的损失,所以先将小数的范围扩大,*这里采用的是左移n位,
2020-09-20 01:05:58
5726
原创 error: expected constructor, destructor, or type conversion before '*' token
报错:error: expected constructor, destructor, or type conversion before '*' tokenclass AVLTree{private: struct BTNode { int key; struct BTNode *left; struct BTNode *r...
2019-12-04 12:25:47
1959
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅