按照你上面的描述的話,你的地址是算錯的,應(yīng)該是8000為375的片選地址,你可以將原理圖發(fā)到TECH@WCH.CN,我們可以幫你看下原理圖,從而判斷你的地址是否正確
已經(jīng)發(fā)到你們的郵箱中去了,盼望指教。
以下程序通過測試,讀出P1口的值為0x05,說明地址是從0x8000開始,外部RAM地址沒有設(shè)置錯誤,但就是運行不了,郁悶啊 #include #include #include #define uchar unsigned char #define uint unsigned int
sfr AUXR=0x8e; uchar xdata *p; void write(); void read(); void delay();
void main() { AUXR=0x02; // P1=0xaa; write(); // P1=0xbb; while(1) read(); // while(1); }
void write() {unsigned int j; p=0x8000; for(j=0;j<5000;j++) {*p=0x05; _nop_(); _nop_(); p++; } }
void read() { p=0x8000; P1=*(p+4000); delay(); }
void delay() {uint i; for(i=60;i>0;i--); }
我說的運行不了是指U盤讀寫不了啊,希望大家不要誤會,急啊
大哥們,幫忙啊,指導(dǎo)一下,這種現(xiàn)象一般都有哪些原因啊,小弟很急啊
莫名其妙成功了,CH375EVT中Exam1中的程序查詢磁盤物理容量的程序是注釋起來的,我把注釋符號去掉,竟然就能讀出來了,奇怪啊,下面是串口傳回來的數(shù)據(jù),這樣應(yīng)該表示成功了吧 Wait UdiskReady ? DiskSize TotalSize = 983 MB Open Read Size=8, Len=8, Sec=1 Close Line 1: aabbccdd Create Write Modify Close Take out