
STM32
d89538239
这个作者很懒,什么都没留下…
展开
-
简单介绍一下常用的几种无位置传感器的控制方式
无感无刷位置检测转载 2023-01-08 22:23:10 · 2103 阅读 · 0 评论 -
指针数组变量指向IO口变量,方便循环操作
stm32 IO操作原创 2022-12-06 13:42:30 · 470 阅读 · 0 评论 -
stm32f103 IO翻转
stm32f103库函数没有IO翻转,可用以下语句:GPIOB->ODR ^= GPIO_Pin_15原创 2021-12-08 15:28:42 · 3359 阅读 · 0 评论 -
Iflash 命令行烧录
@ECHO OFFECHO Open a project and data file, start auto processing and exitJFlash.exe -openprjF:\work\3.iFR\FM5010\loader\iFR.jflash -openF:\work\3.iFR\FM5010\loader\info_sbl.hex,0x18000000 -auto -exitJFlash.exe -openprjF:\work\3.iFR\FM5010\loader\iFR.j原创 2021-12-01 16:02:45 · 644 阅读 · 0 评论 -
stm32H7 QSPI W25Q256换成W25Q128JV
W25Q256换成W25Q128JV原创 2024-05-14 22:23:01 · 552 阅读 · 1 评论 -
关于临界保护与中断关闭
抢占优先级高”的中断可以把“抢占优先级低”的中断给打断。响应优先级,抢占先级相同的两个中断,响应先级高那个优先响应,但不能打断。NVIC_PriorityGroupConfig 0 1 2 3 4抢占优先级 0 1 2 3 4相应优先级 4 3 2 1 0basepri 设置为某个值(5)让系统不响应比该优先级低(5-15)的中断,而优先级比之更高(0-4)的中断则不受影响...原创 2021-04-01 16:24:06 · 360 阅读 · 0 评论 -
stm32一些注意事项
stm32标准库:1.PA0口是可以用作PWM输出,配置同其他的定时器PWM基本无异,不要使能复用时钟,不需要重映射端口 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); //AFIO复用功能模块时钟,加上这句无PWM输出...原创 2020-12-16 11:37:09 · 610 阅读 · 0 评论 -
USB主机枚举USB设备步骤
USB主机枚举USB设备步骤:1.USB主机对USB设备进行复位,复位后USB设备用端点0来传输数据;USB主机向USB设备发送获取设备描述符指令,USB设备收到指令后,通过端点0将设备描述符信息返回给USB主机,且若端点0中包含完整的18字节设备描述符信息,则将完整的设备描述符信息返回给USB主机;而若端点0中包含的设备描述符信息小于18字节,则将已包含的设备描述符信息返回给USB主机;其中,完整的设备描述符信息包括USB协议版本信息、厂家VID信息、数据包大小信息以及PID信息;2.USB主机对U原创 2020-11-23 16:12:30 · 417 阅读 · 0 评论 -
移植ucos-III到stm32f103c8t6
昨天在看stm32相关资料时看到野火的教程《uCOS-III 应用开发指南—基于 STM32F103系列》,试着移植ucos-iii到stm32上,整个过程还算比较顺利的,但遇到了一个比较典型的问题,在此分享出来,作为备忘,也希望能够帮到类似问题的人。一、先来说说背景知识: STM32F103C8T6这块芯片做成的最小系统板在某宝应该是最多的了,价格比51最小系统板便宜,当然片上资源更加丰富; 这块芯片有64K程序存储器、20KSRAM; 这块芯片目前能跑的RTOS估计只有ucos(转载 2020-11-19 17:18:21 · 1830 阅读 · 0 评论 -
stm32的一些网址
stm32的一些安装包去官网比较难找或是 比较慢,找到个好网址下载:https://cloud.tencent.com/developer/article/1605195原创 2020-07-23 10:19:59 · 1925 阅读 · 0 评论 -
stm32软开关usb
1.全速OTG如f2、f4可以用自带的函数开启与禁止:void DCD_DevConnect (USB_OTG_CORE_HANDLE *pdev)void DCD_DevDisconnect (USB_OTG_CORE_HANDLE *pdev)2.如果是f103等不适otg,可以先复位USB然后失能时钟,再将USB的DP+引脚设为普通IO将他拉低就可以失能USB。再次使用USB禁止复位与使能USB时钟重新初始化USB。void ResetUsbDataIO(uint8_t mode)..原创 2020-07-17 10:03:12 · 1262 阅读 · 0 评论 -
usbhid一些资料收集
f103https://www.cnblogs.com/SC-Electronic/p/9246755.htmlhttps://www.cnblogs.com/libra13179/p/7193375.htmlhttps://www.cnblogs.com/xingboy/p/9913963.htmlf429http://www.stmcu.org.cn/module/forum/forum.php?mod=viewthread&tid=591729&extra=page%3原创 2020-07-14 00:13:15 · 316 阅读 · 0 评论 -
stm32f103 TIM1发PWM
void TIM1_PWM_Init(u16 arr,u16 psc){ GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_OCInitTypeDef TIM_OCInitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);//定时器1时钟使能 RCC_APB2Per...原创 2020-06-19 17:43:42 · 2461 阅读 · 2 评论 -
stm32f407多个定时器产生PWM(TIM1、TIM4、TIM9)
#include "pwm.h"u16 Right_Forward = 100;// PB7 TIM4_CH2void TIM42_PWM_Init(u32 arr,u32 psc , u32 CCR2_Val ){GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStruc...转载 2020-04-07 17:37:23 · 2399 阅读 · 0 评论 -
stm32的定时器上升沿下降沿双触发
void TIM5_Configuration(unsigned short frequency){ //8000NVIC_InitTypeDef NVIC_InitStructure;TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;TIM_ICInitTypeDef TIM_ICInitStructure;RCC_APB1P...原创 2019-12-18 13:24:16 · 8342 阅读 · 0 评论 -
STM32 编码器模式
/***************************************************定时器2;位数:32位;输入时钟频率:84M***************************************************/void Encoder_TIM2_Init(void){ TIM_TimeBaseInitTypeDef TIM_TimeBase...原创 2019-12-18 13:22:15 · 575 阅读 · 0 评论 -
Keil lib制作
当程序不需要改的部分可以制作成库,方便管理。也可以使程序有一定保护。制作方法也很简单,将ouput->Great Library勾选,Name of Executable里填写库的名字,编译即可生成.lib。 例:将a.c与b.c的代码封成库ab.c(相应的.h文件也要包含),然后将工程里的a.c与b.c删除,将库ab.c添加到工程里即可。编译下载与原来工程一摸一样。...原创 2019-12-12 16:35:46 · 190 阅读 · 0 评论 -
stm32 SSI读编码器
uint32_t read_AS5311chip(void){ uint32_t raw_value;// = 0; uint16_t inputstream;// = 0; uint16_t c; inputstream = 0; raw_value = 0; AS5311_CLK_H;//digitalWrite(_clock, HIGH); AS5311_C...原创 2019-12-04 15:21:45 · 5363 阅读 · 3 评论 -
STM32-USB学习笔记(一) USB基础
USB基础知识扫盲前言本文将从USB的插入检测、身份识别、数据传输三个方面对USB通讯整个过程扫盲,其中有些知识点的详细信息会放在文章最下面的附录中供查看,从而保证文章的整体简洁。在进入主题之前,首先了解一下USB的一些基础知识USB的分类 按接口类型分 控制器/主机(controller/host) 设备(peripheral) OTG(on-the-go),通过i...转载 2019-10-29 09:25:47 · 1303 阅读 · 0 评论 -
PendSV_Handler
参考野火的程序:; OSTCBCurPtr = OSTCBHighRdyPtr;LDR R0, = OSTCBCurPtr ; 加载 OSTCBCurPtr 指针的地址到R0,这里LDR属于伪指令分析:运行后R0=0x20000018=&OSTCBCurPtrLDR R1, = OSTCBHighRdyPtr ...原创 2019-10-18 17:29:40 · 3486 阅读 · 0 评论 -
stm32程序移植
有时候移植程序发现下载不了,就算下载成功也运行不了。这时候要检查时钟配置,外部振晶是否配置对。修改注意修改以下宏使之匹配:HSE_VALUE与 PLL_M...原创 2019-08-16 15:01:57 · 893 阅读 · 0 评论 -
mcu定时问题
mcu延时一般在定时器中将一个变量TmCnt++,然后在函数中先将TmCnt=0;再判断if(TmCnt>1000){……},满足条件进行下部操作。 尽量不要用while(TmCnt-1000)来延时,因为这样就不能进行下面的逻辑操作。但是这样有个问题就是在函数中赋值可能会被中断打断。如果TmCnt=0这条语句是由多条汇编组成,刚好运行了一部分汇编被中断打断,会造成赋值失败...原创 2019-08-12 16:56:55 · 465 阅读 · 0 评论 -
stm32 hid iap
IAP:步骤:读取hex文件(与bin的区别),写入到iap中的ram区暂存;写flash;跳转。与正点原子的串口升级一样,但要在跳转前加关闭中断。1.ROM/RAM,正常配置;2.跳转前关中断再关闭定时器中断(HID中断不关,试过关了有问题)3.升级时出现通讯断了或是断电,这样会出现以下几种情况 3.1 如果ram不够,上位机下传一部分代码烧写一部分,很有可能时烧了hex的一部...原创 2019-07-08 16:43:42 · 591 阅读 · 0 评论 -
Bus hound 监控USB
Bus hound是一款监控USB软件,Devices里勾选要监控的USB,capture里点击run开始监控数据,stop停止。但是里面的数据很多,如果只看输入输出的数据可以在setting 里面设置Driver I/O to Capture里我只选择unknownPhases to Capture里我只选择IN-Data in transfer与OUT-Data out transfe...原创 2019-07-30 16:46:55 · 668 阅读 · 0 评论