ucos2
Jacky_Lu
这个作者很懒,什么都没留下…
展开
-
ucos2下的按键扫描程序,低耦合
接口程序 AppKey.c,根据不同的应用电路 修改这个程序//#include "includes.h"#define KEYTOTAL 3#define KeyHoldTime (OS_TICKS_PER_SEC/2)#define KeyRepTime (OS_TICKS_PER_SEC/2)#define KeyLongBit 0 #define KeyRepBit 0//按键等待时间,有些按键要求的等待确认时间比较长INT16U KeyDownDelay[]={原创 2022-02-26 20:04:36 · 478 阅读 · 0 评论 -
STM32驱动无刷直流电机学习(5)--ADC电流采样
还是采用匠心科技的无刷电机套件,采样电路如下对应的 adc 的 io 是#define __ADC_MODE__ 4无刷电机学习板 采用 PA6 PA7 PC4 进行电机的电流采样先上adc采样的程序#include "includes.h"#ifndef __ADC_MODE__ #define __ADC_MODE__ 0#endif#if(__ADC_MODE__==0)#define TEST_NUM 4#endif#if(__ADC_MODE__==1 |..原创 2021-08-03 15:01:50 · 10230 阅读 · 1 评论 -
STM32驱动无刷直流电机学习(3)
根据STM32驱动无刷直流电机学习(2)测量出 霍尔和uvw 的对应关系a.电源输入3线u+ v-霍尔的三线输出 110/010就是6/2b.电源输入3线u+ w-霍尔的三线输出 011就是3c.电源输入3线v+ w-霍尔的三线输出 001就是1d.电源输入3线v+ u-霍尔的三线输出 101就是5e.电源输入3线w+ u-霍尔的三线输出 100就是4f.电源输入3线w+ v-霍尔的三线输出 110...原创 2021-06-21 23:34:21 · 2755 阅读 · 0 评论 -
stm32 使用 TIM3 输出脉冲 TIM2 进行脉冲计数
先上 定时器 和 io 的设置#include "includes.h"#define TMRNCLK (SYSCLK)/*---- S E T T I M 3 P W M O U T P U T ----【功能】:设置 tim3 使用 pc6 pc7 pc8 pc9输出,低电平有效, 当 tim3->cnt>= pwm占空比 就输出低电平【参数】:****【返回】:****【说明】:****--------------作者:卢杰西 2021年5月原创 2021-05-04 13:28:45 · 2571 阅读 · 0 评论 -
在STM32CubeMx生成的代码中加入 UCOS2 记录
1.注释掉 main.c里面的main.HAL_Init.HAL_InitTick(TICK_INT_PRIORITY);因为ucos 的定时节拍是在 任务里面启动的2.注释掉stm32f1xx_it.c 里面的PendSV_Handler函数,因为ucos的汇编里面已经写了这个中断3.将抢先级的bit 设为0 , 没有中断嵌套,HAL_NVIC_SetPriorityGrouping(NVIC_PRIORITYGROUP_0);4.注释掉stm32f1xx_it.c 里面的Sys...原创 2021-03-17 15:22:11 · 431 阅读 · 0 评论 -
stm32 usb设备标准库的 demo 改造
在学习usb 的过程中 看 stm32 的demo, 真心觉得不好,基于状态的 逻辑分析起来忒麻烦,将我劝退了好多年!!!下定决心去啃过去,看完原理,看 stm32usb转串口的 代码,将不必要的文件 删掉,将原来的 发送一个大包的数据 经过多次中断的发送,要记住发送到那个位置 ...改装为 在 ucos 的任务里面 每发送一个小包 等待发送完毕的消息 再发送下一个小包,看起来就很舒服了,然后移植了 stm原来的 usb转串口的 demo再移植了 stm32 转ch340 串口的demo.原创 2021-01-29 15:43:59 · 466 阅读 · 1 评论 -
Stm32通过串口 Ymodem 协议接收文件
我自己做了一个 针对stm32的isp 离线编程器,设计时候 采用了 W25Q64 作为要烧录文件的存储,直接使用 Ymodem 协议,将文件下载到 flash中,免得再写一个上位机软件,在ucos2的加持下,整个代码的逻辑比较简单易懂Ymodem 协议 参考https://www.cnblogs.com/dwj411024/p/7717084.html贴上我的代码头文件:#ifndef __Y_MODEM_H__#define __Y_MODEM_H__enu..原创 2020-12-01 17:19:06 · 2507 阅读 · 0 评论 -
从stm32移植ucos2的代码到GD32
stm32和gd32 基本通用的,所以os_cpu_c.c,cpu_a.asm,os_cpu_a.asm完全不用修改库函数名字有些不同在main 函数里面定义中断的优先级方法 nvic_priority_group_set(NVIC_PRIGROUP_PRE0_SUB4); //同等优先级在第一个启动的任务里面启动 系统定时器 SysTick_Config(SystemCoreClock / OS_TICKS_PER_SEC);将在stm32里面的的...原创 2020-05-27 15:18:44 · 2070 阅读 · 1 评论