STM32的HardFault_Handler问题调试方法

相信很多人在调试STM32的时候都遇到过HardFault_Handler错误,刚开始接触的人,肯定最怕这个错误,因为这个问题的原因却是不好查,我看到网上很多人都给出了比较好的调试方法,我再调试的时候也发现了一个较好的调试方法,拿出来跟大家分享一下:1) 在HardFault_Handler函数中添加一个break语句,即:     void HardFault_Handler(void){       while (1)    &nb...

http://www.eeworld.com.cn/mcu/2018/ic-news102041906.html 发布时间: 2018-10-20



STM32f0-mdk-SWD-ST-link的Trace调试问题

STM32F0 强制设置  TRACE功能,会出现以下问题。原因如下。最近使用st-link调试stm32f030C8t6遇到烧写完成之后不能进入调试状态,提示TRACE HW not present,点击确认,提示错误:Erron : target DLL has been cancelled . Debugger aborted,是怎么回事啊解答:Cortex-M0不支持Trace功能,因为是ARM V6结构,较老,没有ITM功能,所以无论你用Jlink,还是STLink,都不能用到Trace。最近在用STM32F030单片机,其内核是Cortex-M0。根据...
关键词: STM32f0 mdk SWD ST link Trace 调试

http://www.eeworld.com.cn/mcu/2018/ic-news090541099.html 发布时间: 2018-09-05



STM32系统时钟设置,采用外部有源晶振相关配置问题

今天在调试STM32系统时钟设置时遇到一个问题:TIM2定时1Ms,TIM2中断服务函数time++,time=100时LED状态改变。程序运行后发现LED不是按照0.1S的时间闪烁,闪烁的很慢。查找程序发现在系统时钟初始化时,RCC_HSEConfig(RCC_HSE_Bypass); 语句配置不对,此语句解释为HSE晶振被外部时钟旁路。指将芯片内部的用于外部晶体起振和功率驱动等的部分电路...

http://www.eeworld.com.cn/mcu/2018/ic-news090141034.html 发布时间: 2018-09-01



STM32系统时钟设置,采用外部有源晶振相关配置问题

调试STM32系统时钟设置时遇到一个问题:TIM2定时1Ms,TIM2中断服务函数time++,time=100时LED状态改变。程序运行后发现LED不是按照0.1S的时间闪烁,闪烁的很慢。查找程序发现在系统时钟初始化时,RCC_HSEConfig(RCC_HSE_Bypass); 语句配置不对,此语句解释为HSE晶振被外部时钟旁路。指将芯片内部的用于外部晶体起振和功率驱动等的部分电路...

http://www.eeworld.com.cn/mcu/2018/ic-news081740815.html 发布时间: 2018-08-17



Stm32f407DISCOVEY学习uart串口波特率乱总结

这几天调试Stm32f407DISCOVEY。由于没有串口现成的库函数例程,就用的神州王开发板上的例程直接调,结果串口输出老是乱,115200波特率;;试着把它换到 38400居然可以打印,相差3倍多;真相只有一个,进过调试摸索百度,终于找到原因;.时钟频率不对 由于时钟频率是在库文件里自动定义好的,一开始没有发现,但是波特率一直不对,后来发现问题在库文件里定义的外部晶振是25M,而DISCOVERY的板子上用的是8M的晶振,故产生的主频不对,需要改两个地方,①所以在 stm32f4xx.h中改#if !defined (HSE_VALUE) #define HSE_VALUE ((...

http://www.eeworld.com.cn/mcu/2018/ic-news081340717.html 发布时间: 2018-08-13



STM32F030 USART2配置函数 波特率不对导致无法进入中断

今天调试STM32F030 USART2,收发不了数据,仿真的时候进入不了中断,但是配置也是正确的。搞了很久,原因是先初始化的串口再初始化Flash数据,导致读入的波特率是0,进而无法正常使用USART2,浪费了大量的时间,血的教训呀。void UartIntial(void){ int i; GPIO_InitTypeDef   GPIO_uInitStructure; USART_InitTypeDef  USART_uInitStructure; NVIC_InitTypeDef NVIC_InitStructure;   for(i=0; i&...

http://www.eeworld.com.cn/mcu/2018/ic-news071040229.html 发布时间: 2018-07-10



关于stm32f030增加bootloader后外部中断不响应的问题

问题描述:最近在调试stm32f030芯片,增加bootloader后,可以正常跳转到应用程序,程序能够正常跑起来,但是却不进DMA中断,外部中断无法响应,这个问题找了好久....源码:void NVIC_Configuration(void){ uint32_t i = 0;  /* Relocate by software the vector table to the internal SRAM at 0x20000000 ***/   /* Copy the vector table from the Flash (mapped at the base of th...

http://www.eeworld.com.cn/mcu/2018/ic-news071040209.html 发布时间: 2018-07-10



stm32 定时器pwm输入捕获

输入捕捉的功能是记录下要捕捉的边沿出现的时刻,如果你仅仅捕捉下降沿,那么两次捕捉的差表示输入信号的周期,即两次下降沿之间的时间。如果要测量低电平的宽度,你应该在捕捉到下降沿的中断处理中把捕捉边沿改变为上升沿,然后把两次捕捉的数值相减就得到了需要测量的低电平宽度。如果要的测量低电平太窄,中断中来不及改变捕捉方向时,或不想在中断中改变捕捉方向,则需要使用PWM输入模式,或使用两个TIMx通道,一个通道捕捉下降沿,另一个通道捕捉上升沿,然后对两次捕捉的数值相减。PWM输入模式也是需要用到两个通道。使用两个通道时,最好使用通道1和通道2,或通道3和通道4,这样上述功能只需要使用一个I/O管脚,详细请看...

http://www.eeworld.com.cn/mcu/2018/ic-news070640168.html 发布时间: 2018-07-06



stm32 PWM input捕获输入模式

stm32 定时器pwm输入捕获输入捕捉的功能是记录下要捕捉的边沿出现的时刻,如果你仅仅捕捉下降沿,那么两次捕捉的差表示输入信号的周期,即两次下降沿之间的时间。如果要测量低电平的宽度,你应该在捕捉到下降沿的中断处理中把捕捉边沿改变为上升沿,然后把两次捕捉的数值相减就得到了需要测量的低电平宽度。如果要的测量低电平太窄,中断中来不及改变捕捉方向时,或不想在中断中改变捕捉方向,则需要使用PWM输入模式,或使用两个TIMx通道,一个通道捕捉下降沿,另一个通道捕捉上升沿,然后对两次捕捉的数值相减。PWM输入模式也是需要用到两个通道。使用两个通道时,最好使用通道1和通道2,或通道3和通道4,这样上述功能只...

http://www.eeworld.com.cn/mcu/2018/ic-news070640167.html 发布时间: 2018-07-06



STM32的定时器--输入捕捉模式

调试STM32的定时器好几天了,也算是对STM32的定时器有了点清楚的认识了。我需要测量4路信号的频率然后通过DMA将信号的频率传输到存储器区域,手册说的很明白每个定时器有4个独立通道。然后我就想能不能将这4路信号都连接到一个定时器的4个通道上去。理论上应该是行的通的。刚开始俺使用的是TIM2的1 2 3通道,TIM4的2通道来进行频率的测量。由于没有频率发生器,所以我用tim3作为信号源,用TIM2,TIM4来进行测量就ok了。  请看一开始的程序,以TIM2的1,3通道为例子:  TIM_ICInitStructure.TIM_ICMode = TIM_ICMode_ICAP;  ...

http://www.eeworld.com.cn/mcu/2018/ic-news070640164.html 发布时间: 2018-07-06



再次调试STM32F407+DP83848

早在还没有毕业前,就调试过STM32F407+DP83848,这次又调试了一次,居然花了2天时间。STM32支持两种工业级标准的接口,来与外部物理层 PHY模块相连,分别是独立于介质的接口(MII)和简化的独立于接口的接口(RMII)。之前PHY芯片使用的MII模式,现在的这次调试是使用的RMII模式(参考了各方原理图,主要还是以官方开发板的MB786为主)。我还是以一个ST官方手册上的图来说说我的使用情况吧。1.如果我们按照这个图上来画原理图,这个肯定没有错,但是对于一般使用(我们用的都是全双工的),CRS和COL这两根线使用的不多,至于为什么,我也说的不是很清楚,了解的同学们,可...
关键词: 调试 STM32F407 DP83848

http://www.eeworld.com.cn/mcu/2018/ic-news062740049.html 发布时间: 2018-06-27



STM32-Timer1定时器调试

  调试STM32定时器1,希望产生1Hz方波,程序调试完成后测试,一个周期的时间在30s左右,查找原因后发现,Timer1/8为高级定时器,在定时器配置时,同其他普通定时器不同的部分是,需要配置TIM1-->RCR(重复计数)寄存器,否则会出现定时时间同设定时间不符的现象;  高级定时器溢出中断的操作说明:1.时钟使能(定时器1/8为RCC_APB2时钟使能...

http://home.eeworld.com.cn/my/space-uid-152981-blogid-662239.html 发布时间: 2018-06-26



STM32串口通信乱码详细处理方法

STM32串口通信以及温度采集搞定,其中主要遇到STM32系列单片机时钟树的问题,串口通信遇到串口调试助手能够接收到数据但出现乱码现象,开始一直以为是串口配置和程序代码问题,因为是第一次上电在线调试STM32板子,后面主要查串口波特率配置和收发函数程序段,如下图:波特率设置成115200没问题,试着降低波特率改成9600和4800但问题依旧没有解决,紧接着如下处理:将重定向函数注释,单独写串口发送字节和字符串函数,依旧失败。最后锁定到系统时钟配置上,由于手上的STM32开发板改用了12M的晶振,根据单片机时钟树的理解和解读,一般采用外部时钟HSE,系统时钟配置成72M,8*9=72,,12*6...
关键词: STM32 串口通信 乱码

http://www.eeworld.com.cn/mcu/article_2018061039724.html 发布时间: 2018-06-10



STM32 学习九 通过USART实现printf重定向

把printf函数内容通过USART串口输出,可以方便调试STM32内部程序。示例代码如下:/******************************************************************************* * Function Name  : fputc * Description    : 重定向...

http://www.eeworld.com.cn/mcu/article_2018061039716.html 发布时间: 2018-06-10



STM32中关于串口中断的调试

说来惭愧,前日在调试stm32f10系列的单片机的时候,想做一个关于串口发送的状态机,每隔100毫秒发送一次命令。没有用DMA,就是想单纯的使用发送中断来数据,结果在调试的时候一直死在了串口中断那里,然后查看sr寄存器,发现是TC位只要打开发送中断就会被置位,看到这里我嘴角微微上扬,轻蔑一笑,(ˉ▽ ̄~) 切~~清掉标志位就好啦。事实证明,我是愚蠢的,我在中断那里TC位清零后,再次仿真,呃,怎么还不出去?_?好吧,我在使能发送中断之前清一下好吧。~~(╯﹏╰)b,还不走……三板斧耍完了,(~ ̄▽ ̄)~,度娘,你在哪?百度关键字“STM32发送中断”,哈,一堆的人有和我一样的问题。问题总该迎刃而...
关键词: STM32 串口中断 调试

http://www.eeworld.com.cn/mcu/article_2018060939684.html 发布时间: 2018-06-09



STM32之SPI驱动液晶屏的一个问题

这两天在调试STM32通过SPI接口驱动液晶屏,遇到一个很奇怪的问题。我在开发板上驱动液晶屏,屏正常点亮,功能操作正常。但我将驱动程序移植到我们产品上时,屏死活点不亮。我用示波器测量SCK、SDA、CS及A0信号,每个引脚的输出都是正常的。对比SCK、SDA数据,发现也没有问题。几经排除,最终发现是SCK与CS信号时序上不对齐所导致。正确的CS与CLK的时序如下所有CLK信号落在CS区间里面...
关键词: STM32 SPI 驱动液晶屏

http://www.eeworld.com.cn/mcu/article_2018060339537.html 发布时间: 2018-06-03



STM32CubeMx之硬件IIC调试基本方法

如题,最近在调试STM32的硬件IIC,从中发现了很多问题,经过网上查找资料总结和实际测试,总结出如下步骤来检测硬件IIC。 测试环境如下: STM32F407开发板; STM32Cube固件库F4 1.6.0 IIC设备 AT24C02 IIC配置如下:void MX_I2C1_Init(void){  hi2c1.Instance = I2C1;  hi2c1.Init.ClockSpeed = 100000;  hi2c1.Init.DutyCycle = I2C_DUTYCYCLE_2;  hi2...

http://www.eeworld.com.cn/mcu/article_2018060239512.html 发布时间: 2018-06-02



再次调试STM32F407+DP83848

早在还没有毕业前,就调试过STM32F407+DP83848,这次又调试了一次,居然花了2天时间。STM32支持两种工业级标准的接口,来与外部物理层 PHY模块相连,分别是独立于介质的接口(MII)和简化的独立于接口的接口(RMII)。之前PHY芯片使用的MII模式,现在的这次调试是使用的RMII模式(参考了各方原理图,主要还是以官方开发板的MB786为主)。我还是以一个ST官方手册上的图来说说我的使用情况吧。1.如果我们按照这个图上来画原理图,这个肯定没有错,但是对于一般使用(我们用的都是全双工的),CRS和COL这两根线使用的不多,至于为什么,我也说的不是很清楚,了解的同学们,可...
关键词: STM32F407 DP83848

http://www.eeworld.com.cn/mcu/article_2018052039339.html 发布时间: 2018-05-20



STM32系统时钟设置,采用外部有源晶振相关配置问题

调试STM32系统时钟设置时遇到一个问题:TIM2定时1Ms,TIM2中断服务函数time++,time=100时LED状态改变。程序运行后发现LED不是按照0.1S的时间闪烁,闪烁的很慢。查找程序发现在系统时钟初始化时,RCC_HSEConfig(RCC_HSE_Bypass); 语句配置不对,此语句解释为HSE晶振被外部时钟旁路。指将芯片内部的用于外部晶体起振和功率驱动等的部分电路...

http://www.eeworld.com.cn/mcu/article_2018051339237.html 发布时间: 2018-05-13



STM32的定时器和ADC

, TIM_IT_Update);  //清除TIMx的中断待处理位:TIM 中断源 这两个函数不能对调,不然就会出现不管定时器定时多长,一启动就会产生定时中断的现象这个时间大概是120uS对于ADC调试STM32采集板的电压分压测试,使用ADC采集数据,发现会有偏差,大概偏差5%后来测量硬件电路,发现基准电压VDDA和VREF+是3V,后来调到3.3V,AD采样就不存在偏差了。如有不妥之处...
关键词: STM32 定时器 ADC

http://www.eeworld.com.cn/mcu/article_2018050438960.html 发布时间: 2018-05-04




<上一页 12345678910 下一页> 相关结果约199个