亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? main.c.bak

?? 關(guān)于串口的應(yīng)用實(shí)例
?? BAK
字號:
/*******************************************************/
/*作者:ntzwq@wx88.net     廣州天河雙龍電子公司    */
/*******************************************************
2004-10-20  肖 鵬 修改

修改目的主要是配合我的串口控制器的軟件升級使用

1.原程序需要從BOOT啟動,現(xiàn)修改為從應(yīng)用程序區(qū)啟動
2.為避免軟件下載后單片機(jī)要硬件復(fù)位的不便,在BOOT程序中
  增加了看門狗復(fù)位功能
/******************************************************/
#include "self.h"
#include "assembly.h"
#include<iom8v.h>
extern unsigned char read_flash(unsigned int add);

/*  		字符輸出函數(shù) 		 */
void sendchar(unsigned char c)
   {	 
     while (!(UCSRA&(1<<UDRE)));
     UDR=c;    
   }
/*  		字符輸入函數(shù) 		 */	
unsigned char recchar(void)
   {
     while(!(UCSRA& (1<<RXC)));
     return UDR;
   }		
/*			UART初始化				*/	
void uart_init(void)
  {
    UCSRB=(1<<RXEN)|(1<<TXEN);//允許發(fā)送和接收
    UBBR=51;
    UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位數(shù)據(jù)+1位STOP位
  }

void iap(void)
  {
    unsigned int intval,address,data;
    unsigned char val, ldata;
    for(;;)                           
      {
       val=recchar();
       if(val=='b')                    //啟動看門狗對CPU復(fù)位
          { 
	     WDTCR=(1<<WDCE)|(1<<WDE);
	  }       
       if(val=='a')                    
          { 
	     sendchar('Y');				    //Autoincrement is quicker
          }
       else if(val=='A')                   //write address 
          {
           address=recchar();                //read address 8 MSB
           address=(address<<8)|recchar();
           address=address<<1;               //convert from word address to byte address
           sendchar('\r');
          }
        else if(val=='c')                   //Write program memory, low byte
          {       
           ldata=recchar();
           sendchar('\r');
          }
        else if(val== 'C')                  //Write program memory, high byte 
          {
           data=ldata|(recchar()<<8);
           fill_temp_buffer(data,(address)); //call asm routine. 
           address+=2;  
           sendchar('\r');
          }        
         else if(val=='e')                   //Chip erase 
          {
           for(address=0;address < APP_END;address += PAGESIZE)  //Application section = 60 pages
             {
              write_page(address,0x03);       //Perform page erase
             }
           sendchar('\r');        
          }
         else if(val=='l')                   // write lockbits 
          {
           write_lock_bits(recchar());
           sendchar('\r');
          }       
         else if(val== 'm')                  // write page
          {
           write_page((address),0x05);       
           sendchar('\r');
          }        
         else if((val=='P')||(val=='L'))     // Enter programming mode 
          {
           sendchar('\r');
          }
         else if (val=='p')
          {
           sendchar('S');
          }              
         else if(val=='R')                   //Read program memory 
          {
		   if (address>=APP_END)
		     {
			  sendchar(0xff);
			  sendchar(0xff);
			  address+=2;
		     }
		   else
		     {           
              intval=read_program_memory(address,0x00);
              sendchar((char)(intval>>8));      //send MSB  
              sendchar((char)intval);           //send LSB
              address+=2;
		     }  
          }        
         else if (val == 'D')
          {
           EEARL = address;
           EEARH = (address >> 8);
           address++;
           EEDR = recchar();
           EECR |= (1<<EEMWE);
           EECR |= (1<<EEWE);
           while (EECR & (1<<EEWE))
              ;
           sendchar('\r');
           }
          else if (val == 'd')
           {
            EEARL = address;
            EEARH = (address >> 8);
            address++;
            EECR |= (1<<EERE);
            sendchar(EEDR);
           }       
          else if(val=='F')                   // read fuse bits
           {
            sendchar(read_program_memory(0x0000,0x09));
           }        
          else if(val=='r')                   // read lock bits
           {
            sendchar(read_program_memory(0x0001,0x09));
           }        
          else if(val=='N')                   // read high fuse bits
           {
            sendchar(read_program_memory(0x0003,0x09));
            }        
          else if(val=='t')                   // Return programmer type 
           {
            sendchar(device);
            sendchar(0);
            }
          else if ((val=='x')||(val=='y')||(val=='T'))
            {
             recchar();
             sendchar('\r');
            }       
          else if (val=='S')                  // Return software identifier 
            {
             sendchar('A');
             sendchar('V');
             sendchar('R');
             sendchar('B');
             sendchar('O');
             sendchar('O');
             sendchar('T');
            }			                       
          else if (val=='V')                  // Return Software Version
            {
             sendchar('1');
             sendchar('0');
             }        
          else if (val=='s')                  // Return Signature Byte
            {							
             sendchar(sig_byte3);
             sendchar(sig_byte2);
             sendchar(sig_byte1);
            }       
          else if(val!=0x1b)                  // if not esc
            {
             sendchar('?');
             }
         }	
}
void main(void)
  {
    uart_init();
    
    sendchar('0');   //進(jìn)入BOOT區(qū)后,向串口發(fā)送“0upd”字符串
    sendchar('u');   //通知PC機(jī)CPU已經(jīng)準(zhǔn)備好了軟件升級
    sendchar('p');
    sendchar('d');
    
    iap();
  }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜免费久久看| 91精品国产丝袜白色高跟鞋| 色婷婷久久久久swag精品 | 日韩精品一区二区三区蜜臀| 久久品道一品道久久精品| 一区二区中文字幕在线| 天堂一区二区在线免费观看| 国产一区二区三区综合| 99re视频精品| 欧美一级片在线观看| 国产日韩影视精品| 亚洲电影在线免费观看| 韩国午夜理伦三级不卡影院| 色哟哟亚洲精品| 精品国产一区二区精华| 一区二区三区小说| 国产伦精品一区二区三区视频青涩 | 91在线无精精品入口| 欧美一级搡bbbb搡bbbb| 欧美国产禁国产网站cc| 婷婷丁香激情综合| 99热99精品| 日韩欧美不卡在线观看视频| 一区二区三区四区五区视频在线观看| 理论片日本一区| 91亚洲精品乱码久久久久久蜜桃| 欧美一区二区三区视频在线 | 国产在线日韩欧美| 在线观看av一区二区| 国产亚洲短视频| 爽好久久久欧美精品| 99国产麻豆精品| 久久伊99综合婷婷久久伊| 亚洲不卡一区二区三区| 波多野结衣91| ww久久中文字幕| 天堂va蜜桃一区二区三区| 99久精品国产| 国产目拍亚洲精品99久久精品| 热久久国产精品| 在线观看视频一区二区| 国产调教视频一区| 麻豆精品国产传媒mv男同| 在线观看www91| 国产精品成人在线观看| 国产精品一线二线三线精华| 制服丝袜国产精品| 亚洲免费观看高清| 成人在线一区二区三区| 26uuu久久天堂性欧美| 日韩电影一二三区| 欧美日韩精品欧美日韩精品| 亚洲男人的天堂在线aⅴ视频| 国产精品综合久久| 久久影院视频免费| 精品在线一区二区| 日韩一级片网址| 五月天国产精品| 欧美日韩国产一级二级| 亚洲午夜电影在线观看| 色8久久精品久久久久久蜜| 国产精品久久久久影院亚瑟| 粉嫩高潮美女一区二区三区| 国产欧美日韩视频一区二区| 国产老女人精品毛片久久| 欧美r级在线观看| 久热成人在线视频| 欧美电影免费观看高清完整版 | 精品1区2区在线观看| 免费在线观看成人| 欧美大片国产精品| 91浏览器在线视频| 国产精品视频第一区| 国产不卡在线视频| 欧美国产日韩一二三区| 国产成人免费视频一区| 中文字幕欧美区| av在线不卡免费看| 亚洲免费在线电影| 欧美专区在线观看一区| 亚洲一区在线播放| 欧美群妇大交群的观看方式| 日韩精品一级二级| 欧美一级国产精品| 免费高清在线一区| 亚洲精品在线观| 岛国一区二区三区| 亚洲欧美在线观看| 欧美亚洲综合一区| 午夜欧美在线一二页| 欧美一区二区三区不卡| 极品少妇一区二区| 国产亲近乱来精品视频| 91麻豆高清视频| 亚洲国产成人精品视频| 日韩欧美一二三| 国产成人夜色高潮福利影视| 亚洲欧洲性图库| 欧美亚洲综合色| 极品美女销魂一区二区三区| 日本一区二区三级电影在线观看| gogo大胆日本视频一区| 亚洲午夜激情av| 精品久久久久久久久久久久久久久| 国产成人精品免费视频网站| 亚洲精品高清在线| 3d动漫精品啪啪一区二区竹菊| 狠狠狠色丁香婷婷综合久久五月| 国产精品久99| 欧美另类高清zo欧美| 狠狠色丁香婷综合久久| 日韩美女视频一区| 91麻豆精品国产91久久久资源速度| 黑人精品欧美一区二区蜜桃| 国产精品高潮久久久久无| 欧美日韩国产高清一区二区| 精品一区二区久久久| 亚洲激情在线播放| 欧美大片拔萝卜| 色综合久久66| 国产在线一区二区| 亚洲黄色免费电影| 欧美成人国产一区二区| jlzzjlzz亚洲日本少妇| 婷婷激情综合网| 国产精品久久久久影院色老大| 欧美久久久久久蜜桃| 国产精品综合在线视频| 亚洲va韩国va欧美va| 国产视频视频一区| 91精品国产综合久久久久久漫画| 国产中文字幕精品| 日韩亚洲电影在线| 欧美成人vps| 尤物视频一区二区| 麻豆精品新av中文字幕| 韩国一区二区视频| 91看片淫黄大片一级在线观看| 69成人精品免费视频| 国产美女主播视频一区| 午夜精品久久久久| 国产精品免费视频网站| 成人亚洲一区二区一| 91精品国产欧美一区二区成人| 亚洲激情成人在线| 韩国av一区二区三区在线观看 | 日韩欧美你懂的| 麻豆精品久久精品色综合| 日本亚洲免费观看| 国产盗摄女厕一区二区三区| 欧美一区二区三区在线电影| 一区二区三区精品| 黄色小说综合网站| 欧美日韩国产精品自在自线| 国产精品国产自产拍高清av王其| 亚洲色图都市小说| 亚洲国产中文字幕| 欧美在线观看你懂的| 国产日韩一级二级三级| 精东粉嫩av免费一区二区三区| 欧美日韩一区不卡| 亚洲一区二区三区在线看| 91丨九色丨蝌蚪丨老版| 日韩三区在线观看| 五月综合激情婷婷六月色窝| 欧美日韩精品一区视频| 日韩美女视频一区| 色悠悠亚洲一区二区| 国产精品美女久久久久久久久久久 | 日韩精品最新网址| 国产精品成人一区二区三区夜夜夜| 韩国v欧美v日本v亚洲v| 欧美精品日韩综合在线| 亚洲一二三四在线| 777久久久精品| 一区二区三区不卡视频| 91丨九色丨国产丨porny| 日韩主播视频在线| 欧美三级视频在线| 亚洲一区国产视频| 色狠狠综合天天综合综合| 亚洲成人av资源| 在线电影院国产精品| 国产一区二区三区免费在线观看 | 美国十次综合导航| 欧美日韩1234| 亚洲成精国产精品女| 日韩午夜精品电影| 亚洲不卡在线观看| 欧美一区二区三区在线观看| 国产一区二区三区四区五区入口 | 丰满放荡岳乱妇91ww| 国产伦精品一区二区三区在线观看| 精品一区二区三区在线播放| 久久99久久久欧美国产| 精品一区二区在线视频| 国产自产v一区二区三区c| 国产精品一区二区久激情瑜伽| 国产精品正在播放| 顶级嫩模精品视频在线看|