- 博客(17)
- 资源 (2)
- 收藏
- 关注
转载 AES加密算法详解
前言 AES算法是当前最流行的对称加密算法,也是一种分组加密算法,分组密码就是把明文分为固定长度的一组一组,每次加密一组数据,直到加密完整个明文数据。AES算法根据分组长度可以分为AES128, AES192,AES256,其所要求的秘钥长度和加密轮数也各不相同。鉴于这三种模式的算...
2021-02-19 14:19:35 10372 1
原创 qpc之qk调度学习笔记
1.qk和qv调度的区别qv是以轮询调度的方式派发事件;qk是以抢占的方式调度,优先级高的活动对象关联的事件经系统调度后会优先得到派发2.qk调度的过程2.1中断级调度流程2.2中断级调度过程①系统中断中断级调度是有SystickHandler发起的,在中断任务中查询是否有优先级更高的活动对象关联的时间需要处理,有则触发pendsv中断,没有则正常退出。void SysTick_Handler(void){ uint32_t tmp;
2020-12-31 16:02:58 1441
原创 传感器选型的六大原则
传感器1、根据测量对象与测量环境确定类型要进行-个具体的测量工作,首先要考虑采用何种原理的传感器,这需要分析多方面的因素之后才能确定。因为,即使是测量同一物理量,也有多种原理的传感器可供选用,哪一种原理的传感器更为合适,则需要根据被测量的特点和传感器的使用条件考虑以下一些具体问题:量程的大小;被测位置对传感器体积的要求;测量方式为接触式还是非接触式;信号的引出方法,有线或是非接触测量;传感器的来源,国产还是进口,价格能否承受,还是自行研制。在考虑上述问题之后就能确定选用何种类型的传感器,然后再考虑传感器
2020-12-05 11:20:14 4173 1
转载 指令隔离DMB,DSB,ISB
像ARM7TDMI这样经典的ARM处理器会按照程序的顺序来执行指令或访问数据。而最新的ARM处理器会对执行指令和访问数据的顺序进行优化。举个例子,ARM v6/v7的处理器会对以下指令顺序进行优化。 LDR r0, [r1] ; 从普通/可Cache的内存中读取,并导致cache未命中STR r2, [r3] ; 写入普通/不可Cache的内存 假设第一条LDR...
2020-12-05 11:09:51 3460
转载 详解互补滤波四元数中向量叉积与陀螺仪角速度补偿问题(Mahony算法)
作者:Leyvi 时间:2017.1.10 一、归一化与坐标转换 很多做四轴的网友对互补滤波四元数姿态解算代码中的向量叉积和陀螺仪积分补偿问题有疑问,我也查了很多资料,写下这篇博文与大家共同学习。 先放一段互补滤波和四元数姿态解算的代码: /** * 6DOF 互补滤波姿...
2020-11-24 17:22:15 1182
转载 adrc离散系统最速控制综合函数的理解
摘自:https://blog.csdn.net/weixin_40767422/article/details/86709848 ACFLY原创文章,转载请说明出处https://blog.csdn.net/weixin_40767422/article/details/86709848 ADRC相关论文资料请加q群:180319060下载 最近在看韩京清教授的自抗扰论文,里面关于最速...
2020-11-23 11:01:45 5333 6
原创 uCOS III之优先级位图表
优先级表的作用uCOS III是抢占式内核,默认支持64种不同优先级,优先级数值越小,优先级越高。任务调度时需要知道任务就绪表中的最高优先级, 操作系统管理任务时需要知道哪些优先级被使用了。这些都是通过优先级表来管理的。源码解读2.1 优先级表初始化流程十分简单,就是将优先级表全部清0 void OS_PrioInit (void) { CPU_DATA i; for (i = 0u; i < OS_PRIO_TBL_SIZE; i++) { ..
2020-09-30 00:00:51 772
转载 MCU之GPIO输入输出
导读: MCU芯片中GPIO口的驱动方式大的可分为输出和输入两类,小的分可以分为8种。一、四种输入方式①上拉输入:上拉输入抗干扰能力强,特别适合接地信号的输入(比如低电平有效的按键信号输入)。其工作原理如图1所示。**图1、上拉输入模式**I/O 端口与TTL 施密特触发器之前接入了一个30K~50K 欧姆的上拉电阻,当I/O 端口悬空时,此时MCU 也能读到稳定的高电平状态,提高了噪声容限。②下拉输入:下拉输入模式适合有效信号为高电平值的信号接入(比如高电平有效的按键信号输入.
2020-09-28 22:09:13 3214
转载 MCU之按键驱动 -剥离按键驱动和事件处理
ButtonDrive 自己写的一个按键驱动,支持单双击、连按、长按;采用回调处理按键事件(自定义消抖时间),使用只需3步,创建按键,按键事件与回调处理函数链接映射,周期检查按键。 源码地址:https://github.com/jiejieTop/ButtonDrive 前言 ...
2020-09-28 22:03:13 730
转载 MCU之FLASH模拟EEPROM
原始文件ST 官方有例子和文档:AN2594 http://www.st.com/mcu/familiesdocs-110.html 看到不少网上使用官方例子程序不成功的问题,我估计大概是没详细阅读官方文档的原因吧,也许很多人没理 解官方例子的原理。那么下面就详细说明一下原理再说如何优化。 原理如下: 首先使用2 页FLASH 空间,如果0 页空间写满数据,那么把0 页空间里面的【有效数据】复制到1 页,如...
2020-09-28 21:42:00 1749
原创 MCU之IAP升级
IAP升级简介IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级IAP升级流程 4. IAP升级要点...
2020-09-28 21:07:51 1241
转载 ARM C语言编程优化策略
ARM C语言编程优化策略(KEIL平台)王小军Stay Simple, Stay Naive.关注他95 人赞同了该文章ARM C语言编程优化策略1. 内容介绍2. 优化实战2.1. 编译器优化选项2.2. C循环优化2.3. 内联函数2.4. volatile 关键字的使用2.5. 纯净函数2.6. 数据对齐特性2.7. C99 中易用的特性2.8. C对栈和寄存器的使用2.9. 阻止未初始化变量初始为03. 编译器特性3.1. 关键字3.2. __declspec 属性3.3. __attribut
2020-09-27 00:24:04 1146
转载 stm32半主机模式
在keil中编程时常会遇到__use_no_semihosting_swi的警告,这时你就是进入了半主机模式。 在嵌入式的编程中你是避免不了使用printf、fopen、fclose等函数的但是因为嵌入式的程序中并没有对这些函数的底层实现,使得设备运行时会进入软件中断BAEB处,这...
2020-09-26 23:51:43 484
转载 ITM机制调试方法
使用ITM机制实现调试stm32单片机,实现printf与scanf。 1. ITM简介 ITM机制是一种调试机制,是新一代调试方式,在这之前,有一种比较出名的调试方式,称为半主机(semihosting)方式。 在pc上编写过C语言的人都知道,printf可以向控制台输出,scanf可以从控制台获取输入,这里的printf/scanf都是标准库函数,利用操作系统的这些函数,我们可以很方便的调试程序。在嵌入式设备上(如stm32单片机平台上)开发工具(如MDK/IAR..
2020-09-26 23:48:43 3664
原创 uCOS III完全解读之任务调度
uCOS III完全解读之任务调度多任务的基本流程首先介绍下裸机程序执行的一般流程, 裸机程序按照顺序执行 , 当执行到某处被中断打断时,执行中断服务程序前会保存现场,退出中断时会恢复现场,这样程序就会接着从回断前的位置开始执行。而多任务就不一样了,假设有两个任务A和任务B, 任务A在执行时被中断打断,执行中断服务程序前保存任务A被打断处的现场, 然后执行中断服务程序,执行完后会怎么样呢? 如果我们不处理的话,cpu会恢复任务A的现场回到任务A继续执行。我们想要的结果是执行任务B,显然,此时恢复任
2020-09-20 23:26:20 858
原创 BLDC基础概念之机械角和电角度
BLDC基础概念之机械角和电角度机械角:机械角就是空间几何角度,用圆规能够测量到的。因为电机是圆形的,所以它的范围是0-360度。电角度:从定子来看,定子电流变化一个完整的周期定义为电角度的0-360度,称为一个电周期。一个电周期可以在空间360度完成也可以在空间180度或者90度或者60度完成,这和电动机(发电机也是这样)绕组布置成几对磁级有关。从转子来看, 转子上分布有N对磁钢,电角度以一对磁钢为基准,形成电磁场的绕组经过一对磁钢的N极、S极、再回到另一对磁钢的N极时,完成从N、S、再到 N极一对
2020-09-17 23:39:48 14967 3
6410中文手册
2017-02-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人