久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12089|回復: 3
打印 上一主題 下一主題
收起左側

STM32定時器輸出比較應用中的幾個話題

[復制鏈接]
跳轉到指定樓層
樓主
ID:98618 發表于 2015-12-8 04:05 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
本文作者是milershao
不論STM8還是STM32的定時器它們的結構大體差不多,都分為三類。高級定時器、通用定時器、基本時基時鐘。其中高級定時器與通用定時器相比,主要多了馬達控制方面的互補輸出通道,帶剎車功能和死區控制,有HALL接口。那基本時基時鐘就是單純的一個定時器,沒那些IC、OC通道等。

這里以stm32 MCU為例,跟大家分享下有關通用或高級定時器的輸出比較應用中如下幾個常見話題。


1、OCxREF與OCx關系問題

2、OCx極性選擇問題

3、帶互補輸出時的幾個概念及相關寄存器介紹

4、帶剎車功能的互補通道的控制位及輸出對照表的解讀


一、OCxREF與OCx關系的話題

OCxREF信號就是在選定輸出比較模式后,在某種條件下輸出模式控制器產生的一個中間參考信號。說它屬于中間參考,是因為該信號跟對應的OCx通道輸出信號之間存在一個極性選擇器,即下方紅色方框部分。經過極性選擇后的信號最終輸出還得受輸出使能電路的控制。


上面提到輸出比較模式指如下幾種模式【以某定時器通道1為例】:


前面提到的“某種條件”在上面的幾種模式中都提到,無須多解釋了。

其中凍結模式就是CCRxTimx_CNT寄存器的值對輸出沒影響,此時可以一般作普通計數器來用。其它幾種模式可以劃分為強制輸出、比較輸出、PWM輸出三類。

要注意的是,這里的輸出比較結果只說到OCxREF信號,至于OCx端的信號,還取決于極性選擇。另外,這里有個重要約定ORxREF信號為高電平時稱為有效電平,反之為無效電平。


順帶提下,經常有人在使用PWM輸出模式或切換模式時,希望讓輸出通道OCx端的電平在某時刻或某時段臨時切換為想要的電平。一般有兩種辦法,一種是使用上面提到的強制輸出模式;如果是PWM輸出模式,可以通過修改CCR的值等于0或大于等于ARR來實現。具體怎么配置要結合你的模式選擇、極性選擇及OCx端所期望的電平。當采用修改CCR值方式時,如果希望立即生效的話,記得將相應通道的預裝載使能功能禁用掉。


二、OCx極性選擇問題

從上面第一幅圖可以直觀的看出OCxREF跟后面的OCx信號可能是同相或者反相關系,由寄存器TIMx_CCER CCxP位確定。下面是高級定時器有關極性配置的文字截圖。


CCxP=0時,OCx輸出高電平有效,為1OCx低電平有效。

如果單獨看這個地方,多少顯得有些突兀。對于一個電平高低本無所謂,這里硬加上個有效無效,有些讓人費解。我們基于上面第一幅圖和關于OCxREF電平重要約定來探討下。

CCxP=0時,OCxREF直達OCx端。因約定OCxREF為高時算有效電平,那OCx信號的高電平也就對應著ORxREF的有效電平。所以約定OCx端的高電平為有效電平。

而當CCxP=1時,OCxREF反相后到達OCx端。有效高電平OCxREF經極性選擇器反相到達OCx端變為低電平,此時OCx信號的低電平就對應著OCxREF的有效電平。所以約定此時的OCx端的低電平為有效電平。

做極性選擇的實質其實是做OCx/OCxN端有效電平的選擇。至于如何選擇有效電平,那得結合具體外部驅動需要。當OCx或OCxN端輸出無效電平時的狀態為無效狀態。

結合極性選擇的配置和有效電平的定義,我們可以得出兩個推論

1、對于某OCx通道,當OCx端的電平與其極性選擇位【0或者1】一致時,該電平一定是無效電平。

2、對于某正常運行的OCx通道,OCx端電平可看作極性選擇位【0或者1】跟OCxREF電平異或后的結果。即 OCx=OCxREF xor CCxP【這里沒考慮死區】

理解上面2個推論很重要,不然在看那張“帶剎車功能的互補通道的控制位及輸出對照表”的相關描述時可能就很費解。

對于通用定時器,是沒有互補輸出功能的。通用定時器的標準OCx輸出通道的電平輸出狀態相對比較簡單。


OCx通道的輸出使能被禁止時,其輸出固定為0,當開啟后OCx端電平由OCxREF與極性選擇器共同確定。如果是高級定時器啟用互補輸出通道時,OCX/OCXN端的電平確認要比通用定時器復雜,它往往跟多個控制位有關。


三、帶互補輸出時的幾個概念及相關寄存器介紹

ST MCU里面只有高級定時器帶互補輸出。高級定時器里有幾個概念和專有的寄存器需要了解下。一般來說,定時器做互補輸出使用驅動馬達設備,為安全起見,控制電路往往配有死區控制、剎車控制。在高級定時器里有個關于剎車及死區控制的寄存器。


其中有三個位MOE,OSSR,OSSI需要特別了解下。

MOE:當發生剎車時,該位被硬件清零。OCxOCxN將呈無效狀態或空閑狀態或輸出禁止狀態。


OSSR:運行模式【run mode】下關閉狀態的輸出選擇位。

此時MOE=1。針對開啟了互通輸出通道但其中某一通道的輸出使能被禁止的情形,比方雖然TimX_CH1TimX_CH1N的比較輸出模式都開啟了,而CH1的輸出使能被禁止了。該位決定OC1運行模式下的最后輸出狀態。

強調:OSSR針對運行模式下互補輸出通道才有效。


這里提醒下:

對于一對互補通道OCx/OCxN,如果同時輸出使能并均為高電平有效極性選擇時,OCxOCxREF是同相的,OCxNOCxREF是反相的。如果說只使能其中一個通道,并做高電平有效極性選擇,不論OCX還是OCXN都跟OCXREF同相。

OSSI:空閑模式【idle mode】下關閉狀態【off state】的輸出選擇。

空閑模式是相對運行模式而言,發生剎車事件時MOE=0。對于已經配置為比較輸出模式而其輸出使能被禁止的通道,該位決定OCxOCxN空閑模式下的最后輸出狀態。

強調:OSSI針對空閑模式下的輸出通道有效。


***上面提到的“inactive理解為某通道的輸出控制使能被禁用的情形。

還有兩個寄存器位OISx、OISxN需要了解下,是有關空閑狀態【MOE=0】下OCx/OCxN端的空閑電平的選擇問題。


四、帶剎車功能的互補通道的控制位及輸出對照表的解讀

STM32各系列參考手冊的定時器介紹部分都有一張表格,即帶剎車功能的互補通道的控制位及輸出對照表。說實話咋看這個表真不太好懂。

為了便于介紹,我把那張表截成了兩部分,一部分是運行模式下【MOE=1】各控制位與通道輸出情況的對應關系表;另一部分是空閑模式下【MOE=0】各控制位與通道輸出狀態的對應表。

表格里多處標注Output DisabledOff-state,這里簡單說明下。

**Output Disabled:通道輸出禁止狀態。此時該通道不受TIMER驅動。相應的OCXOCXN輸出使能禁止,輸出端的電平為0。【別把輸出禁止狀態跟通道的輸出使能控制混淆了】

下面兩幅圖中橢圓形紅色圓圈配置的地方,CCxECCxNE=0,OCxOCxN=0,都是輸出禁止狀態的情形。

**Off-state:通道關閉狀態。相應通道輸出使能,但輸出無效狀態。這個無效狀態是指某互補通道中的一路或兩路輸出無效電平時的狀態。

先看看運行模式下【MOE=1】的情形:

運行模式時下,當OSSR=0時,如果某通道的輸出使能禁止,即CCxECCxNE=0,則該通道輸出為輸出禁止狀態。

運行模式時下,當OSSR=1時。如果互補通道中的某一路的輸出使能禁止,即CCxECCxNE=0,則該通道輸出無效電平,呈關閉狀態,或者說無效輸出狀態。

**關于下面表格有三地方需提醒下:


1、上面圖表中關閉狀態【off state】處有類似下面的描述:

OCx=CCxP OCx_EN=1 或者 OCxN=CCxNP , OCxN_EN=1;

前面講極性選擇時提過,當OCxOCxN端的輸出電平與其極性選擇位【CCxPCCxNP】一致時,該電平一定為無效電平。這里就是表示輸出無效電平。


2、表格中有諸如 OCx = OCxREF xor CCxP的寫法,這點在前面也提過,實際上就是OCxREF信號經過極性選擇后在OCx端輸出的意思。


3、紅色三角形標注的兩個地方,互補通道中只有1路輸出被使能,此時的OCxOCxN通道的輸出是基于OCxREF信號配合各自的極性選擇后輸出。再看看紅色箭頭標注的兩個地方,因為此時兩個互補通道同時被使能,OCx通道的輸出是基于OCxREF配合自己的極性選擇,而OCxN通道的輸出則是基于OCXREF的反相信號再結合其極性選擇后輸出。


最后來看看空閑模式下即MOE=0結合不同控制配置位的OCx/OCxN的輸出情形。


空閑模式下的OC輸出相對簡單,OCx/OCxN輸出無非呈現2狀態,一種是輸出禁止狀態,一種是無效輸出狀態,即關閉狀態。

MOE=0, OSSI=0, OCxOCxN均呈輸出禁止狀態。此時OC控制器不受TIMER驅動,相應的OCxOCxN輸出使能禁止,輸出端的電平為0!旧蠄D中橢圓形標注的地方】

MOE=0, OSSI=1,互補通道中至少1路輸出使能,OCxOCxN都呈關閉狀態。相應的OCxOCxN輸出無效電平或空閑電平,【電平有效性依據極性選擇CCxP/CCxNP而定,空閑電平依據OSIx/OSxN而定】但至少1路輸出無效電平。

表格下方的那句注釋,當某通道的兩互補通道都沒使用時,即CCxE=CCxNE=0時,

CCxP\CCxNP\OISx\OISxN都將被清零。這句有助于理解圖表中輸出禁止狀態時的相關描述。

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:120570 發表于 2016-5-13 16:54 | 只看該作者
非常感謝,簡直詳細,但是還有不明白的地方,最后面,OSSI=1,輸出無效電平或是空閑電平,那到底輸出無效還是空閑電平?
回復

使用道具 舉報

板凳
ID:120570 發表于 2016-5-17 09:26 | 只看該作者
如何聯系到milershao大師,想請教點問題
回復

使用道具 舉報

地板
ID:260269 發表于 2017-12-20 11:14 | 只看該作者
想問一下,最后的MOE=0,OSSI=0時。表格中的輸出不是CCxP嗎?為什么說輸出端的電平為0呢?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品一区二区在线观看 | 日韩在线免费 | 国产高清久久 | 人人人人干| 91深夜福利视频 | 色视频在线播放 | 在线观看精品视频网站 | 久久亚洲国产精品 | 麻豆hd| 国产在线对白 | 看毛片的网站 | 性国产xxxx乳高跟 | 久久久成 | 黑人粗黑大躁护士 | 天天操夜夜操免费视频 | 91精品久久久 | 亚洲欧洲精品成人久久奇米网 | 伊人国产精品 | 欧美精品一区二区在线观看 | 日韩在线视频一区 | 亚洲人成人一区二区在线观看 | 日本一区二区三区在线观看 | 成人深夜小视频 | 99在线免费观看 | 视频1区2区| 农村妇女毛片精品久久久 | 一区在线观看 | 狠狠撸在线视频 | 自拍在线 | 国产一级黄色网 | 国产精品日韩欧美一区二区三区 | 国产午夜精品视频 | 日本黄色免费大片 | 超碰激情| www.蜜桃av.com| 久久不卡日韩美女 | 午夜男人天堂 | 国产精品欧美一区二区 | 色婷婷综合久久久中字幕精品久久 | 日韩小视频在线 | 国产日韩欧美电影 |