ts-7000
[Top] [All Lists]

Re: [ts-7000] test TS7300 DIO1 Header

To:
Subject: Re: [ts-7000] test TS7300 DIO1 Header
From: "Eddie Dawydiuk" <>
Date: Fri, 29 Sep 2006 08:37:36 -0700 (MST)
Hello,

> I've made a small program to test the i/o of the DIO1 header on my
> TS7300 on output mode. I generate a 0.5Hz signal on each port, and the
> result is :

It looks like you are driving every bit in portb,e,c,& f high then low.
You should only be modifying the bits that correspond to the GPIO pins.

//Eddie

> Pin 1  : DIO_0 (PortB.0) : no signal
> Pin 3  : DIO_1 (PortB.1) : no signal
> Pin 5  : DIO_8 (PortF.1) : signal ok
> Pin 7  : DIO_3 (PortB.3) : no signal
> Pin 9  : DIO_4 (PortB.4) : no signal
> Pin 11 : DIO_5 (PortB.5) : signal ok
> Pin 13 : DIO_6 (PortB.6) : signal ok
> Pin 15 : DIO_7 (PortB.7) : signal ok
>
> Pin 2  : gnd
> Pin 4  : EXT_RESET
> Pin 6  : SPI_frame
> Pin 8  : ADC4
> Pin 10 : SPI_miso
> Pin 12 : SPI_mosi
> Pin 14 : SPI_clk
> Pin 16 : +3.3V
>
> Why the DIO_1, DIO_3 and DIO_4 doesn't work in output ?
>
> This is my test program :
>
> #include <unistd.h>
> #include <sys/types.h>
> #include <sys/mman.h>
> #include <stdio.h>
> #include <fcntl.h>
> #include <string.h>
>
> int main(int argc, char ** argv)
> {
>       volatile unsigned int * PBDR, *PBDDR, *PEDDR, *PEDR,
>                          *PFDDR,*PFDR,*PCDDR,*PCDR;
>
>       unsigned char * start;
>
>       int fd = open("/dev/mem", O_RDWR);
>       start = mmap(0, getpagesize(), PROT_READ|PROT_WRITE,
>                MAP_SHARED, fd,0x80840000);
>
>       PBDR = (unsigned int * ) (start + 0x04);
>       PBDDR = (unsigned int * ) (start + 0x14);
>       PEDR = (unsigned int * ) (start + 0x20);
>       PEDDR = (unsigned int * ) (start + 0x24);
>       PFDR = (unsigned int * ) (start + 0x30);
>       PFDDR = (unsigned int * ) (start + 0x34);
>       PCDR = (unsigned int * ) (start + 0x08);
>       PCDDR = (unsigned int * ) (start + 0x18);
>
>       *PBDDR = 0xFF; // all output
>       *PEDDR = 0xFF; // all output
>       *PCDDR = 0xFF; // all output
>       *PFDDR = 0xFF; // all output
>
>       while(1)
>       {
>               *PBDR = 0xFF; // all à 1
>               *PEDR = 0xFF; // all à 1
>               *PCDR = 0xFF; // all à 1
>               *PFDR = 0xFF; // all à 1
>               sleep(1);
>               *PBDR = 0x00; // all à 0
>               *PEDR = 0x00; // all à 0
>               *PCDR = 0x00; // all à 0
>               *PFDR = 0x00; // all à 0
>               sleep(1);
>       }
> }
>
>
>
>
>
>
>
>
>
>
>
> Yahoo! Groups Links
>
>
>
>
>
>
>
>
>
>
>

--


Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/ts-7000/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/ts-7000/join
    (Yahoo! ID required)

<*> To change settings via email:
    
    

<*> To unsubscribe from this group, send an email to:
    

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/

<Prev in Thread] Current Thread [Next in Thread>
Admin

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU