![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
stm32
文章平均质量分 71
西皮南子
这个作者很懒,什么都没留下…
展开
-
stm32f103rbt6使用can
can的初始化我是把之前用的103zet6的程序拿过来的。就是用的引脚不同,引脚的初始化不同,rbt6使用的是PA11,PA12,是默认功能,不需要复用。PB8,PB9是复用(CANRX,CANTX在Remap栏)所以初始化的时候用了 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB |RCC_APB2Periph_AFIO,ENABLE); /GPIO_PinRemapConfig(GPIO_Remap1_CAN1,ENABLE);...原创 2020-12-18 17:09:48 · 1775 阅读 · 1 评论 -
lcd画三角函数
#define TIRA_X #define TIRA_Y #define TIRA_DELTA/************************************+ +++++++++++++++++++*******************************/ for(i=0;i<TIRA_DELTA;i++) { Gui_DrawLine(TIRA_X+i,TIRA_Y-(TIRA_DELTA-1-i),TIRA_...原创 2020-08-03 14:19:06 · 927 阅读 · 0 评论 -
LCD---显示汉字函数
先使用PCtoLCD2002软件生成字模,设置如下:将数据存放以下格式:typedef struct{ unsigned char Index[2]; char Msk[32];}typFNT_GB162;const typFNT_GB162 hz16[] = {"针",0x00,0x00,0x00,0x00,0x04,0x30,0x08,0x20,0x0F,0x20,0x10,0x20,0x16,0x2E,0x29,0xF0,0x4A...原创 2020-07-22 17:33:40 · 5347 阅读 · 0 评论 -
stm32f072定时器使用问题记录
1、定时器改周期值在中断函数里改不行,只能是在中断中加标志位,然后在主循环中检测标志位修改周期。原创 2020-07-17 14:18:41 · 1209 阅读 · 0 评论 -
stm32定时器--关闭定时器时保证是低电平方法
定时器开溢出中断,在中断函数中关闭定时器。。原创 2020-06-19 18:31:40 · 1290 阅读 · 0 评论 -
stm32f072--定时器17使用CH1N通道输出pwm时没有波形的原因
昨天刚写了篇文章分析定时器pwm输出初始化,以为都懂了再用会很简单,今天使用TIM17就出问题了— 。—使用TIM17_CH1N对应引脚PB7,因为之前用的定时器15也是CH1N,就直接把TIM15的初始化搬过来改成TIM17,结果TIM15是有波形输出,而TIM17没有任何输出!!!真是奇怪了。。void TIM17_PWM_Init(void){ uint16_t ChannelPulse = 0,PWM_TimerPeriod; GPIO_InitTypeDef原创 2020-07-07 15:53:24 · 2712 阅读 · 0 评论 -
stm32定时器--通道pwm输出参数TIM_OCInitStructure如何配置
设置定时器的pwm输出时需配置TIM_OCInitTypeDef结构体的参数,输入捕获是用TIM_ICInitTypeDef结构体。typedef struct{ uint16_t TIM_OCMode; // uint16_t TIM_OutputState; //输出状态 uint16_t TIM_OutputNState; //互补通道的输出状态 uint16_t TIM_Pulse; //占空比 uint16_t TIM_OCPola...原创 2020-06-18 19:24:50 · 34632 阅读 · 11 评论 -
STM32的定时器 TIM_ARRPreloadConfig开与不开到底有什么影响
TIM_ARRPreloadConfig(TIM3,ENABLE);预加载使能TIM_ARRPreloadConfig函数是修改CR1->APRE位,APRE=0是修改预加载寄存器(ARR)后立即送给影子寄存器;APRE=1是修改预加载寄存器(ARR)会在更新事件发生后送给影子寄存器;也就是说APRE=0时修改ARR值会在当前周期就变了,而APRE=1时修改ARR值会在下一周期生效;再看官方手册给的图:图49是修改了ARR值=0x36后当前周期计时到36就跳到0了,原创 2020-06-18 17:39:35 · 5764 阅读 · 2 评论 -
电位器mcp4561调试记录---stm32,I2C通信
所用芯片是mcp4561-503,看数据手册知此型号是8位,对应257步默认值是80h对应电阻值是25k只有wiper0,没有wiper1.I2C地址:下图中mcp45x1的地址是0101 11+A0,从电路图上看A0引脚接地,所以地址是0101 110+R/W实际取到的读取数据波形:I2C.c文件/* Includes ---------...原创 2018-08-13 17:31:19 · 3982 阅读 · 1 评论 -
stm32f072一个主定时器计时触发两个从定时器同时产生单次脉冲
需实现的波形:定时25ms产生一互补脉冲程序实现:TIM2计时25ms周期,作为主定时器触发TIM1_CH1和TIM3_CH3产生单次脉冲。void TIM_Config(void){ GPIO_InitTypeDef GPIO_InitStructure; /* 使能GPIO时钟 */ RCC_AHBPeriphClockCmd( RCC_AHBPeri...原创 2018-08-27 17:43:33 · 5477 阅读 · 0 评论 -
最近学习CAN总结
1,can一次可以发送少于8个字节,只是最多可以发8个。2, 32位屏蔽位模式如何设置过滤器参数?在32位宽的模式下,CAN_FxR1与CAN_FxR2都用来存储希望通过的CANID,由于是32位宽的,因此既可以存储标准CAN ID,也可以存储扩展CAN ID。注意看上图最底下Mapping那行的各位定义,可以看出,从右到左,首先,最低位是没有用的,然后是RTR,表示是否为远程...原创 2018-08-10 15:19:51 · 935 阅读 · 0 评论 -
stm32f107的can1的1m波特率设置
u8 CAN_Mode_Init(u8 tsjw,u8 tbs2,u8 tbs1,u16 brp,u8 mode){ GPIO_InitTypeDef GPIO_InitStructure; CAN_InitTypeDef CAN_InitStructure; CAN_FilterInitTypeDef CAN_FilterInitStructure;#...原创 2018-10-31 15:47:49 · 4850 阅读 · 0 评论 -
调试BQ25895记录
1、注意设备地址转自原文:https://blog.csdn.net/lijing198997/article/details/80226460由于之前使用的eeprom,bmp085,axp209都是使用器件地址作为写地址,器件地址加1后作为读地址,导致使用bq25892后,看了bq5892手册后依然这样操作,导致写设备地址一直无法收到应答信号。困惑了很久,一直认为是自己时序有问题,后...原创 2018-10-27 17:44:07 · 4610 阅读 · 0 评论 -
stm32的定时器1有时不产生波形问题找原因
我用的stm32f072,定时器1单脉冲模式,按这篇写的设置的https://blog.csdn.net/qq_41976419/article/details/82116217有时程序改动其他地方定时器1就没有输出了,完全没动定时器1的任何参数,然后就跟有波形的程序对比TIM1每个寄存器值,找到有一个参数置1就能输出,置0就没有。这个参数在两个程序中的初始化的时候都没有设置它,不...原创 2018-09-14 17:11:08 · 1313 阅读 · 2 评论 -
转:STM32定时器初始化就进中断问题
最近遇到的问题:定时器初始化后就有输出,但是并没有使能计时 TIM_Cmd(TIM2, DISABLE); 就很奇怪,找了一天发现是在初始化时使能溢出中断,就会进一次中断,我是在使能中断后清了中断标志位就可以了。 TIM_ITConfig(TIM2,TIM_IT_Update,ENABLE); NVIC_InitStructure.NVIC_IRQChannel = TIM2...原创 2018-09-06 10:28:36 · 6002 阅读 · 2 评论 -
数字电位器mcp4017驱动调试记录---stm32f072,I2C2
电位器mcp4017要比4561驱动简单,先看手册找到设备地址:看读写时序发现没有寄存器地址什么的,直接是设备地址+读写命令+data写一个字节:设备地址+写命令+要写的数据实际波形:写数据20h附上代码:i2c2.c#include "i2c2.h"uint32_t I2C_Timeout;/* Private function prototyp...原创 2018-09-07 16:36:10 · 5188 阅读 · 1 评论 -
stm32f107开发时遇到的问题
1. 串口3初始化配置参考:https://blog.csdn.net/qq_36338040/article/details/79201141“ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO, ENABLE); //remap时钟|RCC_APB2Periph_AFIO RCC_APB1...原创 2020-04-17 09:10:23 · 137 阅读 · 0 评论 -
stm32实际项目中问题记录
1、使用fatfs文件系统时,f_opendir打开文件目录函数和 f_open打开文件函数后面都要跟着关闭函数f_closedir和f_close。原创 2020-04-17 09:08:39 · 271 阅读 · 0 评论 -
stm32f103外部中断
void EXTIX_Init(void){ EXTI_InitTypeDef EXTI_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE); //使能复用功能时钟 //GPIOc.7 中断线以及中断初始化配置 ...原创 2019-12-16 17:53:37 · 580 阅读 · 0 评论 -
lcd屏显示图片
图片需是bmp格式,软件设置如下:设置最大宽度和高度后点旁边的右箭头,然后点重新载入,点保存。void LED_Show_Image_logo(void){int x=0,y=0;i=0; n=0;LCD_setwindow(10,8,108+10,37+8);while(n<7992){i=gImage_logo[n];i<<=8 ;...原创 2018-12-21 14:58:12 · 8851 阅读 · 2 评论