Hi Hatam,
You're messages were pending moderation - I've changed your status
now so future posts should come through without moderation...
A quick look at your code, the only thing I see is that you are not
mapping on a page boundary...
> start = mmap(0, getpagesize(), PROT_READ|PROT_WRITE, MAP_SHARED,
fd,
> 0x80840004);
Try:
start = mmap(0, getpagesize(), PROT_READ|PROT_WRITE, MAP_SHARED, fd,
0x80840000);
Then add 4 as an offset.
Regards,
PJE
--- In "Hatem Mohamed" <> wrote:
>
> Hi every body
> I have Ts-7300 , I wrote this C code on it and it is compiled
successfully
> but when I tried to execute the file I get this message "
segmentation
> fault "
> all I wanted from this code was to make pins from Dio0 ~ Dio7 all
zeros.
>
> #include<unistd.h>
> #include<sys/types.h>
> #include<sys/mman.h>
> #include<stdio.h>
> #include<fcntl.h>
> #include<string.h>
> int main()
> {
> volatile unsigned char *P1DR;
> unsigned char *start;
> int fd = open("/dev/mem", O_RDWR);
> start = mmap(0, getpagesize(), PROT_READ|PROT_WRITE, MAP_SHARED,
fd,
> 0x80840004);
> P1DR = (unsigned char *)(start + 0x00);
> *P1DR=0x00;
> close(fd);
> return 0;
> }
>
>
> that was my first question
>
> the second question
>
> can I make any pin in the 55 Dio zero or one alone I mean is there
any
> function can do that directly ??
>
> --
> Hatem Mohamed
>
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/
|