ram.c
来自「C8051F020的全面应用,包括两个UART口、SPI、I2C」· C语言 代码 · 共 40 行
C
40 行
/*write 1 byte to RAM*/
void RamByteWR(uchar RowAdr, uchar ColumnAdr, uchar ramdata)
{
RAM_OE = 1;
RAMA8_14 = (RAMA8_14&0x80)|(RowAdr&0x7F);
P74OUT |= 0x30;/*P6 pull up*/
RAMD0_7 = ColumnAdr;
RAM_ALE = 1;
_nop_();
RAM_ALE = 0;
RAMD0_7 = ramdata;
RAM_CE = 0;
RAM_WE = 0;
_nop_();
RAM_CE = 1;
RAM_WE = 1;
}
/*read 1 byte from RAM*/
uchar RamByteRD(uchar RowAdr, uchar ColumnAdr)
{
uchar idata temp;
RAM_WE = 1;
RAMA8_14 = (RAMA8_14&0x80)|(RowAdr&0x7F);
P74OUT |= 0x30;/*P6 pull up*/
RAMD0_7 = ColumnAdr;
RAM_ALE = 1;
_nop_();
RAM_ALE = 0;
P74OUT &= 0xCF;/*P6 open-drain*/
RAM_CE = 0;
RAM_OE = 0;
_nop_();
RAMD0_7 = 0xFF;
temp = RAMD0_7;
RAM_CE = 1;
RAM_OE = 1;
return temp;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?