徐建春
(英格索蘭亞太工程技術(shù)中心,上海 200051)
STM32主時(shí)鐘輸出的雙機(jī)系統(tǒng)應(yīng)用
徐建春
(英格索蘭亞太工程技術(shù)中心,上海 200051)
介紹了STM32 單片機(jī)主時(shí)鐘輸出功能, 通過(guò)硬件設(shè)計(jì)和軟件設(shè)計(jì)實(shí)現(xiàn)了主時(shí)鐘輸出功能、STM32單片機(jī)主時(shí)鐘輸出的波形展示, 以及在空調(diào)控制系統(tǒng)中的應(yīng)用。STM32F030使用STM32F205輸出的時(shí)鐘,可以正常穩(wěn)定的工作,經(jīng)過(guò)多臺(tái)實(shí)際機(jī)組的長(zhǎng)期運(yùn)行測(cè)試,兩個(gè)單片機(jī)工作都非常穩(wěn)定。
STM32;主時(shí)鐘輸出;HVAC
在一個(gè)復(fù)雜控制系統(tǒng)的硬件電路設(shè)計(jì)中,有可能用到兩個(gè)單片機(jī),而在常規(guī)的單片機(jī)電路設(shè)計(jì)中,每個(gè)單片機(jī)需要一個(gè)單獨(dú)的晶振電路提供時(shí)鐘信號(hào)。STM32系列是ST公司推出的基于ARM內(nèi)核的32位單片機(jī),此系列的單片機(jī)具有強(qiáng)大的功能,其中就包括主時(shí)鐘輸出功能,可以讓其中的一個(gè)單片機(jī)輸出時(shí)鐘信號(hào),提供給另一個(gè)單片機(jī)或者其他芯片使用。
特靈(TRANE) 品牌的一款空調(diào)控制板使用了兩個(gè)STM32 單片機(jī):一個(gè)是STM32F205, 為主單片機(jī),處理電路板上大部分的輸入、輸出以及通信信號(hào);另外一個(gè)是STM32F030,主要處理從室內(nèi)溫控器過(guò)來(lái)的總線信號(hào),按照常規(guī)分別給這兩個(gè)單片機(jī)設(shè)計(jì)一個(gè)晶振電路,由于STM32具有主時(shí)鐘輸出功能,只需要給STM32F205設(shè)計(jì)晶振電路,由STM32F205輸出一個(gè)8 MHz的時(shí)鐘信號(hào)提供給STM32F030使用。
STM32F205可以有兩個(gè)主時(shí)鐘輸出功能引腳,分別是MCO1-PA8和MCO2-PC9。MCO(Main Clock Output),即主時(shí)鐘輸出。對(duì)MCO1,可以在復(fù)位和時(shí)鐘配置寄存器(RCC_CFGR)中設(shè)置4個(gè)不同的時(shí)鐘信號(hào)源,即高速內(nèi)部時(shí)鐘(HSI clock)、低速外部時(shí)鐘(LSE clock)、高速外部時(shí)鐘(HSE clock)、鎖相環(huán)時(shí)鐘(PLL clock),并且可以設(shè)置1~5分頻比。對(duì)MCO2,可以在復(fù)位和時(shí)鐘配置寄存器(RCC_CFGR)中設(shè)置4個(gè)不同的時(shí)鐘信號(hào)源,即高速外部時(shí)鐘(HSE clock)、鎖相環(huán)時(shí)鐘(PLL clock)、系統(tǒng)時(shí)鐘(SYSCLK)、音頻總線鎖相環(huán)時(shí)鐘(PLLI2S),并且可以設(shè)置1~5分頻比。
當(dāng)GPIO引腳PA8或者PC9設(shè)置為主時(shí)鐘輸出功能時(shí),相應(yīng)的引腳功能要配置成復(fù)用功能模式,并且輸出的主時(shí)鐘頻率不得超過(guò)100 MHz。
STM32F205主時(shí)鐘輸出硬件電路設(shè)計(jì)圖如圖1所示。
STM32F205設(shè)計(jì)了8 MHz晶振電路,PC9作為主時(shí)鐘輸出引腳,設(shè)計(jì)了一個(gè)RC低通濾波電路(R1,C1),去除主時(shí)鐘輸出信號(hào)上的噪音,截止頻率約為160 MHz,輸入到STM32F030的PF0/OSC_IN引腳。
圖1 主時(shí)鐘輸出功能硬件電路圖
由于兩個(gè)單片機(jī)不可能靠得很近,所以從STM32F205的PC9引腳到STM32F030的OSC_IN引腳距離還是比較遠(yuǎn)的,實(shí)際測(cè)量距離大約為2.9 英寸,為了防止可能的干擾,對(duì)2.6英寸長(zhǎng)度的主時(shí)鐘輸出走線進(jìn)行了包地處理,低通濾波元器件R1和C1要靠近STM32F205。
STM32CubeMx是ST公司為STM32單片機(jī)開發(fā)的一個(gè)圖形化配置界面,只要在這個(gè)界面里面配置好參數(shù),就可以自動(dòng)生成EWARM或者M(jìn)DK-ARM項(xiàng)目文件,這樣省去了軟件代碼的配置工作,減少了由于軟件配置導(dǎo)致的錯(cuò)誤和調(diào)試時(shí)間。
STM32F205的相關(guān)功能引腳配置為:PH0配置成RCC_OSC_IN;PH1配置成RCC_OSC_OUT;PC9配置成RCC_MCO_2。
STM32F205的MCO2配置非常簡(jiǎn)單,主時(shí)鐘輸出直接來(lái)自于HSE(高速外部晶振)。
圖2所示為STM32F205的圖形化時(shí)鐘配置界面。
STM32F030引腳配置:PF0 配置成RCC_OSC_IN;PF1配置成Reset State,也可以作其他用途。
在上述STM32CubeMX中配置好后,就可以自動(dòng)生成EWARM或者M(jìn)DK-ARM項(xiàng)目文件,經(jīng)過(guò)編譯鏈接,生成十六進(jìn)制可執(zhí)行文件,燒錄進(jìn)兩個(gè)單片機(jī)中,就可以看到STM32F205主時(shí)鐘輸出波形,是一個(gè)漂亮的8 MHz方波,如圖3所示。
圖3 STM32F205主時(shí)鐘輸出波形
[1] ST.STM32F205xx,STM32F207xx,STM32F215xx and STM32F217 xx advanced ARM-based 32-bit MCUs Reference Manual,2012.
[2] ST.STM32F030x4/x6/x8 advanced ARM-based 32-bit MCUs Reference Manual,2014.
徐建春(高級(jí)工程師),主要研究方向?yàn)锳RM開發(fā)平臺(tái)的軟硬件開發(fā)。
(責(zé)任編輯:薛士然 收修改稿日期:2016-08-21)
Dual-system Application of STM32 Main Clock Output
Xu Jianchun
(Ingersoll Rand Engineering&Technology Center-Asia Pacific,Shanghai 200051,China)
In the paper,the main clock output function of STM32 is introduced.The functions of main clock output and the display of output are achieved through the hardware and software design,which has been used in the air conditioning control system.The STM32F030 uses the output clock of STM32F205,it can work normally.After a number of units in the long-term operation of the test,the two microcontrollers work stably.
STM32;main clock output;HVAC
TP332.3
A