Love Python, however I am a dyed-in-the-wool GCC C/C++ programmer for
decades.My question has to do with GCC.
OK, I realized that I needed to configure the BBB R3 so that its P8 and P9
pins were set for UART (got that far myself). I kind of took an overkill
approach.
What I did was I copied uEnv.txt from /boot to /boot/uboot (tell me if I
did this right...does the supplied OS read uEnv.txt from there...everytime
I tried modifying the original /boot/uEnv.txt it told me it was a read-only
filesystem) ? Then in /boot/uboot/uEnv.txt I put the line in:
cape_enable=bone_capemgr.enable_partno=BB-UART1,BB-UART2,BB-UART3,BB-UART4,BB-UART5
(I just thought I'd turn them all on...I have a big project I'm working on)
I was thinking that these would map over to ttyO1 thru ttyO5. Correct? Tell
me if this doesn't do this as my program isn't working.
Then I came out with a shell script (that I call uart.sh) that has this in
it:
config-pin overlay cape-universal
config-pin P9.21 uart
config-pin P9.22 uart
config-pin P9.24 uart
config-pin P9.26 uart
....made it executable and ran that. So I'm thinking my board is really
UART-ized.
Now here's the question. I have a C program that transmits over ttyO1 and
receives on ttyO2, and I put a physical jumper between p9.22 (UART2 RX) and
p9.24 (UART1 TX). However I can't get it to work.
Here is some code snippets from the C source code.
I open the ports using code like this:
int fd1, fd2;
open_ports()
{
fd1 = open("/dev/ttyO1", O_RDWR | O_NOCTTY | O_NDELAY);
fd1 = open("/dev/ttyO2", O_RDWR | O_NOCTTY | O_NDELAY);
etc. etc.
and here is my main code:
main()
{
int n;
char buf[255];
int res=0;
open_ports();
printf("Ports /dev/ttyO1 and /dev/ttyO2 opened\n\n");
fcntl(fd2, F_SETFL, 0); //set up receive for BLOCKING
n = write(fd1, "COMMAND STRING\n", 4);
if (n < 0)
fputs("write() of 4 bytes failed!\n", stderr);
// fflush(NULL);
printf("Receiving command...\n");
res=read(fd2,buf,255);
printf("Received Command: %s\n",buf);
}
DOESN'T WORK. Ouchies. Any ideas...I'm all ears. Thanks in advance.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/beagleboard/8c1c8d88-2edb-4b8f-9530-6328399c9e66%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.