你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

神舟王例程问题

[复制链接]
风铃草2 提问时间:2014-10-29 15:33 /
阅读主题, 点击返回1楼
收藏 评论12 发布时间:2014-10-29 15:33
12个回答
回答时间:2014-11-6 14:42:37
    TIM_TimeBaseStructInit(&TIM_TimeBaseInitStruct);
    TIM_TimeBaseInitStruct.TIM_Period =60000;           //TIM update rate =TIM counter clock/TIM_Period =6MHz/60000=100Hz   
    TIM_TimeBaseInitStruct.TIM_Prescaler =1001;           //TIM counter clock =TIMxCLK/(Prescaler +1) =72MHz/12=6MHz      
    TIM_TimeBaseInitStruct.TIM_ClockDivision = 0;       //时钟倍频  
    TIM_TimeBaseInitStruct.TIM_CounterMode = TIM_CounterMode_Up;  //计数方向向上计数
    TIM_TimeBaseInit(TIM4, &TIM_TimeBaseInitStruct);   
试试我的代码
风铃草2 回答时间:2014-11-6 19:28:10
安 发表于 2014-11-6 14:42
TIM_TimeBaseStructInit(&TIM_TimeBaseInitStruct);
    TIM_TimeBaseInitStruct.TIM_Period =60000;   ...

恩,小问题而已,改天试一试,只是希望神舟能够重视一下,是否是例程的问题我不在乎,只要我发的500多块大洋买的板子没问题就行!
风铃草2 回答时间:2015-1-6 16:35:36
没错,是0.5s中断一次的:   外部晶振25M  用神舟 的system_stm32f4xx.c文件 生成的PCLK1是42MHZ的(用RCC_GetClocksFreq(&Sysclock);函数读取时钟), 而TIM时钟是二倍频的84MHZ,  加上配置:

TIM_Period = (10000 - 1);
TIM_Prescaler  = (4500 - 1);
中断一次的时间就是:  10000/(84M/4500) 约等于 0.5s
12

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版