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

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

?? mx25l1602drv.c

?? LPC1114_例程和教程
?? C
?? 第 1 頁 / 共 2 頁
字號(hào):
/****************************************Copyright (c)**************************************************
**                               Guangzou ZLG-MCU Development Co.,LTD.
**                                      graduate school
**                                 http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name:       MX25L1602.c
** Descriptions:    SST25VF016B驅(qū)動(dòng)
**
**------------------------------------------------------------------------------------------------------
** Created by:      Litiantian
** Created date:    2007-04-16
** Version:         1.0
** Descriptions:    The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:     
** Modified date:   
** Version:         
** Descriptions:    
********************************************************************************************************/
#include   "MX25L1602Drv.h"

/*
 * 移植本軟件包時(shí)需要修改以下的函數(shù)或宏 
 */
#define     CE_Low()    LPC_GPIO0->DATA &= ~SPI_CS;   
#define     CE_High()   LPC_GPIO0->DATA |=  SPI_CS;

/*********************************************************************************************************
** 函數(shù)名稱:SPIInit
** 功能說明:初始化SPI
** 輸入?yún)?shù):無
** 輸出參數(shù):無
*********************************************************************************************************/
void  SSP_Init (void)
{  
    LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 16);                             /* 配置IOCON模塊時(shí)鐘            */
    LPC_IOCON->PIO0_2 &= ~0x07;                                         /* 初始化SPI0引腳               */
    LPC_GPIO0->DIR    |= SPI_CS;

    LPC_IOCON->PIO0_6 |= 0x02;
    LPC_IOCON->PIO0_8 |= 0x01;
    LPC_IOCON->PIO0_9 |= 0x01;

    LPC_SYSCON->PRESETCTRL    |= 0x01;                                  /* 禁止SPI0復(fù)位                 */

    LPC_IOCON->SCK_LOC         = 0x02;                                  /* P0.6配置為SCK                */
    LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 11);                             /* 打開SPI0外設(shè)                 */
    LPC_SYSCON->SSP0CLKDIV     = 0x01;                                  /* SSP時(shí)鐘分頻                  */
   
    LPC_SSP0->CR0 = (0x01 << 8) |                                       /* SCR  設(shè)置SPI時(shí)鐘分頻         */
                    (0x00 << 7) |                                       /* CPHA 時(shí)鐘輸出相位,           */
                                                                        /* 僅SPI模式有效                */
                    (0x00 << 6) |                                       /* CPOL 時(shí)鐘輸出極性,           */
                                                                        /* 僅SPI模式有效                */
                    (0x00 << 4) |                                       /* FRF  幀格式 00=SPI,01=SSI,   */
                                                                        /* 10=Microwire,11=保留         */
                    (0x07 << 0);                                        /* DSS  數(shù)據(jù)長度,0000-0010=保留,*/
                                                                        /* 0011=4位,0111=8位,1111=16位  */

    LPC_SSP0->CR1 = (0x00 << 3) |                                       /* SOD  從機(jī)輸出禁能,1=禁止     */
                    (0x00 << 2) |                                       /* MS   主從選擇,0=主機(jī),1=從機(jī)  */
                    (0x01 << 1) |                                       /* SSE  SSP使能                 */
                    (0x00 << 0);                                        /* LBM  回寫模式                */
             
    LPC_SSP0->CPSR = 2;                                                 /* PCLK分頻值                   */
    LPC_SSP0->ICR  = 0x03;                                              /* 中斷清除寄存器               */
}

/*********************************************************************************************************
** 函數(shù)名稱: Send_Byte
** 函數(shù)功能:通過硬件SPI發(fā)送一個(gè)字節(jié)到MX25L1602
** 輸入?yún)?shù): data
** 輸出參數(shù): 無
** 返 回 值:無
*********************************************************************************************************/
void Send_Byte (INT8U data)
{
    LPC_SSP0->DR = data;
    while( (LPC_SSP0->SR & 0x10) == 0x10);                              /* 等待TFE置位,即發(fā)送FIFO空    */
    data = LPC_SSP0->DR;   
}

/*********************************************************************************************************
** 函數(shù)名稱:Get_Byte
** 函數(shù)功能:通過硬件SPI接口接收一個(gè)字節(jié)到處理器
** 輸入?yún)?shù):無
** 輸出參數(shù):無
*********************************************************************************************************/
INT8U Get_Byte (void)
{
    LPC_SSP0->DR = 0xFF;                                                /* 發(fā)送該數(shù)據(jù)用以產(chǎn)生時(shí)鐘       */
    while ( 0 == (LPC_SSP0->SR & 0x01));                                /* 等待數(shù)據(jù)發(fā)送完畢             */
   /*
    * 判斷當(dāng)前是否空閑(是否處于TX Or RX)
    */
    while( LPC_SSP0->SR & (1 << 4));
   /*
    * 判斷是否已接收到數(shù)據(jù),必須判斷是否接收完成,否則
    * 新的TX發(fā)送再次寫入LPC_SSP0->DR寄存器
    */
   while( LPC_SSP0->SR & (1 << 2) == 0x00); 
   return (INT8U)(LPC_SSP0->DR);                                        /* 返回接收到的數(shù)據(jù)             */
}
 
/*********************************************************************************************************
** 用戶接口層
** 以下函數(shù)在移植時(shí)無需修改
*********************************************************************************************************/
/********************************************************************************************************
** 函數(shù)名稱:MX25L1602_RD
** 函數(shù)功能:MX25L1602的讀函數(shù),可選擇讀ID和讀數(shù)據(jù)操作
** 輸入?yún)?shù):
**          INT32U Dst:目標(biāo)地址,范圍 0x0 - MAX_ADDR(MAX_ADDR = 0x1FFFFF)
**          INT32U NByte:  要讀取的數(shù)據(jù)字節(jié)數(shù)
**          INT8U* RcvBufPt:接收緩存的指針
** 輸出參數(shù):操作成功則返回OK,失敗則返回ERROR
** 特殊說明:若某功能下,某一入口參數(shù)無效,可在該入口參數(shù)處填I(lǐng)nvalid,該參數(shù)將被忽略
**********************************************************************************************************/
INT8U MX25L1602_RD(INT32U Dst, INT32U NByte,INT8U* RcvBufPt)
{
  INT32U i = 0;
  if ((Dst+NByte > MAX_ADDR)||(NByte == 0))  return (ERROR);            /*  檢查入口參數(shù)                */
  
  CE_Low();
  Send_Byte(0x0B);                                                      /* 發(fā)送讀命令                   */
  Send_Byte(((Dst & 0xFFFFFF) >> 16));                                  /* 發(fā)送地址信息:該地址為3個(gè)字節(jié) */
  Send_Byte(((Dst & 0xFFFF) >> 8));
  Send_Byte(Dst & 0xFF);
  Send_Byte(0xFF);                                                      /* 發(fā)送一個(gè)啞字節(jié)以讀取數(shù)據(jù)     */
  for (i = 0; i < NByte; i++) {
    RcvBufPt[i] = Get_Byte();
  }
  CE_High();
  return (OK);
}

/*********************************************************************************************************
** 函數(shù)名稱:MX25L1602_RdID
** 函數(shù)功能:MX25L1602的讀ID函數(shù),可選擇讀ID和讀數(shù)據(jù)操作
** 輸入?yún)?shù):
**          idtype IDType:ID類型。用戶可在Jedec_ID,Dev_ID,Manu_ID三者里選擇
**          INT32U* RcvbufPt:存儲(chǔ)ID變量的指針
** 輸出參數(shù):操作成功則返回OK,失敗則返回ERROR
** 特殊說明:若填入的參數(shù)不符合要求,則返回ERROR
*********************************************************************************************************/
INT8U MX25L1602_RdID(idtype IDType, INT32U* RcvbufPt)
{
  INT32U temp = 0;
  if (IDType == Jedec_ID) {
    CE_Low();
    Send_Byte(0x9F);                                                    /* 發(fā)送讀JEDEC ID命令(9Fh)      */
    temp = (temp | Get_Byte()) << 8;                                    /* 接收數(shù)據(jù)                     */
    temp = (temp | Get_Byte()) << 8;
    temp = (temp | Get_Byte());                                         /* 在本例中,temp的值應(yīng)為0xBF2541*/
    CE_High();
    *RcvbufPt = temp;
    return (OK);
  }

  if ((IDType == Manu_ID) || (IDType == Dev_ID) ) {
    CE_Low();
    Send_Byte(0x90);                                                    /* 發(fā)送讀ID命令 (90h or ABh)    */
    Send_Byte(0x00);                                                    /* 發(fā)送地址                     */
    Send_Byte(0x00);                                                    /* 發(fā)送地址                     */
    Send_Byte(IDType);                                                  /* 發(fā)送地址 - 不是00H就是01H    */
    temp = Get_Byte();                                                  /* 接收獲取的數(shù)據(jù)字節(jié)           */
    CE_High();
    *RcvbufPt = temp;
    return (OK);
  } else {
    return (ERROR);
  }
}

/*********************************************************************************************************
** 函數(shù)名稱:MX25L1602_WR
** 函數(shù)功能:MX25L1602的寫函數(shù),可寫1個(gè)和多個(gè)數(shù)據(jù)到指定地址
** 輸入?yún)?shù):
**          INT32U Dst:目標(biāo)地址,范圍 0x0 - MAX_ADDR(MAX_ADDR = 0x1FFFFF)
**          INT8U* SndbufPt:發(fā)送緩存區(qū)指針
**          INT32U NByte:要寫的數(shù)據(jù)字節(jié)數(shù)
** 輸出參數(shù):操作成功則返回OK,失敗則返回ERROR
** 特殊說明:若某功能下,某一入口參數(shù)無效,可在該入口參數(shù)處填I(lǐng)nvalid,該參數(shù)將被忽略
*********************************************************************************************************/
INT8U MX25L1602_WR(INT32U Dst, INT8U* SndbufPt, INT32U NByte)
{
  INT32U temp = 0,i = 0,StatRgVal = 0;
  if (( (Dst+NByte-1 > MAX_ADDR)||(NByte == 0) )) {
    return (ERROR);                                                     /*  檢查入口參數(shù)                */
  }
  CE_Low();
  Send_Byte(0x05);                                                      /* 發(fā)送讀狀態(tài)寄存器命令         */
  temp = Get_Byte();                                                    /* 保存讀得的狀態(tài)寄存器值       */
  CE_High();

  CE_Low();
  Send_Byte(0x50);                                                      /* 使?fàn)顟B(tài)寄存器可寫             */
  CE_High();
  CE_Low();
  Send_Byte(0x01);                                                      /* 發(fā)送寫狀態(tài)寄存器指令         */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91 com成人网| 精品国产乱码久久久久久蜜臀| 麻豆精品一区二区三区| 国产精品久久久久久久久久免费看| 欧美精品第1页| 99国产精品99久久久久久| 另类小说综合欧美亚洲| 亚洲一区在线观看视频| 国产午夜精品久久久久久免费视| 欧美日韩精品福利| 色哟哟国产精品免费观看| 国产真实乱偷精品视频免| 婷婷激情综合网| 一区二区三区日本| 国产精品久久久久久久久久免费看| 日韩三级中文字幕| 欧美福利视频一区| 一本一道综合狠狠老| 国产精品18久久久久久久网站| 首页综合国产亚洲丝袜| 亚洲主播在线播放| 亚洲欧美另类在线| 中文字幕一区在线观看| 国产丝袜美腿一区二区三区| 日韩精品一区在线观看| 91精品国产综合久久香蕉的特点 | 91麻豆自制传媒国产之光| 国产一区二区三区四| 美女mm1313爽爽久久久蜜臀| 五月综合激情日本mⅴ| 一区二区三区四区不卡视频 | 欧美激情一区二区| 久久久久久综合| 精品日本一线二线三线不卡| 日韩一区二区三| 欧美一级久久久久久久大片| 日韩一区二区三区在线观看| 欧美精品丝袜久久久中文字幕| 欧美丝袜丝交足nylons图片| 欧美午夜一区二区三区| 欧美中文一区二区三区| 欧美中文字幕一二三区视频| 欧美三级韩国三级日本一级| 欧美亚洲禁片免费| 欧美日韩午夜在线视频| 精品视频1区2区3区| 欧美精品一卡二卡| 日韩一区二区中文字幕| 欧美sm极限捆绑bd| 久久精子c满五个校花| 国产欧美精品区一区二区三区 | 亚洲成人av在线电影| 香蕉乱码成人久久天堂爱免费| 亚洲午夜国产一区99re久久| 午夜欧美一区二区三区在线播放| 日韩成人精品在线| 久久99精品国产.久久久久久| 老汉av免费一区二区三区| 狠狠色综合播放一区二区| 国产精品99久久久久久久vr | 麻豆一区二区三| 激情图片小说一区| 成人国产免费视频| 色8久久人人97超碰香蕉987| 欧美日韩国产系列| 精品成人在线观看| 国产精品的网站| 亚洲成人黄色影院| 国产真实乱对白精彩久久| 99在线精品观看| 欧美在线不卡视频| 日韩精品一区二区三区在线观看 | 黄页网站大全一区二区| 成人av网站大全| 久久久亚洲精品一区二区三区| 久久久久久久久久久黄色| 亚洲欧美欧美一区二区三区| 免费不卡在线观看| 成人污视频在线观看| 欧美日韩国产高清一区二区三区| 精品国产电影一区二区| 亚洲视频1区2区| 久久精品72免费观看| 99re这里只有精品6| 3d动漫精品啪啪1区2区免费| 亚洲国产高清不卡| 日本一不卡视频| 播五月开心婷婷综合| 欧美高清dvd| 国产精品乱人伦一区二区| 日日夜夜精品免费视频| 成人美女视频在线看| 7777精品伊人久久久大香线蕉经典版下载| 久久综合国产精品| 五月婷婷色综合| 91在线播放网址| 亚洲精品一区二区在线观看| 亚洲妇熟xx妇色黄| 成人福利视频在线| 日韩精品一区在线| 亚洲高清不卡在线观看| 成人app在线观看| 精品国产伦一区二区三区观看体验| 亚洲欧洲综合另类| 懂色av中文字幕一区二区三区| 在线成人高清不卡| 亚洲精品免费在线播放| 丁香五精品蜜臀久久久久99网站| 制服丝袜激情欧洲亚洲| 尤物视频一区二区| av日韩在线网站| 国产日韩欧美一区二区三区乱码 | 午夜视频在线观看一区| 成人三级伦理片| 2023国产精品| 久久99精品国产.久久久久久| 欧美日韩一区久久| 依依成人精品视频| 91美女在线视频| 国产精品久久久爽爽爽麻豆色哟哟 | ...av二区三区久久精品| 国产一区二三区| 日韩精品一区二区三区视频播放| 亚洲国产精品影院| 91国偷自产一区二区使用方法| 国产精品美女久久久久久久| 国产一区二区三区在线观看精品| 91精品国产福利在线观看| 亚洲成年人影院| 欧美日韩综合在线免费观看| 一区二区三区精密机械公司| 一本高清dvd不卡在线观看| 国产精品卡一卡二卡三| 成人国产精品免费| 国产精品美女久久久久久久久久久 | 欧美日韩不卡一区二区| 亚洲一区二区在线免费看| 在线一区二区观看| 亚洲国产日韩一区二区| 欧美中文字幕一区二区三区亚洲| 亚洲精品国产品国语在线app| 色哟哟欧美精品| 亚洲综合无码一区二区| 精品视频999| 日本va欧美va精品| 欧美刺激午夜性久久久久久久| 久久99精品国产.久久久久| 亚洲精品一线二线三线| 国产精品亚洲一区二区三区妖精 | 成人综合婷婷国产精品久久| 国产精品欧美极品| av资源网一区| 亚洲国产精品欧美一二99| 在线电影一区二区三区| 免费成人结看片| 久久久99久久| 色悠悠久久综合| 五月天精品一区二区三区| 日韩免费观看高清完整版| 国产一区二区福利| 国产精品久久久久久久久免费樱桃| 91免费在线播放| 亚洲va国产天堂va久久en| 日韩三级视频中文字幕| 成人精品免费看| 一区二区三区欧美激情| 日韩精品中文字幕一区二区三区 | 日韩一区精品字幕| 久久久www成人免费无遮挡大片| 国产99久久久精品| 一区二区成人在线| 精品精品国产高清一毛片一天堂| 高清免费成人av| 夜夜操天天操亚洲| 日韩精品一区二区三区视频播放| 国产一区二区三区视频在线播放| 亚洲天天做日日做天天谢日日欢| 9191成人精品久久| 国产成人综合网站| 亚洲国产视频在线| 久久综合久久综合九色| 91久久国产最好的精华液| 乱一区二区av| 亚洲精品一二三| 久久综合网色—综合色88| 色八戒一区二区三区| 国精产品一区一区三区mba视频 | 538prom精品视频线放| 国产成人免费9x9x人网站视频| 亚洲欧美福利一区二区| 欧美不卡一区二区三区四区| 色综合色综合色综合| 国内精品免费在线观看| 亚洲a一区二区| 国产精品灌醉下药二区| 日韩精品一区二区三区四区视频| 在线观看视频91| 国产成人精品免费视频网站| 青青草成人在线观看| 亚洲日本韩国一区|