久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

8051單片機操作K9KF5608 FLASH存儲器程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2013年11月01日   【字體:

//-----------------------函數聲明,變量定義--------------------------------------------------------
#include <reg51.h>
#include <stdio.h>
#include <intrins.h>
#include <reg51.h>
sbit FLASH_CLE=P1^0;
sbit FLASH_ALE=P1^1;
sbit FLASH_WE=P1^2;
sbit FLASH_WP=P1^3;
sbit FLASH_CE=P1^4;
sbit FLASH_RD=P1^5;
sbit FLASH_RB=P1^6;
void WriteCommand(unsigned char command);
void WriteAddress(
unsigned char H_ADR, //A16~A23 列地址
unsigned char M_ADR, //A8~A15
unsigned char L_ADR //A0~A7 行地址
);
void WRITEBYTE(unsigned char Wdata); //寫一個數據到FLASH
unsigned char READBYTE(); //從FLSAH讀一個數據
void REC_data_process(unsigned char Rdata); //接收數據處理,讀一頁時,每讀一次處理一次
void READ_onepage1(); //連續讀一頁數據(528字節)
//--------------------------------------------------------------------------------------------------
// 函數名稱: WriteCommand
// 入口參數: command命令字
// 函數功能: 寫命令字,開始各種操作
//--------------------------------------------------------------------------------------------------
void WriteCommand(unsigned char command)
{
FLASH_ALE=0;
FLASH_CE=0;
FLASH_CLE=1;
FLASH_WE=0;
P0=command;
FLASH_WE=1;
FLASH_CLE=0;
FLASH_ALE=1;
}
//--------------------------------------------------------------------------------------------------
// 函數名稱: WriteAddress
// 入口參數: H_ADR,M_ADR,L_ADR 行列地址
// 函數功能: 寫地址
//--------------------------------------------------------------------------------------------------
void WriteAddress(
unsigned char H_ADR, //A16~A23 列地址
unsigned char M_ADR, //A8~A15
unsigned char L_ADR //A0~A7 行地址
)
{
FLASH_WE=1;
FLASH_CE=0;
FLASH_CLE=0;
FLASH_ALE=1;
FLASH_WE=0;
P0=L_ADR;
FLASH_WE=1;
_nop_();
FLASH_WE=0;
P0=M_ADR;
FLASH_WE=1;
_nop_();
FLASH_WE=0;
P0=H_ADR;
FLASH_WE=1;
_nop_();
FLASH_ALE=0;
}
//--------------------------------------------------------------------------------------------------
// 函數名稱: WRITEBYTE
// 入口參數: Wdata要寫入 FLASH的數據
// 函數功能: 寫一個數據到FLASH
//--------------------------------------------------------------------------------------------------
void WRITEBYTE(unsigned char Wdata) //寫一個數據到FLASH
{
FLASH_WE=1;
FLASH_CLE=0;
FLASH_CE=0;
FLASH_ALE=0;
FLASH_WE=0;
_nop_();
P0=Wdata;
_nop_();
FLASH_WE=1;
}
//--------------------------------------------------------------------------------------------------
// 函數名稱: READBYTE
// 出口參數: Rdata從FLASH讀出的數據
// 函數功能: 從FLSAH讀一個數據
//--------------------------------------------------------------------------------------------------
unsigned char READBYTE() //從FLSAH讀一個數據
{
unsigned char Rdata;
FLASH_WE=1;
FLASH_CLE=0;
FLASH_ALE=0;
FLASH_CE=0;
FLASH_RD=0; //準備好讀入
_nop_();
_nop_();
while(!FLASH_RB)//當讀信號無效時,等待
{
}
Rdata=P0; //把P0口讀出的值存入ACC寄存器
//插入2個機器周期
_nop_();
_nop_();
FLASH_RD=1; //不再讀入
return(Rdata);
}
unsigned char READ_Status()
{
unsigned char Status;
WriteCommand(0x70);
Status=READBYTE();
return(Status);
}
//--------------------------------------------------------------------------------------------------
// 函數名稱: READ_onepage1
// 調用函數: WriteCommand
// WriteAddress
// REC_data_process();每接收一個數據,處理
// 函數功能: 連續讀一頁數據(528字節)
//--------------------------------------------------------------------------------------------------
void READ_onepage1() //連續讀一頁數據(528字節)
{
unsigned char d=528;
unsigned char Rec_data;
WriteCommand(0x00); //寫讀的命令0x00或0x01
WriteAddress(0x00,0x00,0x00); //寫讀的地址
while(d>0)
{
Rec_data=READBYTE();
REC_data_process(Rec_data);
d--;
}
FLASH_CE=1;
}
//--------------------------------------------------------------------------------------------------
// 函數名稱: REC_data_process
// 入口參數: Rdata按頁讀時,每次讀回的數據
// 函數功能:接收數據處理,讀一頁時,每讀一次處理一次
//--------------------------------------------------------------------------------------------------
void REC_data_process(unsigned char Rdata) //接收數據處理,讀一頁時,每讀一次處理一次
{
}

關閉窗口

相關文章

主站蜘蛛池模板: 午夜免费在线观看 | 国产精品视频网址 | 色婷婷一区二区三区四区 | 亚洲性人人天天夜夜摸 | 国产精品久久久亚洲 | 国产ts人妖系列高潮 | 看a网站| 国产精品毛片一区二区在线看 | 日韩中文字幕在线观看视频 | 激情综合五月 | 日韩免费一区二区 | 欧美色综合网 | 日韩欧美1区2区 | 国产精品18hdxxxⅹ在线 | 久久国产精品一区二区三区 | 日韩精品在线观看一区二区三区 | 亚洲免费影院 | 91精品国产91久久久久久密臀 | 亚洲视频国产 | 亚洲精品一 | 91精品久久久久久久久久小网站 | 日韩视频在线免费观看 | 国产在线播放一区二区三区 | 亚洲精品欧美一区二区三区 | 激情久久久久 | 99免费精品视频 | 久久精品日产第一区二区三区 | av超碰| 亚洲日本一区二区三区四区 | 欧美精品国产精品 | 成人毛片网 | 99这里只有精品视频 | 国产乱码精品一区二区三区中文 | 亚洲国产精品一区二区久久 | 午夜精品久久久 | 在线久草| 99在线免费观看 | 6080yy精品一区二区三区 | 亚洲一二三在线观看 | 91在线精品视频 | 欧美理论 |