OpenCores
URL https://opencores.org/ocsvn/ft2232hcore/ft2232hcore/trunk

Subversion Repositories ft2232hcore

[/] [ft2232hcore/] [trunk/] [nios_test_app/] [main.cpp] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 wes314
 
2
#include <stdio.h>
3
#include <unistd.h>
4
 
5
#include "hardware/usb_sync/usb_sync.h"
6
 
7
 
8
 
9
int main(void)
10
{
11
        printf("Started...\n");
12
 
13
 
14
        // Setup tx buffer with our sequence
15
        uint8_t buffer[1024];
16
 
17
        for (uint32_t i = 0; i < sizeof(buffer); i++)
18
                buffer[i] = (uint8_t) (i & 0xFF);
19
 
20
 
21
        int errors = 0;
22
        unsigned char sequence = 0;
23
        unsigned char tx_byte = 0;
24
        bool initialised = false;
25
 
26
        while (true)
27
        {
28
                // Check the driver's RX FIFO
29
                if (usb_kbhit())
30
                {
31
                        uint8_t c = usb_getch();
32
 
33
                        sequence++;
34
 
35
                        if (!initialised)
36
                        {
37
                                sequence = c;
38
                                initialised = true;
39
                        }
40
 
41
                        if (c != sequence)
42
                        {
43
                                errors++;
44
                                printf("Sequence errors: %d\n", errors);
45
                                sequence = c;
46
                        }
47
                }
48
 
49
                // Fill the driver's TX FIFO
50
                while (USB_TX_FREE >= (uint32_t) sizeof(buffer))
51
                        for (uint32_t i = 0; i < (uint32_t) sizeof(buffer); i++)
52
                                USB_DATA_WR(tx_byte++);
53
        }
54
 
55
        return 0;
56
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.