02-23-2016 03:22 AM
Hi all.
Hardware: sbRIO-9607.
1 UART is available on the board: Separate pinout on RIO, using a 10-pin header.
6 additional UARTs are available according to the 9607 manual (p.41) and the specifications (p. 3).
When looking in MAX, I can see all 7 serial interfaces, and I can open VISA Test Panel. But how is this possible, when I haven’t assigned any pins for the ports? As I read the manual, only port1 has predefined pins and is exposed to the RT target. The other 6 serial ports are only accessible through the FPGA using a CLIP. But then – how come it is possible to use the VISA Test Panel…?
The limitation is, for a given FPGA target, you must use either the digital I/O method or the socketed CLIP method for all 96 DIO lines (manual p. 40). I’m very unfamiliar with the CLIP method, so I was hoping not to use that method. It could seem like, all 7 UARTs are already exposed to the RT, thus not making it nessesary to design a CLIP…?
When using a VISA Open in a RT VI, I can see all 7 serial ports. But how do I know which pins to use to connect anything to the serial ports (besides Serial1)?
I hope you can help me getting started with using the UARTs on my board 🙂
NI sbRIO-9607 User Manual
www.ni.com/pdf/manuals/375463a.pdf
NI sbRIO-9607 Specifications
http://www.ni.com/pdf/manuals/375277a.pdf
02-23-2016 03:25 AM
As a sidenote, I tried to use the folloing commands in a terminal on the Linux target:
Command: dmesg
[ 0.330572] 80000000.serial: ttyS0 at MMIO 0x80000000 (irq = 62, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
[ 0.330900] of_serial 80000010.serial: FAILED to find out alias id
[ 0.331431] 80000010.serial: ttyS1 at MMIO 0x80000010 (irq = 63, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
[ 0.331748] of_serial 80000020.serial: FAILED to find out alias id
[ 0.332246] 80000020.serial: ttyS2 at MMIO 0x80000020 (irq = 64, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
[ 0.332551] of_serial 80000030.serial: FAILED to find out alias id
[ 0.333090] 80000030.serial: ttyS3 at MMIO 0x80000030 (irq = 65, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
[ 0.333404] of_serial 80000040.serial: FAILED to find out alias id
[ 0.333437] 80000040.serial: ttyS4 at MMIO 0x80000040 (irq = 66, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
[ 0.333747] of_serial 80000050.serial: FAILED to find out alias id
[ 0.333781] 80000050.serial: ttyS5 at MMIO 0x80000050 (irq = 67, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
[ 0.334087] of_serial 80000060.serial: FAILED to find out alias id
[ 0.334120] 80000060.serial: ttyS6 at MMIO 0x80000060 (irq = 68, base_baud = 3676500) is a NI 16550 (with 128-byte FIFOs)
Command: ls -l /dev/ttyS*
crw-rw---- 1 admin tty 4, 64 Feb 23 08:41 /dev/ttyS0
crw-rw---- 1 admin tty 4, 65 Feb 23 08:41 /dev/ttyS1
crw-rw---- 1 admin tty 4, 66 Feb 23 08:41 /dev/ttyS2
crw-rw---- 1 admin tty 4, 67 Feb 23 08:41 /dev/ttyS3
crw-rw---- 1 admin tty 4, 68 Feb 23 08:41 /dev/ttyS4
crw-rw---- 1 admin tty 4, 69 Feb 23 08:41 /dev/ttyS5
crw-rw---- 1 admin tty 4, 70 Feb 23 08:41 /dev/ttyS6
So, to me, it seems like the RT target can see all 7 UARTs? But nit showing the pin assignment?