Hello,
Do you know where I can get my hand on a full documentation about the TWR-VF65GS10 ?
I would like to know precisely the roles of each pin, how to adress each of them, how to properly configure the four I²C channels, the CAN, how to upload a program onto the board, etc.
I could only find schematics of the board that do not specifically explain what all the side pins are connected to, and the quick start guide that explains how to debug.
I know this must sound silly but I could not find what I was looking for on the website.
Thank you very much for your help.
Best Regards
Solved! Go to Solution.
If they are not routed on the board how can I use them (for I2C2 and IC3) ?
What I find very strange is that we have the I2C0 on PTB14 and PTB15, but at the same time, on the board schematic, pins A47 and A48 (noted CAN1 in blue) seem to be dedicated to CAN0 but are also PTB14 and PTB15.
Meanwhile, on pins B41 and B42 (noted CAN0 in blue), we have the CAN1 (that could also be used for I2C1 as you said).
How can we have at the same time the I2C0 and the CAN0 on PTB14/15, and why is the CAN0 referenced as CAN1 in blue, and the CAN1 referenced as CAN0 ?
I'm not sure I'm being very clear
Regarding CAN0 vs CAN1, you're right - they're swapped. I don't know why they did this. This is indeed odd.
You cannot use I2C0 and CAN0 at the same time on PTB14/15, but nothing prevents you from using either one.
Ok thank you. So basically I can use I2C0 and I2C1 if I configure the vybrid correctly, but I still dont understang how to reach I2C2 and I2C3.
For some peripherals, you are not going to be able to use them as they are used for other chips on the board like the NAND, etc.
The way to figure this out is to look at the desired function in the Vybrid Reference manual or datasheet and see what pins are not used by other peripherals. Then see if they are connected to an elevator pin. Then from there, search to find out if they are connected on another board (if you have the elevators and other boards).
Ok so if they are connected to elevator pins, but are used for function other than I2C, I can still configure them to operate as I2C?
For instance:
In the RM, it is indicated that I2C2 can be found at PTA22, 23. Those are connected to elevator pins A25 and A59 and seem to be used for SAI2_RX but if I want I can configure them to operate as I2C2.
for the I2C3 it can be found at PTA30,31 which are connected to elevator pins B33 and B34 and used for TMR2 and TMR3, but I can configure them to operate as I2C3.
Correct or did I get this wrong and I2C2 and 3 are used for other chips and cannot be used for external applications?
Correct. Each Vybrid pin has up to 8 choices of available pin function settings. See 4.1 Pinouts in Vybrd Reference Manual.
Each Vybrid pin has dedicated IOMUXC register, which you need to set up to use pin with required peripheral. For example PTA22 pin can act as GPIO12 or TRACED6 or SAI2 RX_DATA or I2C2 SCL or TCON0, just check IOMUXC_PTA22 register description.
Thank you.
Another question: is it possible to use simultaneously the 4 I2C channels and a CAN channel?
If I look at the schematics, I see the I2C0 and I2C1 use the same pins as CAN0 and CAN1. Since, in the presentation document of the tower, they say there are only 2 CAN, I first thought it was impossible to use at the same time all the I2C and a CAN, but then I also saw in the schematics the presence of a CAN2 (pins D41,42) and CAN3 (pins C47,48).
However, in the the Vybrid reference manual, I see absolutely no reference to a CAN2 or CAN3 (only CAN0 and CAN1), so I do not really know what to think.
CAN0 and CAN1 seem being fixed to pins PTB14-PTB17. I2C3 is also fixed to PTA30-PTA31. But all other I2C's have more than one choice of output pins. Certainly one can make PCB with 4x I2C and 1x CAN. Regarding Vybrid Tower board, you need to open table in 4.1 Pinouts, open Vybrid card schematics and try figuring if required configuration is possible.
What I mostly need from this card is:
- 4 I2C bus, two of which are used to communicate with 2 LCD screens
- 1 CAN bus
- 1 ADC
- 3 GPIO
So if I use the pins as following:
CAN0: PTB14,15 (pins A47 and A48)
I2C0: PTE 19,20 (pins D54 and C62)
I2C1: PTB 16,17 (pins B41 and B42)
I2C2: PTA 22,23 (pins A24 and A59)
I2C3: PTA 30,31 (pins B34 and B33)
ADC: PTC 30 (pin B29)
GPIO: pins D16, D17, D18 (not connected to any PTx)
This should work right?
Almost good, but you need to search through whole Vybrid Tower card schematic, not just Vybrid pins and PCI-E connectors. Open schematics PDF, press Ctrl+F and enter first pin from the list, PTB14. First match is Vybrid pin, next 3 instances are on Primary side connector, next one is on Secondary connector, then J15 connector. J15 is probably OK, unless you insert there something. And the next search result is problematic, it is on board accelerometer chip. You may cut track to it, remove chip, or try finding better set of pins. The same should be repeated for all pins you are going to use.
Hello,
so if I understand you correctly, PTB14 is actually not an available I2C channel, since it is already used by the accelerometer to communication with the processor?
So basically there is no way of using this pin if I do not cut the track to the accelerometer or remove the chip?
Yes, but since PTB14 and PTB15 are accelerometer I2C wires, perhaps accelerometer won't disturb your I2C communications if you use PTB14/PTB15 for I2C. Since CAN's are not routeable to other pins, this suggests you checking if you could use CAN1 for CAN.
Ok lets imagine the accelerometer will not disturb my I2C wires.
So I changed the selection of some of the pins:
CAN1: PTB 16,17 (pins B41 and B42)
PTB16,17 are also used for a push buttons but that should not be a problem if I do not touch those buttons
I2C0: PTB14,15 (pins A47 and A48)
lets hope the accelerometer does not mess things up
I2C1: PTE 27,28 (pins C52 and C53)
These pin do not seem to be used for anything else
I2C2: PTA 22,23 (pins A24 and A59)
these pins are also connected to J11 but if I do not plug anything in it it should be fine.
I2C3: PTA 30,31 (pins B34 and B33)
These pins are also connected to J11, and seem to be also related to IRQs, but if I configure the IOMUXC correctly it should work.
ADC: PTC 30 (pin B29)
This pin is connected to the board's potentiometer so I should find another one: would pin A27 work ?
GPIO: pins D16, D17, D18 (not connected to any PTx)
Would this pin selection work?
Thank you so much for taking the time to help me out.
I think you are on the right track.
I added another I2C device without cutting traces to the on-board accelerometer. The new devices I added live at a different address, so there were no conflicts. Check the datasheet of the new I2C device you want to add - I bet it also lives at a different address.