阅读:1319回复:5
20请教对sl811内部寄存器的寻址方法
读了相关芯片介绍,知道对sl811内部寄存器的寻址方法有A0 mode(index addressing) 和direct address两种,在A0 mode 下,讲到
A0为低时,写入地址,A0为高时,写入数据.那位兄弟说说这个的具体实现方法,A0指的又是什么? 还有用仿真器可以查看到sl811内部的寄存器数值吗? |
|
沙发#
发布于:2003-12-24 08:09
自己顶下
|
|
板凳#
发布于:2003-12-24 08:41
A0是811的引脚,你看仔细了吗?
|
|
地板#
发布于:2003-12-24 09:05
这个我知道的呀 我想知道A0的改变是怎样实现的,在写数据时的子程序
如下 void SL811Write(unsigned char a, unsigned char d) { SL811H_ADDR=a; SL811H_DATA=d; } 我不知道在这过程中,A0由什么控制其值的改变. |
|
地下室#
发布于:2003-12-24 09:22
请注意这样一段预定义:
xdata BYTE SL811H_ADDR _at_ 0x4000; // A0 = \'0\' to external memory xdata BYTE SL811H_DATA _at_ 0x4001; // A0 = \'1\' (EZ-USB Dev Kit - SW4 ON) 最后那一位就是A0,是直接用I/O控制的,你自己的程序可以用一个I/O来控制它就行了。 我用的是430,没有并口功能,所以我用软件来做: //***************************************************************************************** // Output the Address to the 8-bit Data Bus ----------- //***************************************************************************************** void OutPortAddr(uchar Addr) { CS1_0; //Chip select A0_0; //A0 set to low, bus data is address PortOut; //set the port output! DataOut=Addr; //set the address to bus WR_0; //write enable the data read by the device nop; WR_1; //write disable,stop bus data A0_1; CS1_1; } //***************************************************************************************** // Output one byte data to the 8-bit Data Bus --------- //***************************************************************************************** void OutPortData(uchar Data) { CS1_0; A0_1; //A0 set to high,bus data is date PortOut; //set the port output DataOut=Data; //set date to bus nop; WR_0; nop; WR_1; CS1_1; } //***************************************************************************************** // Byte Write to SL811H // a = register address // d = data to be written to this register address //***************************************************************************************** void SL811Write(BYTE a, BYTE d) { OutPortAddr(a); OutPortData(d); } 应该很清楚了吧,我也在做SL811,并口没有问题,我写SRAM已经成功了,USB部分正在做,一起努力吧。 |
|
5楼#
发布于:2003-12-24 09:48
谢谢各位 发分了 以后多交流.我做的是读写u盘
|
|