既然62256是外扩的数据存储器为什么还要申明unsigned char temp[30]呢?它不还是要占用单片机内部的ram 空间吗? #include<reg52.h> #include<intrins.h> #include<absacc.h> #define uchar unsigned char #define nop() _nop_() unsigned char xdata *add;//这里定义是一定要注意数据类型,这里的类型是指地址里的内容的数据类型 unsigned char temp[30]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x40,0x41,0x42,0x43}; sbit WE=P3^6; sbit OE=P3^7; sbit CS=P2^7; void write() { uchar i; add=0x4000;//数据存储的起始地址 for(i=0;i<14;i++)//连续存储14个数据 { *add=temp; add++; } } void read() {uchar i,t; add=0x4000; //读取数据的起始地址 for(i=0;i<14;i++)//连续读取14个数据 { t=*add; add++; } } void main() { write(); read(); while(1); }
|