摘要:
尽人事,听天命 见识就是财富 明心见性,了却夙愿,意念通达 TA想要什么 情绪是第一驱动力(由损失百万的而得到的认知) 阅读全文
摘要:
背景 今天在看资料,发现在互斥锁这一块儿,有用法要求,说是 互斥锁不能在中断服务程序中使用。 但是为什么不能用呢?却没见文章中有写,于是顺着这条线向找。 解释 从RT-thread论坛上看到的解释如下: 如果在中断例程中能使用互斥量,万一其他更高优先级的中断来了,需要互斥量,但获取不了,导致中断处理 阅读全文
摘要:
一、进程间通信机制 rt-thread操作系统的IPC(Inter-Process Communication,进程间同步与通信)包含有中断锁、调度器锁、信号量、互斥锁、事件、邮箱、消息队列。其中前5个主要表现为线程间同步,邮箱与消息队列表现为线程间通信。本文主要介绍它们的一些特性及使用场合。 1、 阅读全文
摘要:
1.1 比较工作区与暂存区 git diff 不加参数即默认比较工作区与暂存区 1.2 比较暂存区与最新本地版本库(本地库中最近一次commit的内容) git diff --cached [<path>...] 1.3 比较工作区与最新本地版本库 git diff HEAD [<path>...] 阅读全文
摘要:
中断锁 禁止多线程访问临界区最简单的方式,就是通过关闭系统中断来保证当前操作不会被打断。 全局中断开关也称为中断锁。 RT-Thread中关闭全局中断的函数接口如下: rt_base_t rt_hw_interrupt_disable(void) 禁掉所有中断并返回禁掉之前的中断状态 void rt 阅读全文
摘要:
1. 显示出branch1和branch2中差异的部分 git diff branch1 branch2 --stat 2. 显示指定文件的详细差异 git diff branch1 branch2 具体文件路径 3. 显示出所有有差异的文件的详细差异 git diff branch1 branch 阅读全文
摘要:
将不够规定位数的数字左边用0补齐 printf("%04d\n", 1) 得到的结果是0001 阅读全文
摘要:
1.问题 2.分析 经过一番查找,发现是编译器的自己解释的局限性所致,会产生误分析。 与之类似的常见现象,还有在使用switch时在case 后面申请变量会出现 error: a declaration cannot have a label 的提示。 从网上找到的答案如下: Case statem 阅读全文
摘要:
1.引子 项目中要使用灯带,而且灯带是由一组串行移位锁存器构成,通过一条数据线一次性将所有的灯珠数据传完毕。 为了提升通信效率,节约CPU资源,采用异步方式进行操作灯珠。即CPU 向一个RAM区域内写数据,等数据写好了,通知DMA控制器,将此区域的数据搬给PWM生成器,PWM由此生成波形。 就这样, 阅读全文
摘要:
1 KEIL工程配置入口 点击“魔术棒”图标(Option for Target) 在After Build/Rebuild选项卡中,勾选 "Run # 1",在后面输入框写入bin文件生成方式,见2.1、2.2 2 输出Bin文件配置 KEIL生成bin文件,根据输入命令的相对\绝对路径来分,有两 阅读全文