日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
C8051FXXX單片機(jī)FLASH程序的自動升級
C8051FXXX單片機(jī)FLASH程序的自動升級
 更新時間:2008-8-4 4:02:22  點擊數(shù):15
【字體: 字體顏色

   MOV PSCTL,#01H
   MOV DPTR,#0FDFEH
   CLR A
   MOVX @DPTR,A
   MOV DPTR,#0FDFFH
   MOVX @DPTR,A
   MOV PSCTL,#00H
   MOV FLSCL,#00H 
   CYCLE_FOREVER:SJMP CYCLE_FOREVER;死循環(huán)
   RET


4)FLASH程序的準(zhǔn)備

      為了更快地得到—下載到C8051F020的FLASH程序,先在CYGNAL IDE開發(fā)環(huán)境中,將做好的控制程序編澤,鏈按,然后用廠家提供的串行適配器將PC與目標(biāo)板連接起來,傳送FLASH程序到目標(biāo)系統(tǒng)中去。接下來用“UPLOAD MEMORY T0 PILE…”(如圖示)功能將0000H~OEOOOH的FLASH代碼程序上載到硬盤存儲器中,再將此ASCII文件轉(zhuǎn)化為16進(jìn)制的HE文件,注意將其十的0DH,0AH等回車換行字節(jié)取消,最后生成的HEX文件即可被直接下載到FLASH的0000H~0DFFFH的相應(yīng)地址中。此HEX文件即可發(fā)送至用戶處,用于升級用戶的單片機(jī)FLASH程序。

5)C程序的準(zhǔn)備
//發(fā)送FLASH程序文件到單片機(jī)中去
BOOL SendFileToFlash()
{
 unsigned  char ch;
 FILE *fp;
 long int flen,wi=0;
 int i,j;

 if ((fp = fopen("flashwl","rb"))==NULL)
 {
  return FALSE;
 }
 //初使化串口,且與單片機(jī)系統(tǒng)握手
 InitialCommuClass();

 //發(fā)送數(shù)據(jù)
 for (wi=0,j=0;wi<flen;wi++)
 {
  if (feof(fp)!=0)//到達(dá)文件結(jié)束
   break;

  fread(&ch,sizeof(unsigned char),1,fp);
        for (;;)
   if (SendAByte(ch)==TRUE)
    break;
     
  Printf("%ld bytes is transmitted!\n",wi); }
 fclose(fp);
 for (;;)
 {
  Printf("All bytes is transmitted!\n");
 }

}

//轉(zhuǎn)換上載文件為可下載的HEX目標(biāo)文件
BOOL ConvertFileToFlash()
{
 unsigned  char ch,ru;
 FILE *fp,*fpw;
 long int flen,wi=0;
 int i,j;

 if ((fp = fopen("SOURCEC","rb"))==NULL)
 {
  return FALSE;
 }
 if ((fpw = fopen("HEXOBJECT","wb"))==NULL)
 {
  return FALSE;
 }

 for (wi=0,j=0;;wi++)
 {
  if (feof(fp)!=0)
   break;
  ru=0;
  fread(&ch,sizeof(unsigned char),1,fp);
  if ((ch>=0x30) && (ch<=0x39))
   ru+=(ch-0x30)*16;
  else if ((ch>=0x61) && (ch<=0x66))
   ru+=((ch-0x61)+0x0a)*16;
        fread(&ch,sizeof(unsigned char),1,fp);
  if ((ch>=0x30) && (ch<=0x39))
   ru+=ch-0x30;
  else if ((ch>=0x61) && (ch<=0x66))
   ru+=(ch-0x61)+0x0a;
  fwrite(&ru,sizeof(unsigned char),1,fpw);
  fread(&ch,sizeof(unsigned char),1,fp);/*0x0d*/
  fread(&ch,sizeof(unsigned char),1,fp);/*0x0d*/
  fread(&ch,sizeof(unsigned char),1,fp);/*0x0a*/
  j++;
  if (j==255)
  {
   j=0;
   fread(&ch,sizeof(unsigned char),1,fp);
            fread(&ch,sizeof(unsigned char),1,fp);
   fread(&ch,sizeof(unsigned char),1,fp);
   fread(&ch,sizeof(unsigned char),1,fp);
            fread(&ch,sizeof(unsigned char),1,fp);
   continue; 
  }
 }
 fclose(fp);fclose(fpw);
}
結(jié)束語

    以上所介紹的FLASH自動升級程序的PC部分在VC6.0及TC2.0中開發(fā),并與805lFXXX系列的單片機(jī)聯(lián)機(jī)成功,并最后用于在用戶處的單片機(jī)FLASH程序升級

  • 上一篇: 面向ASIC和FPGA設(shè)計的多點綜合技術(shù)
  • 下一篇: 采用MSP430設(shè)計的12位心電(ECG)放大器
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1