?

一種基于USB帶自動冷啟動功能的STC-ISP下載器設計

2016-11-22 01:58粟慧龍韓雪
電子設計工程 2016年15期
關鍵詞:冷啟動子程序聯絡

粟慧龍,韓雪

(1.湖南鐵道職業技術學院 湖南 株洲 412001;2.湖南鐵路科技職業技術學院 湖南 株洲 412001)

一種基于USB帶自動冷啟動功能的STC-ISP下載器設計

粟慧龍1,韓雪2

(1.湖南鐵道職業技術學院 湖南 株洲 412001;2.湖南鐵路科技職業技術學院 湖南 株洲 412001)

設計了一種基于USB帶自冷啟動功能的STC單片機下載器,文中對下載器的電路原理、軟件編程以及關鍵控制信號進行了詳細闡述和分析。下載器以STC15F104E作為主控單元,通過解析計算機USB端口與CH340T芯片通訊的MODEM聯絡信號,適時對目標單片機的電源進行控制,對其進行冷啟動引,以實現單片機目標代碼的自動下載,從而有效地解決目前筆記本和臺式電腦沒有RS232串口,無法進行STC單片機程序下載的問題。

USB;自動冷啟;單片機;STC下載器;程序下載

近年來,STC單片機以保密性好、功能強、價格低、在線可編程等優點,在眾多智能電子產品中作為核心控制器件廣泛使用。STC單片機在出廠時已經為用戶寫入程序做了充分的準備,在單片機內部設計了ISP在線下載模塊,通過廠家提供的STC-ISP下載軟件,連接上RS232通訊電路,程序燒錄前進行單片機的冷啟動即實現程序下載。

目前一般的計算機,特別是筆記本電腦,大多沒有配置RS232串口,而只配置了USB串口,為此,市面上針對STC單片機的USB轉RS232串口下載器應運而生,通過對現有USB轉RS232串口下載器的研究分析發現有以下特點:1)采用分立元件實現下載器的自動冷啟動控制,電路比較復雜;2)有些型號的下載器不能實現程序的連續下載,需要進行USB的熱拔插才能繼續工作;3)不帶自動冷啟動功能,需要手動操作實現STC單片機冷啟動才能完成程序的下載。針對現有STC單片機下載器的上述不足,文中設計了一種基于USB帶自動冷啟動功能的STC-ISP下載器。

1 STC單片機程序下載過程

STC單片機內部設計了在線編程模塊,即ISP模塊。經過對數據流的驗證直接寫入用戶程序區,完成用戶程序下載動作。

在線下載用戶程序的過程如圖1所示,先由PC機端發起ISP下載命令流,單片機冷啟動,啟動后先運行在出廠時已經寫入ISP監控程序區的ISP監控程序[1-2]。當ISP監控程序檢測到RXD引腳上存在ISP命令流時應答一組握手信號[3-4]。握手成功之后,PC機下載程序將單片機用戶程序發送給單片機,單片機的ISP模塊將接收到的用戶程序寫入用戶程序區[5]。

當接收到PC機發來的數據傳送完成標志后,單片機執行軟復位指令,將程序指針指向用戶程序區的起始地址,進而執行用戶程序,從而完成用戶程序下載的全過程[6]。

圖1 STC單片機ISP過程

2 下載器硬件設計

2.1 下載器電路組成

下載器硬件主要由USB接口、USB-RS232串口轉換電路、程序下載冷啟動控制電路和下載接口組成。下載器電路原理如圖2所示,U1、C1~C4、Y1構成USB-RS232串口轉換電路,其中,C1、C2為電源濾波電容,Y1、C3、C4構成時鐘振蕩電路,給CH340T提供時鐘脈沖;C5、U2、R1、Q1構成程序下載冷啟動控制電路,STC15F104E的INT0腳與CH340T的RST引腳相連,用于檢測CH340T的MODEM聯絡信號,INT0腳通電阻R1與Q1相連,通過控制Q1的通斷實現對下載芯片的電源控制。

2.2 STC單片機冷啟動控制原理

下載器通過USB接口,接收到上位機軟件STC-ISP的ISP指令流后,USB-RS232轉換芯片CH340T的RST引腳會輸出一串由低電平引導的MODEM聯絡信號[2],STC15F104E的INT0腳檢測到MODEM信號后,INT1腳輸出2秒的高電平,關斷Q1,使程序下載的單片機斷電2 s。然后INT1腳保持低電平輸出,Q1飽和導通,目標單片機得電,冷啟動過程完成,MODEM聯絡信號及STC15F104E冷啟動控制信號波形如圖3所示。

圖2 下載器電路原理圖

圖3 MODEM聯絡信號與冷啟動信號波形圖

3 下載器軟件設計

下載器軟件設計的關鍵是對CH340T的MODEM聯絡信號進行檢測,并根據MODEM聯絡信號控制STC單片機的冷啟動,從而確保單片機程序下載過程的順利完成。下載器軟件模塊主要由MCU初始化子程序、MODEM聯絡信號起始邊延檢測中斷子程序、MODEM電平脈寬測量中斷子程序、冷啟動定時中斷子程序和主程序構成。

3.1 MODEM聯絡信號檢測與冷啟動處理

當用戶使用STC-ISP軟件發出程序下載命令,CH340T接收到ISP命令流后,CH340T的RST引腳會產生約5.3 s的MODEM聯絡信號,MODEM聯絡信號由3 s的低電平和若干個20 ms左右的方波脈沖信息號構成。

根據MODEM聯絡信號特點,結合STC15F104E的外部中斷和定時器功能,采用了邊沿檢測和脈寬濾波的方法對MODEM聯絡信號進行檢測,為確保MODEM聯絡信號的起始下降沿檢測的準確性,首先對CH340T的RST引腳高電平脈寬進行測量,即在RST引腳產生下降沿之前,高電平脈寬必須大于50 ms,此時的邊沿即為MODEM聯絡信號的起始下降沿,然后進行2 s的定時,同時關斷目標單片機的電源,定時結束后再次將其電源開啟,完成ISP過程中目標單片機的冷啟動。通過對CH340T的RST引腳高電平脈寬的檢測,能有效濾除MODEM聯絡信號周期內高電平脈沖對起始邊沿檢測的干擾,確保單次程序下載命令周期內只對單片機進行一次冷啟動操作。

3.2 MODEM信號檢測與冷啟動軟件實現

MODEM信號檢測與冷啟動軟件由MODEM聯絡信號起始邊延檢測中斷子程序、MODEM電平脈寬測量中斷子程序、冷啟動定時中斷子程序3部分組成,3個中斷子程序協同工作實現STC單片機自動冷啟和程序下載功能。

1)RST電平脈寬檢測

如圖3所示,MODEM聯絡信號包含多個方波窄脈沖,為了準確檢測起始邊延信號,在程序設計時開啟了單片機TIMER0的定時功能,對外部輸入RST引腳高平進行脈寬測量。根據MODEM聯絡信號的方波脈沖特點,脈寬測量以50 ms作為閥值,即只有高電平脈寬大于50 ms時所引導的下降才為MODEM聯絡信號的起始下降沿,同時觸發TIMER0定時中斷,并開啟冷啟標志位Rst_Flg,軟件代碼如下所示:

2)MODEM聯絡信號起始邊延檢測

MODEM聯絡信號邊延檢測采用單片機外部中斷INT0的邊沿觸發方式,當下降沿引導脈寬大于50 ms即冷啟動復位標志Rst_Flg為‘1’時,INT1引腳輸出高電平‘1’,關斷目標單片機的電源,進行冷啟動斷電操作。同時啟動定時器1,進行2 s的定時,讓目標單片機的電源關斷2 s,然后上電,完成冷啟過程。軟件代碼如下所示:

3)冷啟動時間控制

在兼顧下載效率和穩定性的同時,確保下載器穩定可靠的工作,通過反復測試,冷啟動斷電的時間在2 s最為合適。冷啟動時間采用單片機定時器timer1進行控制,每次定時50 ms,循環累計定時40次,定時結束,同時INT1引腳輸出低電平‘0’,開啟目標單片機的電源,冷啟動結束,程序進入自動下載模式,直至程序燒錄完成,軟件代碼如下所示:

4 結束語

本文設計的STC單片機下載器電路簡單、下載速度快、工作穩定可靠,能有效地解決目前筆記本和臺式電腦沒有配制RS232串口,無法進行程序下載的問題。此外,下載器具備自動冷啟功能,可實現目標代碼的自動燒錄和批量下載功能,具有一定的實用和推廣價值。

[1]王桂喜,胡平平.STC單片機集成下載器的設計與實現[J].北京信息科技大學學報:自然科學版,2011(5):75-79.

[2]黃同,邵思飛.一種基于CH340T的STC89C52RC編程器設計[J].電子測試,2013(12):16-17.

[3]郭陳一,高魯楠,龐宇擎.基于USB接口的單片機燒寫器設計與實現[J].電子制作,2015(4):1.

[4]邢凱,吳禮燕.基于STM32的STC單片機脫機下載器的設計與實現 [J].廣西民族大學學報:自然科學版,2013(4): 64-67.

[5]徐岳清.STM32系列單片機脫機批量燒錄器的設計與實現[J].長春工程學院學報:自然科學版,2015(1):115-119.

[6]孫璐,姜久春,尹航.基于MC9S12系列單片機的程序下載器設計[J].微計算機信息,2010(11):64-66.

[7]林凌,李蒙,李剛.一種基于ISP技術的單片機多功能教學平臺[J].實驗技術與管理,2009(3):64-67.

[8]翁哲.STC單片機程序下載器設計[J].西安文理學院學報:自然科學版,2010(3):45-47.

[9]黃根嶺,陳志紅,呂春峰,等.基于STC單片機的ISP下載線設計[J].電子世界,2010(9):29.

[10]盧軼楠,王學偉.STC15F104E的STC單片機自動下載系統設計[J].單片機與嵌入式系統應用,2011(11):76-77.

[11]付文悅,黃民.STC系列單片機不斷電下載程序應用技術[J].電子科技,2013(2):76-78.

[12]童一帆.STC單片機程序下載器設計[J].石家莊職業技術學院學報,2009(2):45-47.

[13]黃克亞.淺談自制51單片機編程器方法和策略[J].黑龍江科技信息,2009(25):11.

[14]唐德禮,王襄.單片機學習機及編程器的設計與制作[J].現代電子技術,2005(12):117-120.

[15]李祖明,唐輝.AT89S系列單片機ISP下載線設計[J].電子與封裝,2011(8):22-24.

Based on USB with automatic cold start function of STC-ISP downloader design

SU Hui-long1,HAN Xue2
(1.Hunan Railway Professional Technology College,Zhuzhou 412001,China;2.Hunan Vocational College of Railway Technology,Zhuzhou 412001,China)

This paper presents a USB-based cold start function with self-STC microcontroller Downloader,the text of the circuit principle downloader,software programming and critical control signals are described and analyzed in detail.Downloader to STC15F104E as the main control unit,by analyzing the computer’s USB port to communicate with chip CH340T MODEM communication signals,timely and on target device power control,its cold start lead to SCM object code automatically downloaded,thereby effectively to resolve the current notebook and desktop computers no RS232 serial port,can not be STC microcontroller program download problem.

USB;automatic cold start;SCM;STC downloader;download

TN710

A

1674-6236(2016)15-0168-03

2015-12-04 稿件編號:201512043

湖南省科技計劃項目(2013GK3133);湖南省教育廳科學研究項目(15C0914);湖南鐵路科技職業技術學院校級課題(HTKY-KT2015-20)

粟慧龍(1982—),男,湖南常德人,碩士,講師,工程師。研究方向:嵌入式技術。

猜你喜歡
冷啟動子程序聯絡
輕型汽油車實際行駛排放試驗中冷啟動排放的評估
Evaluation of Arctic Sea Ice Drift and its Relationship with Near-surface Wind and Ocean Current in Nine CMIP6 Models from China
基于學習興趣的冷啟動推薦模型
讓人大代表聯絡站不止于“聯絡”
近Hermite流形上聯絡的關系
淺談子程序在數控車編程中的應用
子程序在數控車加工槽中的應用探索
西門子840D系統JOG模式下PLC調用并執行NC程序
軍事技能“冷啟動”式訓練理念初探
簡化編程與子程序嵌套的應用
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合