static void Master_Write_Byte(void)
{
uint8_t txdata[8];
uint8_t temp = 0xaa;
txdata[0] = 0x00;
MFS_CSIOEnableSOE(MFS_Ch1);
MFS_CSIOEnableTX(MFS_Ch1);
MFS_CSIOEnableRX(MFS_Ch1);
DelayResolution100us(1);
FM_CS2 = 0;
MFS_CSIOTransferOneData(MFS_Ch1, WREN);
FM_CS2 = 1;
FM_CS2 = 0;
MFS_CSIOTransferOneData(MFS_Ch1, WRITE);
MFS_CSIOTransferOneData(MFS_Ch1, AdrrM);
MFS_CSIOTransferOneData(MFS_Ch1, AdrrL);//两个字节地址
MFS_CSIOTransferOneData(MFS_Ch1, temp);
MFS_CSIOTransferOneData(MFS_Ch1, WRDI);
FM_CS2 = 1;
DelayResolution100us(1);
MFS_CSIODisableSOE(MFS_Ch1);
}
static void Master_Read_Byte(void)
{
uint8_t rxdata_1[8] = {0,1,2,3,4,5,6,7};
MFS_CSIOEnableSOE(MFS_Ch1);
MFS_CSIOEnableTX(MFS_Ch1);
MFS_CSIOEnableRX(MFS_Ch1);
/* Wait for slave side start */
DelayResolution100us(5);
FM_CS2 = 0;
MFS_CSIOTransferOneData(MFS_Ch1, READ);
MFS_CSIOTransferOneData(MFS_Ch1, AdrrM);
MFS_CSIOTransferOneData(MFS_Ch1, AdrrL);
rxdata_1[0] = MFS_CSIOTransferOneData(MFS_Ch1, 0x00);
FM_CS2 = 1;
MFS_CSIODisableSOE(MFS_Ch1);
MFS_CSIODisableTX(MFS_Ch1);
MFS_CSIODisableRX(MFS_Ch1);
MFS_UARTTXOneData(MFS_Ch2, rxdata_1[0]);
DelayResolution100us(1);
}
这是写一个字节和读一个字节的程序。
|