<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 第8節(jié):把.hex機(jī)器碼下載到單片機(jī)的操作流程

          第8節(jié):把.hex機(jī)器碼下載到單片機(jī)的操作流程

          作者: 時(shí)間:2016-11-22 來源:網(wǎng)絡(luò) 收藏
          從業(yè)近十年,教你單片機(jī)入門 第8講:

          燒錄程序也叫下載程序。下載程序的本質(zhì)是什么?把單片機(jī)當(dāng)做一個(gè)存儲(chǔ)器,每一條程序指令都對(duì)應(yīng)一個(gè)唯一的存儲(chǔ)地址,把這些指令一條條存儲(chǔ)到指定的存儲(chǔ)地址中,這就是下載程序的本質(zhì)。對(duì)于STC89C52RC單片機(jī),在下載程序時(shí)需要上位機(jī)界面軟件和一根USB轉(zhuǎn)串口線。上位機(jī)界面軟件負(fù)責(zé)把指定.hex格式的機(jī)器碼文件打開,.hex格式的機(jī)器碼文件里面記錄著每條程序指令對(duì)應(yīng)的地址信息,在下載過程中,上位機(jī)界面軟件根據(jù).hex記錄的指令內(nèi)容和對(duì)應(yīng)的地址信息,經(jīng)過USB轉(zhuǎn)串口線,跟單片機(jī)的內(nèi)置引導(dǎo)程序進(jìn)行串口通訊,從而把.hex記錄的信息傳輸?shù)絾纹瑱C(jī)內(nèi)部的flash存儲(chǔ)器中,實(shí)現(xiàn)了程序的下載。

          本文引用地址:http://www.ex-cimer.com/article/201611/319818.htm

          在講操作流程之前,請(qǐng)讀者先把以下一個(gè)LED燈閃爍的代碼編譯成.hex格式的文件,這個(gè).hex文件保存在D盤的”stc89c52rc”文件夾里。

          #include "REG52.H"

          void delay_long(unsigned int uiDelayLong); //延時(shí)函數(shù)

          sbit led_dr=P3^5;

          void main()

          {

          while(1)

          {

          led_dr=1; //LED亮

          delay_long(100); //延時(shí)50000個(gè)空指令的時(shí)間

          led_dr=0; //LED亮

          delay_long(100); //延時(shí)50000個(gè)空指令的時(shí)間

          }

          }

          void delay_long(unsigned int uiDelayLong) //延時(shí)函數(shù)

          {

          unsigned int i;

          unsigned int j;

          for(i=0;i

          {

          for(j=0;j<500;j++); //內(nèi)嵌循環(huán)的空指令數(shù)量

          }

          }

          下面詳細(xì)講解把.hex機(jī)器碼下載到單片機(jī)的操作流程。

          第一步:安裝USB轉(zhuǎn)串口驅(qū)動(dòng)程序的操作流程。所謂上位機(jī)界面軟件就是安裝在電腦端的界面軟件,電腦跟單片機(jī)進(jìn)行通訊,需要一根USB轉(zhuǎn)串口線,欲使USB轉(zhuǎn)串口線正常工作,必須預(yù)先安裝一個(gè)USB轉(zhuǎn)串口的驅(qū)動(dòng)程序。具體的操作是這樣的:在網(wǎng)盤中下載”51CTO下載-CH340SER(win7 64位可用).zip”這個(gè)壓縮包文件,解壓后分成“CH341SER”和“INSTALL”這兩個(gè)文件夾,雙擊打開“CH341SER”這個(gè)文件夾,找到“SETUP.EXE”這個(gè)安裝應(yīng)用程序,雙擊啟動(dòng),在彈出的界面中,單擊“安裝”按鈕即可完成驅(qū)動(dòng)程序的安裝。

          第二步:記錄串口號(hào)。我用的電腦是XP系統(tǒng),現(xiàn)在以XP系統(tǒng)為例。插入U(xiǎn)SB轉(zhuǎn)串口線,右擊桌面“我的電腦”,選擇下拉菜單的“設(shè)備管理器”,在彈出的窗口中,點(diǎn)擊“端口”前面的+號(hào),在展開的選項(xiàng)中,會(huì)看到“USB-SERTAL CH340(COM6)”這個(gè)信息,這個(gè)COM6就是要我們記住的串口號(hào)。你們的串口號(hào)不一定是COM6,請(qǐng)以你們電腦顯示的串口號(hào)為準(zhǔn)。

          第三步:打開上位機(jī)界面軟件“STC_ISP”。這個(gè)軟件可以在宏晶單片機(jī)的官網(wǎng)下載獲取此軟件。雙擊打開“STC_ISP.exe”這個(gè)上位機(jī)界面軟件。

          第四步:選擇單片機(jī)型號(hào)。在“單片機(jī)型號(hào)”的下拉菜單中選擇“STC89C/LE52RC”這個(gè)型號(hào)。如果中途彈出推薦選用其它型號(hào)的窗口,可以按確定忽略它,我們只要認(rèn)準(zhǔn)“STC89C/LE52RC”這個(gè)型號(hào)就可以了。

          第五步:設(shè)置串口號(hào)。在“串口號(hào)”的下拉菜單中,選擇跟前面第二步所記錄一樣的串口號(hào)。

          第六步:設(shè)置最高波特率。在“最高波特率”的下拉菜單中,選擇9600波特率。 第六步:設(shè)置最高波特率。在“最高波特率”的下拉菜單中,選擇9600波特率。

          第七步:連接硬件USB轉(zhuǎn)串口線和電源線。USB轉(zhuǎn)串口線一端已經(jīng)連接電腦USB口,另外一端9針串口端跟堅(jiān)鴻51學(xué)習(xí)板的串口端連接。電源線一端用智能手機(jī)充電器的USB端口供電5V,電源線另一端連接堅(jiān)鴻51學(xué)習(xí)板的USB供電端口。

          第八步:導(dǎo)入.hex格式的機(jī)器碼文件。點(diǎn)擊上位機(jī)界面軟件的“打開程序文件”的按鈕,在彈出的對(duì)話框中,選擇D盤下“stc89c52rc”文件夾目錄下的“stc89c52rc.hex”,雙擊把“stc89c52rc.hex”導(dǎo)入到上位機(jī)界面軟件。

          第九步:?jiǎn)?dòng)下載。點(diǎn)擊上位機(jī)界面軟件的“下載/編程”的按鈕,發(fā)現(xiàn)“正在檢測(cè)目標(biāo)單片機(jī)..”的提示信息,此時(shí)需要把51學(xué)習(xí)板重新斷電后再上電,很多人也把這個(gè)重新上電的過程稱為“冷啟動(dòng)”。

          第十步:“冷啟動(dòng)”后觀察是否操作成功的信息。執(zhí)行完前面第九步的“冷啟動(dòng)”后,如果發(fā)現(xiàn)有“...操作成功!”的提示信息,就說明下載成功了。

          第十一步:堅(jiān)鴻51學(xué)習(xí)板下載程序失敗時(shí)的解決辦法。

          (1)可以先松一下卡座,稍微挪動(dòng)一下單片機(jī),然后再卡緊單片機(jī)??ㄗ仨毧ňo單片機(jī), 避免接觸不良。

          (2)改變供電電源,很多電腦的USB口供電電源干擾非常大,嚴(yán)重影響下載程序,請(qǐng)把USB電源線插入到手機(jī)充電器5V的USB接口,效果顯著,明顯提高了下載的成功率。

          (3)檢查確保選擇單片機(jī)型號(hào)是STC89C/LE52RC,如果軟件彈出推薦其它型號(hào)的單片機(jī)窗口,不用管它,我們就選STC89C/LE52RC。

          (4)檢查STC-ISP燒寫軟件是否選擇匹配的COM口。

          (5)單片機(jī)是靠串口燒錄程序進(jìn)去的,單片機(jī)的串口是P3.0,P3.1兩根線,在燒錄程序時(shí),確保P3.0,P3.1這兩根線的黃顏色跳帽必須插上,同時(shí)P3.0,P3.1兩個(gè)IO口不能跳線到外圍器件上。

          (6)點(diǎn)擊“下載/編程”后,記得再斷電并且重新上電一次??纯词欠駸洺晒?。

          (7)最低波特率一直設(shè)置為2400,然后把最高波特率先改成9600試一下,如果還不行再把最高波特率改成2400試試。

          (8)如果還不行,就退出軟件,拔掉USB轉(zhuǎn)串口線,同時(shí)斷電(必須把整根電源線拔掉!),重新插入U(xiǎn)SB串口線,重新插入電源線開電,重新打開軟件。

          (9)如果還不行,學(xué)習(xí)板先斷電(必須把整根電源線拔掉!),然后重啟一次電腦。

          (10)總之:如果還不行,就按上述步驟多折騰幾次。最后實(shí)在不行,就嘗試更換到其它USB口,或者嘗試更換到其它電腦上試試。

          詳細(xì)步驟圖:bbs.21ic.com/forum.php

          下節(jié)預(yù)告:主程序的兩個(gè)區(qū)域:初始化和循環(huán)。



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();