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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? prog_flash.c

?? ecos為實時嵌入式操作系統
?? C
字號:
//==========================================================================////        prog_flash.c////        ARM PID7 eval board FLASH program tool////==========================================================================//####COPYRIGHTBEGIN####//// -------------------------------------------// The contents of this file are subject to the Cygnus eCos Public License// Version 1.0 (the "License"); you may not use this file except in// compliance with the License.  You may obtain a copy of the License at// http://sourceware.cygnus.com/ecos// // Software distributed under the License is distributed on an "AS IS"// basis, WITHOUT WARRANTY OF ANY KIND, either express or implied.  See the// License for the specific language governing rights and limitations under// the License.// // The Original Code is eCos - Embedded Cygnus Operating System, released// September 30, 1998.// // The Initial Developer of the Original Code is Cygnus.  Portions created// by Cygnus are Copyright (C) 1998,1999 Cygnus Solutions.  All Rights Reserved.// -------------------------------------------////####COPYRIGHTEND####//==========================================================================//#####DESCRIPTIONBEGIN####//// Author(s):     gthomas// Contributors:  gthomas// Date:          1998-11-18// Description:   Tool used to program onboard FLASH image//####DESCRIPTIONEND####//// This program will program the FLASH on the PID board// It is similar to 'flash' (which also downloads S records) but it always// programs from a fixed buffer.  This is sufficient to load/update the GDB// stubs on the board.//#include <pkgconf/libc.h>   // Configuration header#include <cyg/kernel/kapi.h>#include <stdlib.h>#include <ctype.h>#include <cyg/infra/testcase.h>#include <sys/cstartup.h>#ifndef FALSE#define FALSE 0#define TRUE  1#endifextern void diag_printf(const char *, ...);int identify_FLASH(void);void write_sector(int, char *);char *flash_buffer = (char *)0x60000;char *flash_buffer_end = (char *)0x64000;// FUNCTIONSexternC voidcyg_package_start( void ){#ifdef CYGPKG_LIBC    cyg_iso_c_start();#else    (void)main(0, NULL);#endif} // cyg_package_start()intmain( int argc, char *argv[] ){    int i;    diag_printf("FLASH here!\n");    while (identify_FLASH() == 0) {        diag_printf("... Please change FLASH jumper\n");        cyg_thread_delay(5*100);    }    diag_printf("About to program FLASH using data at %x..%x\n", flash_buffer, flash_buffer_end);    diag_printf("*** Press RESET now to abort!\n");    cyg_thread_delay(5*100);    diag_printf("\n");    diag_printf("...Programming FLASH\n");    i = 0;    while (flash_buffer < flash_buffer_end) {        write_sector(i++, flash_buffer);        flash_buffer += 256;    }    diag_printf("All done!\n");    while (1) ;}// Adapted from ARM sample code#define SEQ_ADD1                0x5555#define SEQ_ADD2                0xAAAA#define START_CMD1              0xAA#define START_CMD2              0x55#define ID_CMD                  0x90#define PROG_CMD                0xA0#define STOP_CMD                0xF0#define MAN_ATMEL               0x1F#define ATMEL_AT29C040_ID       0X5B#define ATMEL_AT29C040A_ID      0XA4#define ATMEL_AT29C1024_ID      0X25#define ATMEL_SECTOR_SIZE       256#define ATMEL_MAX_SECTORS       2048int manuf_code, device_code, sector_size, max_no_of_sectors, word_mode;volatile char *FLASH = (volatile char *)0x04000000;intidentify_FLASH(void ){    // Enter Software Product Identification Mode    FLASH[SEQ_ADD1] = START_CMD1;    FLASH[SEQ_ADD2] = START_CMD2;    FLASH[SEQ_ADD1] = ID_CMD;    // Wait at least 10ms    cyg_thread_delay(2);    // Read Manufacturer and device code from the device    manuf_code = FLASH[0];    device_code = FLASH[1];    diag_printf("manuf: %x, device: %x\n", manuf_code, device_code);    // Exit Software Product Identification Mode    FLASH[SEQ_ADD1] = START_CMD1;    FLASH[SEQ_ADD2] = START_CMD2;    FLASH[SEQ_ADD1] = STOP_CMD;    // Wait at least 10ms    cyg_thread_delay(5);    if (manuf_code != MAN_ATMEL) {        diag_printf ( "Error: Wrong Manufaturer: %02x\n",manuf_code );        return (0);    }    switch (device_code) {    case  ATMEL_AT29C040A_ID:        diag_printf ("AT29C040A recognised\n");        sector_size = ATMEL_SECTOR_SIZE;        max_no_of_sectors = ATMEL_MAX_SECTORS;        word_mode = FALSE;        break;    case  ATMEL_AT29C1024_ID:        diag_printf ("AT29C1024 recognised\n");        sector_size = ATMEL_SECTOR_SIZE;        max_no_of_sectors = ATMEL_MAX_SECTORS;        word_mode = TRUE;        break;    default :        diag_printf ( "Error: Unsupported device: %02x\n", device_code);        return (0);    }    return (1);}voidwrite_sector(int num, char *buf){    int i, cnt;    volatile char *wrt = (volatile int *)&FLASH[num*sector_size];//    diag_printf("Writing to %08x\n", wrt);    // Enter Program Mode    FLASH[SEQ_ADD1] = START_CMD1;    FLASH[SEQ_ADD2] = START_CMD2;    FLASH[SEQ_ADD1] = PROG_CMD;    // Note: write bytes as longs regardless of bus width    for (i = 0;  i < sector_size;  i++) {        wrt[i] = buf[i];    }    // Wait for sector to program    cnt = 0;    i = sector_size - 1;    while (wrt[i] != buf[i]) {        if (cnt++ > 0x01000000) break;    }//    diag_printf("Out - i: %d, wrt[i] = %08X.%08X, buf[i] = %08X, count = %x\n", i, &wrt[i], wrt[i], buf[i], cnt);    // Verify    for (i = 0;  i < sector_size;  i++) {        for (cnt = 0;  cnt < 10;  cnt++) {            if (*wrt == *buf) break;            cyg_thread_delay(1);        }        if (cnt == 10) {            diag_printf("Can't program at 0x%08X: %02X not %02X\n", wrt, *wrt, *buf);        }        wrt++;  buf++;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精华液网站w| 2023国产精品| 欧美日韩一区二区三区在线看| 欧美三级一区二区| 日韩欧美电影一区| 中文字幕在线不卡视频| 婷婷丁香久久五月婷婷| 国产精品自拍网站| 欧美唯美清纯偷拍| 国产拍欧美日韩视频二区| 亚洲第一在线综合网站| 国产成人亚洲综合a∨婷婷| 在线综合亚洲欧美在线视频| 亚洲乱码国产乱码精品精小说 | 91视频在线观看免费| 精品国产一区二区三区不卡 | 综合亚洲深深色噜噜狠狠网站| 蜜臀av一区二区三区| 91久久久免费一区二区| 国产精品久久久久久亚洲伦| 国产一区二区免费视频| 日韩欧美在线综合网| 偷拍亚洲欧洲综合| 欧美人伦禁忌dvd放荡欲情| 亚洲最新视频在线观看| 91麻豆123| 亚洲中国最大av网站| 色又黄又爽网站www久久| 中文一区在线播放| 成人国产一区二区三区精品| 国产区在线观看成人精品| 国产精品一品视频| 欧美国产丝袜视频| 北条麻妃国产九九精品视频| 国产精品久久久久影院亚瑟| 丁香桃色午夜亚洲一区二区三区| 久久丝袜美腿综合| 成人v精品蜜桃久久一区| 中文字幕五月欧美| 色综合视频在线观看| 亚洲影视资源网| 91麻豆精品国产自产在线观看一区 | 国产精品一区二区久久精品爱涩 | 4438x亚洲最大成人网| 日韩精品乱码免费| 欧美r级在线观看| 国产精品白丝jk黑袜喷水| 国产亚洲一区二区在线观看| 成人av在线网站| 一区二区三区中文字幕| 欧美精品久久99| 精品亚洲成a人| 国产精品久久久久久久久免费丝袜 | 久久综合九色综合97婷婷| 国产精品一级片| 亚洲欧洲日产国码二区| 欧美日韩亚洲丝袜制服| 麻豆精品久久久| 中文字幕制服丝袜成人av| 欧美亚洲动漫制服丝袜| 美女爽到高潮91| 国产精品视频yy9299一区| 在线国产电影不卡| 国内一区二区在线| 亚洲精品第1页| www亚洲一区| 欧美亚洲国产怡红院影院| 久久国产麻豆精品| 1区2区3区国产精品| 91精品国产手机| 99精品黄色片免费大全| 日本欧美一区二区| 中文字幕在线观看一区二区| 91精品国产综合久久精品app| 国产激情一区二区三区桃花岛亚洲| 亚洲欧洲三级电影| 欧美α欧美αv大片| 99v久久综合狠狠综合久久| 日本中文字幕一区二区有限公司| 国产欧美精品区一区二区三区| 欧美日韩综合色| 成人一级黄色片| 日韩电影免费在线观看网站| 亚洲精品欧美激情| 国产欧美日韩在线| 精品日韩99亚洲| 欧美日韩午夜精品| 99精品欧美一区二区蜜桃免费| 蜜桃在线一区二区三区| 亚洲五码中文字幕| 国产精品国产三级国产专播品爱网 | 韩国三级电影一区二区| 亚洲国产精品综合小说图片区| 日本一区二区动态图| 日韩三级在线免费观看| 欧美网站大全在线观看| 99riav一区二区三区| 国产传媒日韩欧美成人| 蜜臀久久久久久久| 天天综合日日夜夜精品| 一区二区三区高清在线| 亚洲视频免费在线| 中文字幕在线观看一区| 国产精品家庭影院| 成人欧美一区二区三区黑人麻豆| 久久亚洲综合色| 精品国产91乱码一区二区三区| 777色狠狠一区二区三区| 欧日韩精品视频| 在线观看视频一区二区| 在线免费精品视频| 色婷婷精品大在线视频| 91视频观看视频| 成人av在线观| 91在线无精精品入口| 色综合激情五月| 色综合天天综合给合国产| 91丝袜国产在线播放| 色综合久久久久综合99| 欧美性色欧美a在线播放| 在线视频综合导航| 欧美色倩网站大全免费| 欧美日韩二区三区| 日韩一卡二卡三卡四卡| 欧美精品一区男女天堂| 26uuu久久综合| 中文字幕不卡三区| 一区二区三区波多野结衣在线观看| 一二三区精品视频| 丝袜美腿一区二区三区| 日本强好片久久久久久aaa| 老司机午夜精品| 国产91对白在线观看九色| 91日韩在线专区| 欧美人体做爰大胆视频| 欧美电视剧在线看免费| 中文一区一区三区高中清不卡| 中文字幕亚洲电影| 日韩黄色一级片| 国产成人综合在线| 色噜噜狠狠色综合欧洲selulu| 欧美高清一级片在线| 精品国产一区二区三区忘忧草 | 99精品久久只有精品| 精品视频在线看| 久久先锋影音av| 136国产福利精品导航| 亚洲成av人片一区二区三区| 另类小说一区二区三区| av电影一区二区| 欧美日韩一区二区三区在线| 久久伊人蜜桃av一区二区| 成人欧美一区二区三区黑人麻豆 | 亚洲黄色小视频| 老司机精品视频导航| 91蜜桃视频在线| 欧美一级免费观看| 国产精品成人免费| 日韩成人午夜精品| 91社区在线播放| 337p粉嫩大胆噜噜噜噜噜91av| 悠悠色在线精品| 国产91在线观看| 91精品国产综合久久久蜜臀粉嫩| 国产精品欧美久久久久一区二区| 三级久久三级久久| 91麻豆高清视频| 久久久久久久久久久电影| 午夜激情综合网| 91黄视频在线| 国产精品天美传媒沈樵| 久久se精品一区精品二区| 欧美日韩一区成人| 亚洲精品五月天| 91性感美女视频| 国产免费久久精品| 国产在线精品免费| 日韩一区二区在线播放| 性久久久久久久久久久久| 99精品视频一区| 国产精品女主播av| 丁香婷婷综合色啪| 欧美成人猛片aaaaaaa| 婷婷中文字幕综合| 欧美性一区二区| 一区二区三区日韩精品| 91在线精品一区二区| 中文字幕日本乱码精品影院| 国产成人精品一区二| 国产日韩欧美精品一区| 国产露脸91国语对白| 2023国产精华国产精品| 九九热在线视频观看这里只有精品 | 欧美精品一区二区三区四区| 丝袜亚洲另类欧美| 91精品国产综合久久香蕉麻豆| 爽好久久久欧美精品| 欧美日韩国产首页| 日韩精品久久久久久| 日韩视频在线观看一区二区|