亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于ST-Link的STM32單片機(jī)多路固件燒錄方法研究

        2020-07-04 02:42:08陳景郁朱洪雷
        機(jī)電信息 2020年9期
        關(guān)鍵詞:STM32單片機(jī)

        陳景郁 朱洪雷

        摘要:STM32系列單片機(jī)性能好、性價(jià)比高,因而廣泛應(yīng)用于嵌入式設(shè)備。嵌入式設(shè)備種類繁多,芯片固件也變化多樣,在生產(chǎn)制造過程中,繁雜多樣的芯片固件導(dǎo)致了芯片生產(chǎn)燒錄瓶頸問題。鑒于此,在改造產(chǎn)線生產(chǎn)工具過程中,嘗試了一種基于ST-Link工具實(shí)現(xiàn)的多路固件燒錄方法,可以簡(jiǎn)化工人操作,實(shí)現(xiàn)固件燒錄多樣化,提高生產(chǎn)效率之余,也增強(qiáng)了生產(chǎn)安全性。

        關(guān)鍵詞:STM32單片機(jī);ST-Link;固件燒錄

        0 ? ?引言

        STM32系列單片機(jī)由于性能好,性價(jià)比高,功耗低,逐漸成為嵌入式設(shè)備中的主流控制器;可穿戴設(shè)備、醫(yī)療設(shè)備、智能交通和智能家居等嵌入式設(shè)備都有采用STM32系列單片機(jī)作為主控制器的案例[1-3]。STM32系列單片機(jī)是ST公司推出的基于ARM Cort內(nèi)核的控制器,資源豐富、種類繁多,可以適用于多種場(chǎng)景的產(chǎn)品。

        在使用STM32系列單片機(jī)的過程中,產(chǎn)品制造遇到了相關(guān)的生產(chǎn)燒錄瓶頸問題。傳統(tǒng)的生產(chǎn)方式,STM32系列單片機(jī)固件的燒錄方法分為在線燒錄和線外燒錄兩種。市面上提供的燒錄設(shè)備,無論是在線還是線外燒錄,一般都只能同時(shí)燒錄同一個(gè)固件,不能實(shí)現(xiàn)多路同時(shí)燒錄多個(gè)不同的固件。由于IOT設(shè)備的多樣化,產(chǎn)品固件也呈現(xiàn)出多元化的趨勢(shì)。本文介紹了一種基于ST-Link改造的多路差異化燒錄方法,可以提供多元化產(chǎn)線生產(chǎn),提高產(chǎn)線生產(chǎn)效率。

        1 ? ?ST-Link介紹

        ST-Link是ST公司專門為STM系列單片機(jī)開發(fā)的調(diào)試工具。ST-Link結(jié)構(gòu)簡(jiǎn)單、使用方便,可用于研發(fā)調(diào)試,也可用于產(chǎn)品生產(chǎn),以大大降低用戶開發(fā)和使用成本。

        ST-Link工具對(duì)STM32單片機(jī)提供豐富的功能,包括:整個(gè)芯片擦除、按sector擦除、固件刷寫、按字節(jié)改寫數(shù)據(jù)、刷寫數(shù)據(jù)校驗(yàn)、存儲(chǔ)內(nèi)容校驗(yàn)、option bytes讀寫以及寄存器讀寫等。option bytes是STM32系列單片機(jī)中,留給用戶配置系統(tǒng)功能的特殊字節(jié),option bytes是可編程的、非易失性的配置存儲(chǔ)器。

        另外,ST-Link工具支持同時(shí)多個(gè)連接使用。每個(gè)ST-Link都有一個(gè)唯一碼,連接電腦后,可以通過其唯一碼識(shí)別ST-

        Link,并對(duì)其進(jìn)行操作,從而實(shí)現(xiàn)多路ST-Link獨(dú)立并行工作。本文介紹的方法也是利用其設(shè)備唯一碼來區(qū)分多路ST-Link工具,并實(shí)現(xiàn)多路刷寫功能同時(shí)工作的。

        ST公司開發(fā)的STM32 ST-Link Utility工具,可以支持基于ST-Link開發(fā)調(diào)試及量產(chǎn)[4]。由于ST公司并沒有提供詳細(xì)的公司接口說明,也沒有開源此工具的代碼,開發(fā)調(diào)試難度比較高。但STM32系列單片機(jī)的應(yīng)用非常廣泛,市面上也有很多ST-Link工具的開發(fā)包,例如:

        (1)stlink,一款Linux下的ST-Link開源工具,https://github.com/texane/stlink。

        (2)QSTLink2,一款基于QT的跨平臺(tái)ST-Link開源工具,https://github.com/fpoussin/QStlink2。

        (3)pystlink,一款基于python實(shí)現(xiàn)的ST-Link開源工具,https://github.com/pavelrevak/pystlink。

        考慮到python通用性更高、清晰簡(jiǎn)單易用,也可以實(shí)現(xiàn)跨平臺(tái)運(yùn)行,所以選擇了基于python實(shí)現(xiàn)我們的燒錄工具的上位機(jī),利用pystlink工具提供的接口操作ST-Link。

        2 ? ?方案設(shè)計(jì)說明

        設(shè)計(jì)一個(gè)可以將多路ST-Link同時(shí)接入的燒錄裝置,燒錄上位機(jī)能識(shí)別并區(qū)分各路ST-Link。在燒錄裝置中,ST-Link通過SWD(Serial Wire Debug,串行調(diào)試)總線連接到芯片座;燒錄的時(shí)候,芯片座安放待燒錄芯片;每個(gè)ST-Link對(duì)應(yīng)連接一個(gè)芯片座。

        燒錄裝置有多個(gè)芯片座用于安放芯片,芯片座可以更換,以便適配不同型號(hào)和封裝的芯片。燒錄裝置上有獨(dú)立的控制器,可以控制芯片及ST-Link的電源、指示燈和按鍵。

        電腦上位機(jī)通過USB連接燒錄裝置,通過ST-Link的唯一碼,區(qū)分并識(shí)別各路ST-Link。上位機(jī)獨(dú)立控制每一路ST-Link,加載固件文件,識(shí)別芯片,并完成燒錄時(shí)序邏輯,實(shí)現(xiàn)芯片線外燒錄功能。

        電腦上位機(jī)可以實(shí)現(xiàn)聯(lián)網(wǎng)監(jiān)控等功能,可實(shí)時(shí)監(jiān)控產(chǎn)線生產(chǎn)情況,也具備固件安全控制、無縫對(duì)接升級(jí)等功能,能夠提升產(chǎn)線安全性與效率。

        3 ? ?燒錄裝置設(shè)計(jì)

        設(shè)計(jì)一種燒錄裝置,安裝多路芯片底座,芯片座可以根據(jù)不同型號(hào)芯片封裝更換,芯片座與ST-Link通過SWD總線(VDD、GND、SWDIO、SWCLK)連接在一起。然后,所有ST-Link接到USB總線上,可以通過USB總線連接到電腦上位機(jī)。

        燒錄裝置中有燒錄控制器,可以控制燒錄裝置中芯片座的電源,監(jiān)控ST-Link的連接情況,控制每個(gè)芯片座的狀態(tài)指示燈;同時(shí)接收燒錄裝置上的按鍵事件,控制芯片燒錄操作和流程。

        燒錄裝置系統(tǒng)示意圖如圖1所示。

        考慮到供電和信號(hào)總線驅(qū)動(dòng)能力的實(shí)際情況,示例的燒錄裝置只安裝了4個(gè)芯片座。在具體實(shí)施過程中,可以根據(jù)不同需求配置更多路的芯片座和ST-Link工具。

        燒錄裝置通過USB接口連接到電腦上位機(jī),上位機(jī)可以控制各個(gè)ST-Link,也可以與燒錄裝置控制器進(jìn)行通信,控制燒錄裝置的電源、指示燈以及處理按鍵事件。指示燈表示燒錄狀態(tài):紅燈表示錯(cuò)誤,藍(lán)燈表示燒錄中,綠燈表示燒錄完成;按鍵分別為開始、停止、復(fù)位等操作。

        4 ? ?燒錄軟件設(shè)計(jì)

        這里選擇pystlink工具包開發(fā)改造我們的燒錄裝置上位機(jī)軟件。pystlink提供了一個(gè)可以獲取ST-Link唯一序列號(hào)的接口[5]:

        def _get_serial(self):

        try:

        serial = usb.util.get_string(self._dev, 255, self._dev.iSerialNumber)

        except (usb.core.USBError, ValueError):

        serial = usb.util.get_string(self._dev, self._dev.iSerialNumber)

        if serial != None:

        if re.search("[0-9a-fA-f]+", serial).span()[1] != 24:

        serial = ''.join(["%.2x" % ord(c) for c in list(serial)])

        return serial

        可以通過此API進(jìn)行判斷并區(qū)分,同時(shí)加載多路ST-Link進(jìn)行芯片的刷寫燒錄。如圖2所示的UI設(shè)計(jì),軟件可以支持同時(shí)加載4個(gè)不同的固件,分別對(duì)應(yīng)不同的4路ST-Link燒錄芯片座。

        各個(gè)通路下的ST-Link可以進(jìn)行獨(dú)立的操作,也可以同時(shí)進(jìn)行統(tǒng)一的操作,可以根據(jù)生產(chǎn)的需求進(jìn)行配置。同時(shí)操作4路芯片的刷寫燒錄,可以滿足生產(chǎn)產(chǎn)線多元化的需求,也能解決生產(chǎn)效率的瓶頸問題。

        5 ? ?結(jié)語

        STM32系列單片機(jī)廣泛應(yīng)用于嵌入式設(shè)備領(lǐng)域,其產(chǎn)線生產(chǎn)也呈現(xiàn)多元化的趨勢(shì)。本文介紹了一種基于ST-Link工具解決產(chǎn)線生產(chǎn)多樣化與效率問題的方案。本方案設(shè)計(jì)一個(gè)可以同時(shí)接入多個(gè)ST-Link的燒錄裝置,通過識(shí)別不同ST-Link的唯一碼,支持多路芯片的刷寫,實(shí)現(xiàn)多通路多固件差異化的刷寫燒錄。本方案在工廠產(chǎn)線上使用后,減少了操作步驟,降低了操作失誤率;多路差異化的設(shè)計(jì),可以適用于多種不同的產(chǎn)品線,也能解決生產(chǎn)效率的瓶頸問題。

        [參考文獻(xiàn)]

        [1] 林玩杰,李水峰,毛立夫,等.基于STM32智能家居控制系統(tǒng)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2019,27(24):176-180.

        [2] 夏勝利,殷鳴.基于STM32單片機(jī)的智能公交設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2019,9(8):53-54.

        [3] 褚夢(mèng)秋,佀國(guó)寧,李根生,等.下肢康復(fù)機(jī)器人控制系統(tǒng)研究進(jìn)展[J].北京生物醫(yī)學(xué)工程,2018,37(6):643-649.

        [4] 李坊玉.STM32 ST-LINK Utility應(yīng)用功能及使用方法(一)[N].電子報(bào),2019-09-01(007).

        [5] PYSTLINK[EB/OL].[2020-02-13].ttps://github.com/pavelrevak/pystlink.

        收稿日期:2020-02-17

        作者簡(jiǎn)介:陳景郁(1982—),男,廣東韶關(guān)人,嵌入式開發(fā)工程師,主要從事嵌入式設(shè)備、移動(dòng)設(shè)備驅(qū)動(dòng)開發(fā)工作。

        猜你喜歡
        STM32單片機(jī)
        基于STM32單片機(jī)的脈沖信號(hào)參數(shù)高精度測(cè)試儀
        科技資訊(2017年3期)2017-03-25 01:42:48
        基于STM32芯片的移動(dòng)機(jī)器人的避障研究
        基于單片機(jī)的灌裝生產(chǎn)線成品率計(jì)算裝置設(shè)計(jì)
        基于STM32的兩輪自平衡遙控小車設(shè)計(jì)
        科技視界(2016年26期)2016-12-17 08:35:54
        基于STM32單片機(jī)的智能手環(huán)設(shè)計(jì)與實(shí)現(xiàn)
        基于STM32單片機(jī)的數(shù)碼相框顯示系統(tǒng)設(shè)計(jì)
        基于STM32的多旋翼無人機(jī)超聲波測(cè)距系統(tǒng)
        試論STM32單片機(jī)在室內(nèi)環(huán)境監(jiān)測(cè)系統(tǒng)中的運(yùn)用
        STM32單片機(jī)原理及硬件電路設(shè)計(jì)研究
        STM32單片機(jī)的高精度超聲波測(cè)距系統(tǒng)的設(shè)計(jì)
        亚洲欧美精品aaaaaa片| 伊人激情av一区二区三区| 国产乱人激情h在线观看| 一本一道av中文字幕无码| 无码午夜人妻一区二区三区不卡视频| 国产精品无需播放器| 成人午夜性a级毛片免费| www国产亚洲精品久久网站| 久久精品国产亚洲av麻| 成人动漫久久| 国产激情久久久久久熟女老人| 国产人妖一区二区av| 在线看亚洲一区二区三区| 一区二区视频中文字幕| 夫妻免费无码v看片| 亚洲精品无码久久久久av老牛| 无码人妻一区二区三区在线视频| 国产亚洲AV无码一区二区二三区| 一区二区三无码| 日韩黄色大片免费网站| 人妻少妇精品视频一区二区三区l| 波多野结衣中文字幕一区二区三区| 人妻夜夜爽天天爽三区| 在线播放人成午夜免费视频| 美女黄网站永久免费观看网站| 福利视频偷拍一区二区| 一区二区三区中文字幕p站| 狠狠人妻久久久久久综合蜜桃| 国产熟妇人妻精品一区二区动漫| 国产午夜视频在永久在线观看| 日韩精品永久免费播放平台| 青青草视频在线免费观看91| 亚洲av老熟女一区二区三区| 日本在线 | 中文| 青青草原综合久久大伊人| 98在线视频噜噜噜国产| 亚洲视频在线播放免费视频| 精品高清一区二区三区人妖| 高清精品一区二区三区| 超碰97人人做人人爱少妇| av无码特黄一级|