STM32
Eric_jhb
..
展开
-
STM32 RTC更新时间计数器RTC_CNT后在函数RTC_WaitForLastTask()中死循环的原因
出现的现象是上电初始化时配置RTC没有错误,程序顺利通过,但是在程序运行过程中校正时间,更新RTC_CNTx的值,程序就会停在RTC_WaitForLastTask()进行死循环。问题的原因就在于,每次操作RTC_CNTx时应该要使能PWR 和 BKP 时钟,允许访问BKP域。例程中只在第一次上电,并且初始化RTC后才执行了写RTC_CNTx的操作,如下://///转载 2016-01-12 13:08:23 · 6734 阅读 · 2 评论 -
STM32时钟配置方法详解
一、在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。①HSI是高速内部时钟,RC振荡器,频率为8MHz。②HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~16MHz。③LSI是低速内部时钟,RC振荡器,频率为40kHz。④LSE是低速外部时钟,接频率为32.768kHz的石英晶体。⑤PLL为锁相环倍频转载 2016-09-01 20:48:54 · 3524 阅读 · 0 评论 -
IAR下stm32使用12M外部晶振
系统默认的是使用8M外部晶振,需修改三个地方: 第一步,打开stm32f10x.h,将define HSE_VALUE ((uint32_t)8000000) /!/修改为:define HSE_VALUE ((uint32_t)12000000) /!/第二步,打开system_stm32f10x.c,修改PLL参数,将/* PLL configuration转载 2016-09-02 16:23:46 · 2619 阅读 · 0 评论 -
STM32的时钟系统RCC详细整理
http://www.51hei.com/bbs/dpj-30961-1.html一、综述:1、时钟源在 STM32 中,一共有 5 个时钟源,分别是 HSI 、 HSE 、 LSI 、 LSE 、 PLL 。 ①HSI 是高速内部时钟, RC 振荡器,频率为 8MHz ; ②HSE 是高速外部时钟,可接石英 / 陶瓷谐振器,或者接外部时钟源,频转载 2016-09-02 16:27:43 · 4005 阅读 · 1 评论 -
解决烧录问题:Jlink的三线制SWD方式连接STM32芯片无法识别的解决方案
网上找到此文章解决了j-flash只能连接后不能烧录的问题,希望遇到相同问题的小伙伴,可以用同样的办法解决:前段时间,做了一块板子,调试接口只留了三个口SWD、SWCLK、GND,在使用Jlink的SWD方式调试的时候发现无法连接。使用ST-link的时候可以连接,无奈楼主的ST-link的链接方式相当的不可靠,时而能识别时而不能识别:当然我的ST-link是山寨版的。那么问题来了转载 2017-01-03 16:19:16 · 52083 阅读 · 5 评论 -
【Contiki学习】01.Contiki-stm32系统下实现serial-shell功能
一,背景介绍之前通过网上收集资料(资料后期整理之后会在博客分享),在stm32上面跑通了,就是实现了简单的点灯程序,以及串口输出。但是后期开发使用肯定需要用到shell,经过一番折腾后小有收获。在这说一下开发环境:IAR+stm32vet6(ST官方库3.5+contiki3.0)原创 2017-02-04 16:54:06 · 2898 阅读 · 0 评论 -
IAR STM32 函数和变量的绝对地址定位
昨天我突然冒出个想法,能否利用函数和变量的绝对定位,实现程序的模块化更新。 也就是说,如果我要改变某个函数,只需要更新flash里面一个局部,也许只需要更新几百个字节,而无须重新下载整个上百K的程序。 经过查找资料和反复实验,终于实现了,现总结如下: 1) 把函数定位在FLASH高端的指定位置,以后更新,只更新那小块地方就可以了。 方法一: ...转载 2018-08-13 09:38:31 · 2440 阅读 · 0 评论