📄 复件 main.c
字号:
/**************************************
File Name: CF.c
Author: siukit
Date: 5/22/2007
***************************************/
#include "c:/mylib.h"
#define LBA0 (*(volatile unsigned short*)0x10000802)
#define LBA8 (*(volatile unsigned short*)0x10000804)
#define CMDReg (*(volatile unsigned short*)0x10000806)
#define DataReg (*(volatile unsigned short*)0x10000808)
#define StatReg 0x1000080E
#define UINT16 unsigned short
int Main()
{
int count,i;
UINT16 j,data[256];
count=0xa;
for(i=0;i<256;i++) data[i]=0;
for(;*(volatile unsigned char *)StatReg!=0x50;); //CF卡是否准备好
LBA0=(0x100|count);
LBA8=0x0;
CMDReg=0x30E0; //写,选择LBA方式
for(;*(volatile unsigned char *)StatReg!=0x58;); //是否准备好传输数据
for(j=0;j<(count-1);j++)
{
for(i=0;i<256;i++)
{
DataReg=j+1;
// DataReg=i;
}
for(;*(volatile unsigned char *)StatReg!=0x58;);
}
for(i=0;i<256;i++)
{
DataReg=0xFFFF;
// DataReg=1;
}
putstr("Write Done!\n");
printf("DataReg=%d befor read operation!\n",DataReg);
putstr("Data[256] before read:\n");
for(i=0;i<256;i++)
{
if(i%16==0) printf("\n");
printf("%4d ",data[i]);
}
for(;*(volatile unsigned char *)StatReg!=0x50;); //CF卡是否准备好
LBA0=0xa01;
LBA8=0x0;
CMDReg=0x20E0; //读,选择LBA方式
for(;*(volatile unsigned char *)StatReg!=0x58;); //CF卡是否准备好传输数据
for(i=0;i<256;i++)
{
data[i]=DataReg;
}
for(;*(volatile unsigned char *)StatReg!=0x50;); //操作是否结束
putstr("\nRead Done!\n");
for(i=0;i<256;i++)
{
if(i%16==0) printf("\n");
printf("%4d ",data[i]);
}
while(1) ;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -