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

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

?? dataflash.h

?? 此文件為zigbee2006協議棧源碼
?? H
?? 第 1 頁 / 共 2 頁
字號:

    /**** PageProgram Parameters ****/
    struct {
      uAddrType udAddr;
      ST_uint32 udNrOfElementsInArray;
      void *pArray;
    } PageProgram;

    /**** PageErase Parameters ****/
    struct {
      uPageType upgPageNr;
    } PageErase;

    /**** SectorErase Parameters ****/
    struct {
      uSectorType ustSectorNr;
    } SectorErase;

    /**** Write Parameters ****/
    struct {
      uAddrType udAddr;
      ST_uint32 udNrOfElementsInArray;
      void *pArray;
    } Write;

    /**** Program Parameters ****/
    struct {
      uAddrType udAddr;
      ST_uint32 udNrOfElementsInArray;
      void *pArray;
    } Program;

    /**** ReadLockRegister Parameters ****/
    struct {
        uAddrType udAddr;
        ST_uint8 ucpLockRegister;
    } ReadLockRegister;

    /**** WriteLockRegister Parameters ****/
    struct {
        uAddrType udAddr;
        ST_uint8 ucLockRegister;
    } WriteLockRegister;

} ParameterType;


/******************************************************************************
    Standard functions
*******************************************************************************/
  ReturnType  Flash( InstructionType insInstruction, ParameterType *fp );
  ReturnType  FlashWriteEnable( void );
  ReturnType  FlashWriteDisable( void );
  ReturnType  FlashReadDeviceIdentification( ST_uint16 *uwpDeviceIdentification);
  ReturnType  FlashReadManufacturerIdentification( ST_uint8 *ucpManufacturerIdentification);
  ReturnType  FlashReadStatusRegister( ST_uint8 *ucpStatusRegister);
  ReturnType  FlashRead( uAddrType udAddr, ST_uint8 *ucpElements, ST_uint32 udNrOfElementsToRead);
  ReturnType  FlashFastRead( uAddrType udAddr, ST_uint8 *ucpElements, ST_uint32 udNrOfElementsToRead);
  ReturnType  FlashPageWrite( uAddrType udAddr, ST_uint8 *pArray , ST_uint16 udNrOfElementsInArray);
  ReturnType  FlashPageProgram( uAddrType udAddr, ST_uint8 *pArray, ST_uint16 udNrOfElementsInArray );
  ReturnType  FlashPageErase( uPageType upgPageNr );
  ReturnType  FlashSectorErase( uSectorType uscSectorNr );
  ReturnType  FlashBulkErase( void );
  ReturnType  FlashDeepPowerDown( void );
  ReturnType  FlashReleaseFromDeepPowerDown( void );
  ReturnType  FlashWrite( ST_uint32 udAddr, ST_uint8 *pArray, ST_uint32 udNrOfElementsInArray );
  ReturnType  FlashProgram( ST_uint32 udAddr, ST_uint8 *pArray , ST_uint32 udNrOfElementsInArray);
  ReturnType  FlashReadLockRegister( ST_uint32 udAddr, ST_uint8 *ucLockRegister );
  ReturnType  FlashWriteLockRegister( ST_uint32 udAddr, ST_uint8 ucLockRegister );

/******************************************************************************
    Utility functions
*******************************************************************************/
#ifdef VERBOSE
   ST_sint8 *FlashErrorStr( ReturnType rErrNum );
#endif

  ReturnType  FlashTimeOut( ST_uint32 udSeconds );

/*******************************************************************************
List of Errors and Return values, Explanations and Help.
********************************************************************************

Error Name:   Flash_AddressInvalid
Description:  The address given is out of the Flash memory address range.
Solution:     Check whether the address given is in the valid Flash memory address range.
********************************************************************************

Error Name:   Flash_PageEraseFailed
Description:  The Page Erase instruction did not complete successfully.
Solution:     Try to erase the Page again. If the operation fails again, the device
              may be faulty and need to be replaced.
********************************************************************************

Error Name:   Flash_PageNrInvalid
Note:         The Flash memory is not at fault.
Description:  An attempt to select a Page (Parameter) that is not
              within the valid range has been made. Valid Page numbers are from 0 to
              FLASH_PAGE_COUNT - 1.
Solution:     Check that the Page number given is in the valid range.
********************************************************************************

Error Name:   Flash_SectorNrInvalid
Note:         The Flash memory is not at fault.
Description:  An attempt to select a Sector(Parameter) that is not
              within the valid range has been made. Valid Sector numbers are from 0 to
              FLASH_SECTOR_COUNT - 1.
Solution:     Check that the Sector number given is in the valid range.
********************************************************************************

Return Name:  Flash_FunctionNotSupported
Description:  The user has attempted to make use of a functionality not
              available on this Flash device (and thus not provided by the
              software drivers).
Solution:     This may happen after changing Flash SW Drivers in existing
              environments. For example an application tries to use a
              functionality that is no longer provided with the new device.
********************************************************************************

Return Name:  Flash_NoInformationAvailable
Description:  The system cannot give any additional information about the error.
Solution:     None
********************************************************************************

Error Name:   Flash_OperationOngoing
Description:  This message is one of two messages which are given by the TimeOut
              subroutine. That means that the current Flash memory operation is still
	      within the defined time frame.
********************************************************************************

Error Name:   Flash_OperationTimeOut
Description:  The Program/Erase Controller algorithm could not complete an
              operation successfully. It should have set bit 7 of the Status
              Register from 0 to 1, but this did not happen within the predefined
              time limit. The operation was therefore cancelled by a timeout.
	      This may be due to the device that is damaged.
Solution:     Try the previous instruction again. If it fails a second time then it
              is likely that the device needs to be replaced.
********************************************************************************

Error Name:   Flash_ProgramFailed
Description:  The value that should be programmed has not been written correctly
              to the Flash memory.
Solutions:    Make sure that the Page which is supposed to receive the value
              was erased successfully before programming. Try to erase the Page and
              to program the value again. If it fails again then the device may
              be faulty.
********************************************************************************

Error Name:   Flash_WrongType
Description:  This message appears if the Manufacturer and Device Identifications read from
              the Flash device in use do not match the expected Identification
              values. This means that the source code is not explicitly written for
              the currently used Flash chip. It may work, but correct operation is not
              guaranteed.
Solutions:    Use a different Flash chip with the target hardware or contact
              STMicroelectronics for a different source code library.
********************************************************************************

Return Name:  Flash_Success
Description:  This value indicates that the Flash memory instruction was executed
              correctly.
********************************************************************************/

/*******************************************************************************
Device Constants
*******************************************************************************/


#define MANUFACTURER_ST (0x20)    /* ST Manufacturer Code is 0x20 */
#define ANY_ADDR (0x0)            /* Any address offset within the Flash Memory will do */

#ifdef USE_M25PE10                       /* The M25PE10 device */
   #define EXPECTED_DEVICE (0x8011)      /* Device code for the M25PE10 */
   #define FLASH_SIZE (0x020000)		 /* Total device size in Bytes */
   #define FLASH_PAGE_COUNT (0x0200)	 /* Total device size in Pages */
   #define FLASH_SECTOR_COUNT (0x02)     /* Total device size in Sectors */
   #define FLASH_WRITE_BUFFER_SIZE 0x100 /* Write Buffer = 256 bytes */
   #define FLASH_MWA 1                   /* Minimum Write Access */

   #define PW_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Write Operation*/
   #define PP_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Program Operation*/
   #define PE_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Erase Operation*/
   #define SE_TIMEOUT (0x06)		 /* Timeout in seconds suggested for Sector Erase Operation*/

   #define NUM_NV_PAGES          (0x08)
   #define NUM_SYS_PAGES         (0x01)
   #define NV_BASE_ADDRESS       (0x00)
   #define NUM_DL_FALLOW_PAGES   (0x08)
   #define DL_BASE_ADDRESS       ((NUM_NV_PAGES+NUM_SYS_PAGES+NUM_DL_FALLOW_PAGES)*FLASH_WRITE_BUFFER_SIZE)
   #define SYSNV_BASE_ADDRESS    (NUM_NV_PAGES*FLASH_WRITE_BUFFER_SIZE)

   #define DF_PAGESIZE             FLASH_WRITE_BUFFER_SIZE
   #define DF_SHIFTCOUNT           8

#endif /* USE_M25PE10 */


#ifdef USE_M25PE20                       /* The M25PE20 device */
   #define EXPECTED_DEVICE (0x8012)      /* Device code for the M25PE20 */
   #define FLASH_SIZE (0x040000)		 /* Total device size in Bytes */
   #define FLASH_PAGE_COUNT (0x0400)	 /* Total device size in Pages */
   #define FLASH_SECTOR_COUNT (0x04)     /* Total device size in Sectors */
   #define FLASH_WRITE_BUFFER_SIZE 0x100 /* Write Buffer = 256 bytes */
   #define FLASH_MWA 1                   /* Minimum Write Access */

   #define PW_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Write Operation*/
   #define PP_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Program Operation*/
   #define PE_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Erase Operation*/
   #define SE_TIMEOUT (0x06)		 /* Timeout in seconds suggested for Sector Erase Operation*/

#endif /* USE_M25PE20 */

#ifdef USE_M25PE40                       /* The M25PE40 device */
   #define EXPECTED_DEVICE (0x8013)      /* Device code for the M25PE40 */
   #define FLASH_SIZE (0x080000)		 /* Total device size in Bytes */
   #define FLASH_PAGE_COUNT (0x0800)	 /* Total device size in Pages */
   #define FLASH_SECTOR_COUNT (0x08)     /* Total device size in Sectors */
   #define FLASH_WRITE_BUFFER_SIZE 0x100 /* Write Buffer = 256 bytes */
   #define FLASH_MWA 1                   /* Minimum Write Access */

   #define PW_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Write Operation*/
   #define PP_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Program Operation*/
   #define PE_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Erase Operation*/
   #define SE_TIMEOUT (0x06)		 /* Timeout in seconds suggested for Sector Erase Operation*/
#endif /* USE_M25PE40 */

#ifdef USE_M25PE80                       /* The M25PE80 device */
   #define EXPECTED_DEVICE (0x8014)      /* Device code for the M25PE80 */
   #define FLASH_SIZE (0x100000)		 /* Total device size in Bytes */
   #define FLASH_PAGE_COUNT (0x1000)	 /* Total device size in Pages */
   #define FLASH_SECTOR_COUNT (0x10)     /* Total device size in Sectors */
   #define FLASH_SUBSECTOR_COUNT (0x10)  /* Total sub-Sector size in Sectors */
   #define FLASH_WRITE_BUFFER_SIZE 0x100 /* Write Buffer = 256 bytes */
   #define FLASH_MWA 1                   /* Minimum Write Access */

   #define PW_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Write Operation*/
   #define PP_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Program Operation*/
   #define PE_TIMEOUT (0x01)		 /* Timeout in seconds suggested for Page Erase Operation*/
   #define SE_TIMEOUT (0x06)		 /* Timeout in seconds suggested for Sector Erase Operation*/
   #define BE_TIMEOUT (0x3D)		 /* Timeout in seconds suggested for Bulk Erase Operation*/


#endif /* USE_M25PE80 */

/******************************************************************************
    External variable declaration
*******************************************************************************/

// none in this version of the release

/*******************************************************************************
Flash Status Register Definitions (see Datasheet)
*******************************************************************************/
enum
{
	SPI_FLASH_WIP	= 0x01,				// write/program/erase in progress indicator
	SPI_FLASH_WEL	= 0x02				// write enable latch
};

/*******************************************************************************
Specific Function Prototypes
*******************************************************************************/
//typedef unsigned char BOOL;

#ifndef TRUE
#define TRUE 1
#endif

#ifndef FALSE
#define FALSE 0
#endif

uint8 IsFlashBusy(void);

/*******************************************************************************
List of Specific Errors and Return values, Explanations and Help.
*******************************************************************************

// none in this version of the release
********************************************************************************/

#endif /* __C2195__H__  */
/* In order to avoid a repeated usage of the header file */

/*******************************************************************************
     End of C2195.h
********************************************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
制服.丝袜.亚洲.中文.综合| 欧美电影免费观看高清完整版| 日韩欧美第一区| 亚洲精品自拍动漫在线| 成人激情小说网站| 中文一区二区完整视频在线观看| 久久精品国内一区二区三区| 色综合一区二区| 欧美性欧美巨大黑白大战| 性做久久久久久免费观看| 日韩一区二区视频| 本田岬高潮一区二区三区| 日本一区二区成人在线| 欧美视频三区在线播放| 国产精品一区二区三区乱码| 91原创在线视频| 婷婷综合五月天| 欧美国产1区2区| 在线看一区二区| 国产精品久久国产精麻豆99网站| 一区二区视频在线看| 精品在线观看免费| 欧美大尺度电影在线| 日本aⅴ亚洲精品中文乱码| 欧美日韩精品三区| 亚洲国产aⅴ天堂久久| 在线精品视频小说1| 亚洲一区在线播放| 欧美人与禽zozo性伦| 一区二区三区四区蜜桃| 91国偷自产一区二区使用方法| 亚洲一区视频在线| 欧美一级在线观看| 国产一区二区三区观看| 亚洲视频1区2区| 欧美久久一二区| 日韩高清一区在线| 精品国免费一区二区三区| 不卡的av在线| 午夜视黄欧洲亚洲| 中文字幕精品一区二区精品绿巨人| 成人aa视频在线观看| 亚洲成人精品一区| xf在线a精品一区二区视频网站| 岛国一区二区在线观看| 一级精品视频在线观看宜春院| 欧美电视剧免费全集观看| 国产日产欧美一区二区视频| 色8久久精品久久久久久蜜| 国产一区二区三区观看| 午夜精品福利视频网站| 亚洲人成网站影音先锋播放| 久久亚洲捆绑美女| 欧美日韩视频第一区| 色悠悠久久综合| 99re成人精品视频| 成人免费av在线| 国产毛片精品视频| 狠狠色综合日日| 欧美aaaaa成人免费观看视频| 一区二区三区四区不卡视频| 欧美激情在线一区二区三区| 日韩一区二区在线播放| 欧美日韩国产天堂| 欧美美女bb生活片| 欧美日韩夫妻久久| 在线观看国产一区二区| 欧美优质美女网站| 在线免费精品视频| 日本韩国精品在线| 欧美系列日韩一区| 9191久久久久久久久久久| 96av麻豆蜜桃一区二区| 欧洲国内综合视频| 在线不卡一区二区| 日韩三级av在线播放| 精品国产1区2区3区| 日韩精品一区二区三区四区视频 | 4438成人网| 久久国产欧美日韩精品| 一区二区在线观看视频| 亚洲一区二区美女| 丝瓜av网站精品一区二区| 亚洲国产一区二区三区青草影视| 日韩精品久久理论片| 国产精品一二一区| 91网上在线视频| 欧美变态tickling挠脚心| 亚洲天堂2016| 亚洲国产毛片aaaaa无费看 | 久久理论电影网| 亚洲精品乱码久久久久久久久 | 国内精品久久久久影院一蜜桃| 色先锋资源久久综合| 国产精品美女视频| 国产v综合v亚洲欧| 久久久精品国产免费观看同学| 亚洲va韩国va欧美va精品| 91在线观看高清| 国产精品久久久久影院色老大 | 天天av天天翘天天综合网色鬼国产| 成人app下载| 国产精品国产三级国产aⅴ原创| 韩国精品在线观看| 欧美精品一区二区久久婷婷| 日本va欧美va瓶| 日韩午夜三级在线| 韩国女主播一区| 久久久久久一二三区| 精品在线观看视频| 中文字幕不卡的av| 97久久精品人人爽人人爽蜜臀| 国产丝袜在线精品| 99视频精品在线| 亚洲自拍偷拍九九九| 欧美日韩一区二区三区不卡| 日韩一区欧美二区| 久久婷婷色综合| 972aa.com艺术欧美| 婷婷国产在线综合| 久久久蜜臀国产一区二区| aaa亚洲精品| 琪琪久久久久日韩精品| 中国色在线观看另类| 欧美日韩一区成人| 国产馆精品极品| 一区二区不卡在线播放 | 欧美一区国产二区| www.av精品| 国产真实乱偷精品视频免| 1024国产精品| 欧美va亚洲va在线观看蝴蝶网| 成人va在线观看| 国产一区二区h| 亚洲高清视频在线| 一区二区三区欧美视频| 中文字幕免费一区| 精品国产一区二区亚洲人成毛片 | 在线免费不卡电影| 一区二区三区四区精品在线视频| 91无套直看片红桃| 国产成人鲁色资源国产91色综 | 国产精品系列在线观看| 亚洲最大成人综合| 亚洲免费观看视频| 一区在线观看视频| 欧美激情一二三区| 中文字幕亚洲区| 国产精品福利一区二区三区| 国产午夜精品一区二区三区四区| 欧美精品1区2区3区| 欧美视频一区二区三区四区| 91农村精品一区二区在线| 成人动漫一区二区三区| 成人激情免费视频| av男人天堂一区| 91免费国产视频网站| 99久久精品情趣| 成人国产视频在线观看 | 久久免费看少妇高潮| 色999日韩国产欧美一区二区| www.欧美日韩国产在线| 99国产精品视频免费观看| eeuss鲁一区二区三区| 在线观看免费亚洲| 欧美一区二区在线免费播放| 精品日韩99亚洲| 日本一二三不卡| 亚洲风情在线资源站| 乱中年女人伦av一区二区| 国产91富婆露脸刺激对白| 91年精品国产| 久久综合狠狠综合久久激情| 亚洲码国产岛国毛片在线| 五月天激情小说综合| zzijzzij亚洲日本少妇熟睡| 欧美性生活久久| 欧美国产成人在线| 免费成人av资源网| jizzjizzjizz欧美| 91麻豆国产在线观看| 9191久久久久久久久久久| 中文字幕免费观看一区| 日本亚洲最大的色成网站www| 丁香婷婷综合网| 欧美日韩一区二区三区在线看| 精品少妇一区二区三区免费观看 | 欧美一区二区在线视频| 亚洲天堂久久久久久久| 国产69精品久久久久777| 91超碰这里只有精品国产| 一区二区三区中文字幕精品精品 | 91精品国产综合久久香蕉麻豆| 亚洲免费观看高清完整版在线| 国产精品综合一区二区| 日韩一区和二区| 美女网站一区二区| 日韩一区二区电影网| 奇米影视在线99精品| 欧美一区日韩一区|