Gecko3 - CCC Event Weblog
Gecko3 - CCC Event Weblog
Gecko3 - CCC Event Weblog
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
E.1. Firmware<br />
SCLK = 0 ;<br />
82 return inputdata ;<br />
}<br />
E.1.8. Kommunikation zwischen Host und FPGA<br />
/∗ ∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗<br />
∗ Diplomwork :<br />
∗ <strong>Gecko3</strong> SoC HW/SW Development Board<br />
∗<br />
5 ∗ ( ‘ \ ( ) ( ) ( )<br />
∗ | ( ) ) | ( | | | | Berne U n i v e r s i t y o f Applied S c i e n c e s<br />
∗ | < ’| ) | | School o f Engineering and<br />
∗ | ( ) ) | | | | | | Information Technology<br />
∗ ( / ’( ) ( ) ( )<br />
10 ∗<br />
∗<br />
∗ Author : Matthias Zurbrügg<br />
∗ Date o f c r e a t i o n : 16.11.2006<br />
∗ D e s c r i p t i o n :<br />
15 ∗ Source code o f read / w r i t e waveforms f u n c t i o n s<br />
∗<br />
∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗∗ ∗/<br />
#include ” fx2 . h”<br />
20 #include ” f x 2 r e g s . h”<br />
#include ” f x 2 s d l y . h”<br />
#define GPIFREAD 4 // read b i t in GPIFTRIG r e g i s t e r<br />
#define GPIF EP6 2 // EP6 b i t in GPIFTRIG r e g i s t e r<br />
25 #define GPIF EP8 3 // EP8 b i t in GPIFTRIG r e g i s t e r<br />
BYTE temp = 0 , i ; // temporary v a r i a b l e s f o r GPIF s t a t e machine break<br />
c o n d i t i o n<br />
s t a t i c WORD FIFOBC IN = 0 x0000 ; // v a r i a b l e t h a t c o n t a i n s EP6FIFOBCH/L v a l u e<br />
s t a t i c WORD xdata Tcount = 0 x01 ; // s e t t r a n s a c t i o n count to one f o r run t h e<br />
read waveform one times<br />
30<br />
void gpif wr waveform ( void )<br />
{<br />
i f ( GPIFTRIG & 0 x80 ) // i f GPIF i n t e r f a c e IDLE<br />
{<br />
35 EP6GPIFFLGSEL = 0 x01 ; // Set GPIF FIFO f l a g i f EP2 i s empty<br />
SYNCDELAY;<br />
GPIFTRIG = GPIF EP6 ; // launch GPIF FIFO WRITE Transaction from<br />
EP6 FIFO<br />
SYNCDELAY;<br />
40 do<br />
{<br />
temp=(IOE&0x07 ) ; // read GPIF debug pins PE[ 0 : 2 ] f o r l o o k i n g t h e<br />
c u r r e n t s t a t e ( show GSTAT in TRM)<br />
i f ( temp==(IOE&0x07 ) ) // i f GPIF in t h e same s t a t e<br />
{<br />
45 for ( i =0; i