找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

帖子
查看: 2198|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

STC單片機(jī)不斷電下載頭文件及使用方法

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:137736 發(fā)表于 2021-12-18 21:00 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
網(wǎng)上下了幾個(gè)STC不斷電下載程序,驗(yàn)證通不過(guò),于是反復(fù)調(diào)試,在普中開(kāi)發(fā)板上驗(yàn)證通過(guò)。做成了頭文件,方便使用。

普中開(kāi)發(fā)板用普中自動(dòng)下載軟件,會(huì)自動(dòng)斷電然后上電,下載也很方便。為了學(xué)習(xí)STC不斷電下載,從網(wǎng)上下了很多程序,在普中開(kāi)發(fā)板上STC_ISP驗(yàn)證通不過(guò),于是將網(wǎng)上的程序進(jìn)行組合,形成了一的頭文件,編譯后代碼大小90B原理:stcisp電腦端啟動(dòng)時(shí),連續(xù)發(fā)送0x7f.串口檢查下載命令到10次,單片機(jī)通過(guò)軟件復(fù)位到引導(dǎo)區(qū)。使用普中開(kāi)發(fā)板,STC90C516RD    11.059M晶體,程序加入包含頭文件,主程序調(diào)用串口初始化函數(shù)。主程序中串口功能仍然可用。第一次使用要用普中自動(dòng)下載軟件下載,或STC_ISP_V483斷電下載。以后用STC_ISP_V483最高最低都用4800波特率,可不斷電下載
網(wǎng)上程序不可用的原因:可能ISP_contro=0Xe0;數(shù)值不是這個(gè)。        或者波特率不是4800,STC_ISP版本不對(duì),歡迎大家實(shí)驗(yàn)。

單片機(jī)源程序如下:
  1. #ifndef _STCISP_
  2. #define __STCISP_H__
  3. sfr ISP_contro = 0xE7;
  4. unsigned char receiveData,n;
  5. void UsartConfiguration()
  6. {
  7.         TMOD&=0x0F;            //把TMOD高4位清0
  8.     TMOD|=0x20;            //將TMOD的M1位置1,設(shè)置成自動(dòng)裝入的8位定時(shí)器
  9.     PCON=0X80;                        //波特率加倍
  10.         TH1=0XF3;                    //計(jì)數(shù)器初始值設(shè)置,注意波特率是4800的
  11.         TL1=0XF3;
  12.         TR1=1;                                            //打開(kāi)計(jì)數(shù)器
  13.     SCON=0x50;             //10位異步收發(fā),波特率由定時(shí)器控制,允許串口接收
  14.     ES=1;                  //允許串口中斷
  15.     //**************************

  16.     //***開(kāi)全局中斷設(shè)置****
  17.     //串口接口UART設(shè)置了中斷允許,此處要開(kāi)全局中斷
  18.     EA=1;                  //開(kāi)全局中斷
  19. }
  20. void UART_SER (void) interrupt 4

  21. {
  22.            
  23.               if(RI == 1)                                //查看是否接收到數(shù)據(jù)
  24.                 {
  25.                         receiveData = SBUF;        //讀取數(shù)據(jù)
  26.                         RI = 0;                                //清除標(biāo)志位
  27.                         if(receiveData == 0x7f)
  28.                         {
  29.                         if(n++>=10)
  30.                             {
  31.                ISP_contro=0Xe0;
  32.                             //NOP(5);
  33.                            }
  34.                         }
  35.                         
  36.                 }
  37. }
  38. #endif
復(fù)制代碼


  1. * 實(shí) 驗(yàn) 名                 : STC不斷電下載
  2. * 實(shí)驗(yàn)說(shuō)明       : STC不斷電下載,串口檢查下載命令10次,單片機(jī)通過(guò)軟件復(fù)位到引導(dǎo)區(qū)。
  3. * 連接方式       :
  4. * 注    意                 : STC90C516RD        11.059M晶體,STC_ISP_V483下載最高最低都用4800波特率
  5.                         使用時(shí)包含頭文件,主程序調(diào)用串口初始化函數(shù)。
  6. *******************************************************************************/

  7. #include<reg51.h>
  8. #include"stc-isp.h"

  9. /*******************************************************************************
  10. * 函 數(shù) 名         : main
  11. * 函數(shù)功能                   : 主函數(shù)
  12. * 輸    入         : 無(wú)
  13. * 輸    出         : 無(wú)
  14. *******************************************************************************/

  15. void main()
  16. {
  17.         UsartConfiguration();
  18.         while(1)
  19.         {
  20.          //你的代碼
  21.         }
  22. }
復(fù)制代碼



上圖Keil代碼工程下載: OK-STC不斷電下載頭文件.7z (8.45 KB, 下載次數(shù): 9)

評(píng)分

參與人數(shù) 1黑幣 +80 收起 理由
admin + 80 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:138205 發(fā)表于 2021-12-23 19:47 | 只看該作者
說(shuō)實(shí)話,沒(méi)看明白
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表