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

STM32F407VG 定時器同步觸發問題

[复制链接]
小豚豚 提问时间:2018-11-23 13:31 /
目前的研究需要以 STM32F4 Discovery 開發版的定時器觸發ADC轉換有些問題想向大家請教。


先說明目前完成的進度:

1.PTP功能完成,且 PB5 (ETH_PPS_OUT) 可輸出正確的PPS訊號。

2.設定定時器2啜為外部觸發輸入 PA15 (TIM2_ETR) 接收 PB5 的PPS訊號。

3.定時器2選擇 One pulse mode 並以 PA3 (TIM2_CH4) 輸出。



(以定時器2的OPM模式輸出仿PPS訊號)      
1.png


(該模擬訊號與PPS訊號達成同步)

※以上步驟產生的PPS訊號都有與 SecureSync PTP Grandmaster 時鐘的PPS進行驗證,確認有同步。

4.定時器2設為 Master 、定時器4設為 Slave ,經由ITR1 讓TIM2的 TRGO 可以觸發TIM4開始計數。

/* TIM2 TRGO Select */
TIM_SelectOutputTrigger(TIM2, TIM_TRGOSource_OC4Ref);



(當CNT>或= CCR4時會有TRGO)
2.jpg


因此在定時器4設為比較模式,且CCR4 =1的情況下,定時器4的啟動應該回延遲1個CNT的時間。

5.實際成果中定時器3的上升沿時間會出現2種情況。


正常情況(我要的情況)

(預計以TIM4以4800Hz做ADC轉換)
3.jpg



(TIM4上升沿有與PPS同步)  
4.jpg


異常情況(TIM4的啟動會延遲5us)

(TIM4的4800Hz會經由PI控制器調整ARR)
5.png


(TIM4上升沿與PPS產生5us延遲)
6.png


由於延遲的情況並非固定,而是有時有有時沒有顧想請教可能會是哪邊出現問題了?
需要定時器配置部分的程式碼的話可以再上傳

對問題不明白的話也麻煩告知!


收藏 1 评论7 发布时间:2018-11-23 13:31

举报

7个回答
xmshao 回答时间:2018-12-4 17:33:35
写得很详细,但还是有地方没看明白。
你TIM2选择PPS作为触发输入信号,然后TIM2输出单脉冲去触发TIM4对吗?
如果是,TIM4然后需要做什么呢?TIM4被TIM2触发,然后TIM4的时钟是谁的?
内部时钟?工作在哪种从模式?

点评

因此我的想法是利用PPS秒脈衝上升沿來讓TIM4的CEN始能  发表于 2018-12-6 14:00
我需要使用PPS的秒脈衝訊號來讓板子做每秒4800次的ADC轉換  发表于 2018-12-6 13:59
butterflyspring 回答时间:2018-12-5 15:55:07
同问,写的很详细,但是没看明白
另外,如果需要定时器4的引脚同步输出,可以使用如定时器2的单脉冲方式同步输出呀

点评

但是規格上需要每秒做4800次ADC轉換,因此目前腦袋卡住不知怎下手  发表于 2018-12-6 14:02
利用單脈衝的方式是可以做到同步輸出的  发表于 2018-12-6 14:01
xmshao 回答时间:2018-12-27 15:40:19
xmshao 发表于 2018-12-4 17:33
写得很详细,但还是有地方没看明白。
你TIM2选择PPS作为触发输入信号,然后TIM2输出单脉冲去触发TIM4对吗? ...

用那个秒脉冲作为定时器的触发使能可以做到,从定时器配置在触发模式。
你说用秒脉冲信号让板子做每秒4800的话,可以让TIM4的使能作为触发输出来触发ADC.
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版