コード例 #1
0
ファイル: helloworld_io.c プロジェクト: JoeyBytes/PPM
void read_from_mp(void){
	// Read data:
	MP_DATA = XIOModule_DiscreteRead(&gpio, 1);

	if(MP_DATA & 0x80000000){ // if MP_VALID is high
		u8 index = (u8)((MP_DATA & 0x3F000000)>>24);  // store data into buffer
		buffer[index] = MP_DATA & 0x00FFFFFF;

		IO_DATA |= 0x40000000;  // raise IO_ACK

		XIOModule_DiscreteWrite(&gpio, 1, IO_DATA);
	}
コード例 #2
0
ファイル: helloworld.c プロジェクト: shohei/papilio-book
int main()
{
    u32 uDevId = XPAR_IOMODULE_0_DEVICE_ID;
    XIOModule mcsIOMdule;
    u8 read_data_8;
    u8 read_data_8_old;
    init_platform();
    XIOModule_Initialize(&mcsIOMdule, uDevId);
    print("Hello World + GPIO \n\r");
    while(1){
      read_data_8 = XIOModule_DiscreteRead(&mcsIOMdule, 1);
      if( read_data_8 !=  read_data_8_old){
        XIOModule_DiscreteWrite(&mcsIOMdule, 1, read_data_8);
        xil_printf("sw %02x\n\r",read_data_8);
        read_data_8_old = read_data_8;
      }
    }
    return 0;
}