mcs51單片機(jī)開發(fā)工具diy

mcs51單片機(jī)開發(fā)工具diy

ID:25631922

大?。?49.00 KB

頁數(shù):12頁

時(shí)間:2018-11-21

mcs51單片機(jī)開發(fā)工具diy_第1頁
mcs51單片機(jī)開發(fā)工具diy_第2頁
mcs51單片機(jī)開發(fā)工具diy_第3頁
mcs51單片機(jī)開發(fā)工具diy_第4頁
mcs51單片機(jī)開發(fā)工具diy_第5頁
資源描述:

《mcs51單片機(jī)開發(fā)工具diy》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、MCS51單片機(jī)開發(fā)工具DIY劉楚浩摘要:本文詳細(xì)介紹了利用AT89S8252單片機(jī)的在系統(tǒng)編程功能,用VisualBasic6.0(以下簡稱VB)在Windows環(huán)境下開發(fā)制作一款MCS51單片開發(fā)工具的方法。內(nèi)容涉及VB編程、PC機(jī)并口控制及單片機(jī)在系統(tǒng)編程等內(nèi)容。關(guān)鍵詞:VB編程AT89S8252在系統(tǒng)編程DIY目前介紹單片機(jī)應(yīng)用的文章很多,但介紹單片機(jī)開發(fā)工具制作的文章卻較少。由于單片機(jī)是一門實(shí)踐性很強(qiáng)的課程,所以單片機(jī)愛好者(尤其是初學(xué)者)往往更希望看到單片機(jī)開發(fā)工具制作方面的文章。本文正是因此而作,旨在幫那些DIY愛好者開發(fā)

2、制作出適合自己的開發(fā)工具。一、當(dāng)前常用開發(fā)模式介紹目前基本上有兩種開發(fā)模式:1,用仿真器優(yōu)點(diǎn):方便,可以設(shè)置斷點(diǎn),可以觀察存貯器及寄存器的內(nèi)容缺點(diǎn):價(jià)格昂貴,且仿真器終究不是單片機(jī),有時(shí)代碼在仿真器上能通過,但在單片機(jī)中不能正常工作,反而增加了調(diào)試的難度。2,用編程器優(yōu)點(diǎn):價(jià)格相對便宜,通常一款編程器可編多種器件。缺點(diǎn):操作相當(dāng)不便,每次要將芯片在目標(biāo)板與編程器之間轉(zhuǎn)移,并且還要在編譯操作界面與編程器操作界面之間切換,大部份時(shí)間在做簡單的重復(fù)的工作。二、一種新的開發(fā)模式介紹及芯片選擇本文介紹的開發(fā)工具采用一種新的開發(fā)模式(類似于編程器開

3、發(fā)模式)。由于利用了芯片的在系統(tǒng)編程功能,因此不需要移動(dòng)芯片,在軟件設(shè)計(jì)時(shí)設(shè)計(jì)成一旦代碼文件被重新編過即自動(dòng)下載到芯片并自動(dòng)復(fù)位運(yùn)行,真正的“所編即所得”。目前很多單片機(jī)都支持在系統(tǒng)編程,MCS51系列單片機(jī)支持在系統(tǒng)編程的也很多,但大多數(shù)是支持通過PC機(jī)的串口對單片機(jī)進(jìn)行編程。這樣有三個(gè)不方便的地方:一是如果項(xiàng)目本身要與PC機(jī)串行通訊就不方便;二是要增加一片MAX232電平轉(zhuǎn)換芯片;三是有的芯片要按特定的步驟進(jìn)入下載模式,編程過程需要手工干預(yù)。經(jīng)過比較,Atmel公司生產(chǎn)的AT89S8252是一種比較理想的芯片,適合我們用來制作開發(fā)工

4、具。此芯片有如下特點(diǎn):l與MCS51兼容l內(nèi)含8K可擦寫1000次的程序存貯器,2K可擦寫超過100000次的數(shù)據(jù)存貯器及256字節(jié)8位寬內(nèi)部RAMl可通過SPI接口在系統(tǒng)串行編程,與MCS51兼容l串行編程時(shí)有自動(dòng)擦寫周期,在調(diào)試大程序時(shí)可以分段下載,節(jié)約時(shí)間l低電壓下載,無需12V編程電壓三、AT89S8252串行編程介紹1、AT89S8252串行編程模式介紹當(dāng)芯片的RST引腳置高電平時(shí),所有程序和數(shù)據(jù)存貯器可以通過SPI總線接口[SCK,MOSI(input),MISO(output)]編程。RST變高以后,在編程或擦除操作之前必

5、須首先發(fā)送一條編程允許命令。在串行編程模式下,芯片會(huì)在字節(jié)編程之前自動(dòng)插入一個(gè)擦除周期。因此,除非芯片的代碼保護(hù)位被編程,編程之前不需要執(zhí)行全片擦除命令。SPI接口之SCK時(shí)鐘頻率須低于晶振頻率的1/40。2、AT89S8252串行編程步驟a)在XTAL1與XTAL2之間連接一個(gè)3-24MHz的晶振,在VCC與GND之前加上電源電壓,將RST置高,等待10ms。b)發(fā)送串行編程允許命令c)發(fā)送寫/讀/擦除等命令及數(shù)據(jù),串行數(shù)據(jù)高位在前,低位在后,數(shù)據(jù)在時(shí)鐘的上升沿鎖定d)如果上一步是寫命令等待至少2.5mse)需要時(shí)重復(fù)C,D兩步f)將

6、RST置低,芯片開始運(yùn)行3、AT89S8252串行編程命令介紹命令輸入格式功能說明Byte1Byte2Byte3編程允許1010110001010011xxxxxxxx在RST變高后允許串行編程全片擦除10101100xxxxx100xxxxxxxx程序和數(shù)據(jù)存貯器全部擦除讀程序存貯器aaaaa001地址低8位xxxxxxxx讀程序存貯器,a為高5位地址寫程序存貯器aaaaa010地址低8位8位數(shù)據(jù)寫程序存貯器,a為高5位地址讀數(shù)據(jù)存貯器00aaa101地址低8位xxxxxxxx讀數(shù)據(jù)存貯器,a為高3位地址寫數(shù)據(jù)存貯器00aaa110地

7、址低8位8位數(shù)據(jù)寫數(shù)據(jù)存貯器,a為高3位地址寫鎖定位10101100123xx111xxxxxxxx寫鎖定位,123分別為LB1,2,3,將相應(yīng)位置0則鎖定該位串行時(shí)鐘輸入SCK/P1.7SS串行數(shù)據(jù)輸入MOSI/P1.5SS串行數(shù)據(jù)輸出MISO/P1.6SSMSBMSBLSBLSB4、AT89S8252串行編程時(shí)序圖四、硬件設(shè)計(jì):a)通過計(jì)算機(jī)并口與單片機(jī)SPI口連接b)為了保護(hù)計(jì)算機(jī)并口,增加一片74HC244作為隔離實(shí)用的原理圖如下<已經(jīng)過實(shí)踐檢驗(yàn),放心使用>:(原理圖文件為mcu51diy.sch)五、用VB編程進(jìn)行并口控制介紹

8、打印端口的基地址一般為0x278,0x378或0x3BC,這可以從控制面板中查到。為了方便讀者,下面以表格形式列出常用打印端口腳位及寄存器位元說明。硬件腳位地址及位元說明本例中作用2基地址第0位數(shù)據(jù)位0未用

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時(shí)聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。