For your info, I am using:-
1) FPGA V4(ML401)
2) ISE 9.2
I am currently doing a project where the user will press a button and this will send the data to the hyperterminal. Later the system will receive the data and trigger the LED. Below is a simple diagram.
If press GPIO_North , LED_North will trigger
If press GPIO_South , LED_South will trigger
PUSH_BUTTON (GPIO_NORT) ==> UART(Send) ==> HYPERTERMINAL (0x1) ====> UART(Receive) ==> LED(LED_North)
PUSH_BUTTON (GPIO_NORT) ==> UART(Send) ==> HYPERTERMINAL (0x2) ====> UART(Receive) ==> LED(LED_South)
After reading EDK API , I understand how abit about the code.Below is what I know (coreect me if I am wrong)
1) For LEDs
XGpio_SetDataDirection (LED_instance, CHANNEL, DIRECTION); //In direction is 0x1, Out direction is 0x0
XGpio_DiscreteWrite (LED_instance,CHANNEL , LED);
LED = 0x1 , trigger first LED pin in UCF
LED = 0x2 , trigger second LED pin in UCF
LED = 0x4 , trigger third LED pin in UCF
LED = 0x8 , trigger fourth LED pin in UCF
2) For Push-Buttons
XGpio_SetDataDirection (Button_instance, CHANNEL, DIRECTION); //In direction is 0x1 , Out direction is 0x0
XGpio_DiscreteRead (Button_instance,CHANNEL );
// Is this correct, or should I insert PUSH_BUTTON
XGpio_DiscreteRead (Button_instance,CHANNEL, PUSH_BUTTON );
3) For UART
XUartLite_SendByte (UART_BASEADDR_ID , DATA ); //Send Data to Hyperterminal
XUartLite_RecvByte(UART_BASEADDR_ID); //Receive Data from Hyperterminal
My problem :-
1) For DiscreteRead in Push-Button, how does the system knows which button I clicked or pressed? Is the code is wrong ? If wrong , how should I write?
2) I want to do a program.When I click a button, the particular LED must be triggered. I do not know how to combine the LED with the PUSH-BUTTON. How should I write the code?
3) For UART, how can I write a code to receive a string from the hyperterminal?
Is there any reference that I can study?