Root/Examples/ehw4/src/test/jz_test_gpio.c

1/*
2  JZ47xx test gpio
3
4  Copyright (C) 2010 Andres Calderon andres.calderon@emqbit.com
5                          Carlos Camargo cicamargoba@unal.edu.co
6                                 
7This program is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program; if not, write to the Free Software
19Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
20
21#include <stdio.h>
22#include <unistd.h>
23
24#include "jz47xx_gpio.h"
25
26//#define TEST_PORT JZ_GPIO_PORT_C
27//#define TEST_PIN 17
28
29int
30main (int argc,char *argv[])
31
32{
33  int TEST_PORT, TEST_PIN;
34
35  if(argc != 3){
36    fprintf(stderr,"\nUsage: %s TEST_PIN_PORT(A=0, B=1, C=2, D=3) TEST_PIN \n",argv[0]);
37  }
38
39  TEST_PORT = JZ_GPIO_PORT_C;
40  TEST_PIN = 17;
41  JZ_PIO *pio = jz_gpio_map (TEST_PORT);
42
43  if (!pio)
44    return -1;
45
46  jz_gpio_as_output (pio, TEST_PIN);
47
48  int tg = 1;
49
50  while (1)
51    {
52      jz_gpio_out (pio, TEST_PIN, tg);
53      printf ("[%d]", jz_gpio_get_pin (pio, TEST_PIN));
54      fflush (stdout);
55      usleep (500 * 1000);
56      tg = !tg;
57    }
58  return 0;
59}
60

Archive Download this file

Branches:
master



interactive