GT16A pin connections

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

GT16A pin connections

跳至解决方案
888 次查看
woohoo
Contributor I

Hi,

 

I am currently trying to interface a LD1100 laser driver from Thorlabs (http://www.thorlabs.com/thorproduct.cfm?partnumber=LD1100), to a GT16A micro, but am unsure of a few connections. Firstly there is an on/off control that is controlled by an open-collector, bipolar transistor. I have selected a BC817-25 transistor and have connected as shown below. Is the connection correct and would I need a resistor?

2378_2378.jpgTransistor.jpg

Secondly, the gain is adjusted by connecting several resistors to ground. These resistors  interface with the GT16A through several pins from the LD1100 module. Can I connect each pin directly to the micro through a GPIO and the pull the GPIO pin high or low depending upon whether I want to ground the appropriate pin?

 

Thanks for all the help!

标签 (1)
标记 (2)
0 项奖励
回复
1 解答
579 次查看
Derrick
NXP Employee
NXP Employee

Hi Oliver,

I recommend putting a current limiting resistor in series between the MCU's port pin and the base of the the transistor.  Otherwise the transistor's PN junction will effectively short the MCU's output to ground (with a diode drop).  That won't be very healthy for either the MCU nor the transistor.  The value for this resistor depends upon the desired collector current and the gain of the transistor.  But be careful not to exceed the MCU's maximum output current rating for the port pin.  I suggest using a value of 2.2k ohm or greater.

As for the gain adjusting resistors (RA to RE), based upon the information provided for the LD1100 it looks to me that you should be safe tying these directly to the MCU's port pins.  But please verify this first.  Even although the supply voltage on the anode of the laser diode is specified for 8-12V - which is far too high for the MCU - the common node for these resistors appears to be connected to the inverting input of an opamp.  Its corresponding non-inverting input appears to be tied to a potentiometer that ranges from 0 to 2.5V.  So the resistors' common node should never exceed 2.5V (provided, of course, that the circuit is operating properly).  I recommend that you verify this before making any connections to the MCU as I don't know the accuracy of the schematic.  Simply apply power and vary the potentiometer while monitoring the resistors' common node with a 'scope.  If the schematic is correct, the voltage on the resistors' common node should track that on the wiper of the potentiometer and never get higher than 2.5V.  However, if you find that this voltage exceeds the MCU's VDD supply then you should not connect the MCU directly to these resistors.

Assuming that the voltage on the resistors' common node never exceeds 2.5V, you can connect the other end of each resistor to a separate MCU port pin.  From a software perspective, I recommend controlling these resistors via the port's Data Direction register (not the Data register) as I believe that putting VDD on these resistors will cause unexpected circuit operation.  Initially, these port pins will be configured as inputs which essentially tri-states the pins.  If you configure the port data register bits to drive the pins low, you can then control each output between tri-state and ground by manipulating the port's Data Direction register.

With a maximum of 2.5V on one side, the current through RE can be as high as 2.5mA.  I recommend using Port C as it is specified for higher current capability.  This is really only necessary for the port pin tied to RE and then only if the trim potentiometer is set for higher than 2.0V.  Otherwise, any port pin will do.  For the purpose of an example, let's connect the RA to RE resistors to the MCU's PTC[4:0].  Here's how you would configure the port control registers:

  PTCDD = 0b00000000;  // configure PTC[4:0] as inputs (PTC[7:5] doesn't apply here)

  PTCD = 0b11100000;  // set up PTC[4:0] pins to drive low when they are outputs (PTC[7:5] doesn't apply here)

  PTCPE = 0b00000000;  // disable internal pull up devices, especially for PTC[4:0]

  PTCSE = 0b00000000;  // we probably don't need to worry about slew rate control

Now, if we want to ground the one side of RA we simply change the corresponding direction control bit:

  PTCDD_PTCDD4 = 1;

Grounding RB would be PTCDD_PTCDD3 = 1.  Etc.

Best Regards,

Derrick

在原帖中查看解决方案

0 项奖励
回复
2 回复数
580 次查看
Derrick
NXP Employee
NXP Employee

Hi Oliver,

I recommend putting a current limiting resistor in series between the MCU's port pin and the base of the the transistor.  Otherwise the transistor's PN junction will effectively short the MCU's output to ground (with a diode drop).  That won't be very healthy for either the MCU nor the transistor.  The value for this resistor depends upon the desired collector current and the gain of the transistor.  But be careful not to exceed the MCU's maximum output current rating for the port pin.  I suggest using a value of 2.2k ohm or greater.

As for the gain adjusting resistors (RA to RE), based upon the information provided for the LD1100 it looks to me that you should be safe tying these directly to the MCU's port pins.  But please verify this first.  Even although the supply voltage on the anode of the laser diode is specified for 8-12V - which is far too high for the MCU - the common node for these resistors appears to be connected to the inverting input of an opamp.  Its corresponding non-inverting input appears to be tied to a potentiometer that ranges from 0 to 2.5V.  So the resistors' common node should never exceed 2.5V (provided, of course, that the circuit is operating properly).  I recommend that you verify this before making any connections to the MCU as I don't know the accuracy of the schematic.  Simply apply power and vary the potentiometer while monitoring the resistors' common node with a 'scope.  If the schematic is correct, the voltage on the resistors' common node should track that on the wiper of the potentiometer and never get higher than 2.5V.  However, if you find that this voltage exceeds the MCU's VDD supply then you should not connect the MCU directly to these resistors.

Assuming that the voltage on the resistors' common node never exceeds 2.5V, you can connect the other end of each resistor to a separate MCU port pin.  From a software perspective, I recommend controlling these resistors via the port's Data Direction register (not the Data register) as I believe that putting VDD on these resistors will cause unexpected circuit operation.  Initially, these port pins will be configured as inputs which essentially tri-states the pins.  If you configure the port data register bits to drive the pins low, you can then control each output between tri-state and ground by manipulating the port's Data Direction register.

With a maximum of 2.5V on one side, the current through RE can be as high as 2.5mA.  I recommend using Port C as it is specified for higher current capability.  This is really only necessary for the port pin tied to RE and then only if the trim potentiometer is set for higher than 2.0V.  Otherwise, any port pin will do.  For the purpose of an example, let's connect the RA to RE resistors to the MCU's PTC[4:0].  Here's how you would configure the port control registers:

  PTCDD = 0b00000000;  // configure PTC[4:0] as inputs (PTC[7:5] doesn't apply here)

  PTCD = 0b11100000;  // set up PTC[4:0] pins to drive low when they are outputs (PTC[7:5] doesn't apply here)

  PTCPE = 0b00000000;  // disable internal pull up devices, especially for PTC[4:0]

  PTCSE = 0b00000000;  // we probably don't need to worry about slew rate control

Now, if we want to ground the one side of RA we simply change the corresponding direction control bit:

  PTCDD_PTCDD4 = 1;

Grounding RB would be PTCDD_PTCDD3 = 1.  Etc.

Best Regards,

Derrick

0 项奖励
回复
579 次查看
woohoo
Contributor I

Thanks a lot for the help!

0 项奖励
回复