我从时钟树分析一直认为,如果AHB是72M的话,APB1和APB2是72M频率,然后APB1 2分频成36M频率给PCLK1下边的外设,与此同时连接着TIM2~TIM7的倍频器由于APB1 不是1分频所以自动乘2,既TIM2~7的定时器时钟频率为72M。所以我下面的定时器配置图出来的定时器应该是1s的定时器。 但是实际测试并不是,实际出来的是2s的定时器。我时钟理解不了,难道是网上的时钟树分析都是错的? 你们是怎么理解的呢? æ¶éæ åæ å®æ¶å¨é ç½® |
使用SysTick_Config函数写延时函数,但显示SysTick_Config无法被调用,怎么解决呢?
stm32进入stop模式被莫名其妙唤醒(应该是systick)但是无法被WKUP引脚唤醒。
头文件找不到
软件为keil5,头文件未找到
通过FATFS文件系统读写SD卡创建文件可以了,但加入MSC,一直显示一个没有格式化的U盘盘符,也不能格式化,这是什么问题导致的
stm32f103汇编求助
cubemx 生成的freertos代码 在keil ac6下不能编译,有什么解决的方法吗
报错Could not determine GDB version using command: arm-none-eabi-gdb --version
stm32f107vct6配RTL8201例程
STM32F103VGT6 能代替 STM32F103VFT6 吗?
时钟初始化部分有错误。
RCC_PCLK2Config、RCC_PCLK1Config不能用RCC_SYSCLK_Div1的参数。
进去函数看一下说明,要用对应的,RCC_HCLK_Div2。
RCC_HCLKConfig(RCC_SYSCLK_Div1);
RCC_PCLK2Config(RCC_HCLK_Div1);
RCC_PCLK1Config(RCC_HCLK_Div2);
另外你这程序能跑吗?时钟不对,跑不动吧。
建议升级库。
这是我从cube f103 里的时钟树截图。。 HCLK 72MHZ 经过 APB1/2得到最大36MHZ 但是 (APB1 timer) 时钟默认自动由APB1X2 所以是72MHZ
只是针对timer的。。其他APB1的外设最大时钟还是36MHZ。。。
按照以下配置,实现了1s的延时测试
我测试了,确实是1s 的延时。。。
我也是用了cubemx这样配置确实是1s的定时器,但是用库函数版的就不对,这也让我下决心发帖子搞搞明白。
这是时钟配置的截图
æ¶éåå§å
用的哪个版本的库?要不发个程序过来
001_Systick.rar
2017-7-14 11:24 上传
点击文件名下载附件
下载积分: ST金币 -12.19 MB, 下载次数: 9, 下载积分: ST金币 -1
TIMæ¶éä¸å¯¹,å¤é¨ä¸æè¿ä¸å»
工程发了
改过来确实好了,这个工程用了很久,没注意到这个问题。
void RCC_SYSCLKConfig(uint32_t RCC_SYSCLKSource) 这个函数不调用就可以默认用PLL作为system clock了吗
用Cube吧,去年我把外部时钟改成内部时钟,看参考手册,小心翼翼的,花了一上午。一气之下,今年改Cube了,点点鼠标,花了5分钟,这个就是效率。
cube的串口定长接收太操蛋,DMA中断接收按照网上的帖子弄了两回没弄成。 关键现在的一个项目用cube的串口接收数据时不定时会停止接收了,仿真的时候进不了中断,比较烦。