Normally the data direction registers are set so that all pins are inputs by
default. This is the safest way to do things so you don't accidentally launch
a missile on power up, or whatever your DIO pins are controlling.
--- In "charliewxj" <> wrote:
>
> Hello, I just started using TS 7800 board. I just want to use DIO header to
> create a square wave. I tried to write a C code but it didn't succeed. I need
> help from all of you.
>
> #include <stdio.h>
> #include <stdlib.h>
> #include <sys/stat.h>
> #include <sys/mman.h>
> #include <unistd.h>
> #include <fcntl.h>
>
> int main(void)
> {
>
> char input;
> int fd;
> unsigned long *ptr;
> unsigned long *dr;
>
> printf("begin, square wave.\n");
>
> fd= open("/dev/mem",O_RDWR) ;
>
> ptr =
> mmap(NULL,getpagesize(),PROT_READ|PROT_WRITE,MAP_SHARED,fd,0xe8000000);
>
> dr =ptr + 0x4; // 0x4 offset
> *dr=*dr & 0x0000;
> while(1)
> {
> usleep(1000000);
> *dr= ~ *dr;
> }
>
> return 0;
> }
>
------------------------------------
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/
|