Difference between revisions of "83Plus:Ports:8F"

From WikiTI
Jump to: navigation, search
(Making some guesses based on the HDRC source)
(Confirmed that port 8F is DEVCTL)
 
Line 12: Line 12:
 
=== Read Values ===
 
=== Read Values ===
 
* Bit 0:
 
* Bit 0:
 +
** Named MGC_M_DEVCTL_SESSION in the HDRC
 
** Set if VBus is high. (Cutoff between 1.5 V and 3 V)
 
** Set if VBus is high. (Cutoff between 1.5 V and 3 V)
** Possibly named MGC_M_DEVCTL_SESSION in the HDRC
 
 
* Bit 1:
 
* Bit 1:
** Unknown. Peripheral routines like this bit.
+
** Named MGC_M_DEVCTL_HR in the HDRC
** Possibly named MGC_M_DEVCTL_HR in the HDRC
+
** Peripheral routines like this bit.
 
* Bit 2:
 
* Bit 2:
 +
** Named MGC_M_DEVCTL_HM in the HDRC
 
** Set if calculator is host.
 
** Set if calculator is host.
** Possibly named MGC_M_DEVCTL_HM in the HDRC
 
 
* Bit 3:
 
* Bit 3:
 +
** Named MGC_M_DEVCTL_VBUS in the HDRC
 
** Reset if VBus is externally powered.
 
** Reset if VBus is externally powered.
** Possibly named MGC_M_DEVCTL_VBUS in the HDRC
 
 
* Bit 4:
 
* Bit 4:
 +
** Named MGC_M_DEVCTL_VBUS in the HDRC
 
** Set if VBus is externally powered.
 
** Set if VBus is externally powered.
** Possibly named MGC_M_DEVCTL_VBUS in the HDRC
 
 
* Bit 5:
 
* Bit 5:
 
** Always 0
 
** Always 0
** Possibly named MGC_M_DEVCTL_LSDEV in the HDRC
+
** Named MGC_M_DEVCTL_LSDEV in the HDRC
 
** Possibly actually indicates whether the bus is in low-speed or full-speed
 
** Possibly actually indicates whether the bus is in low-speed or full-speed
 
* Bit 6:
 
* Bit 6:
 
** Set if calculator is successfully hosting a device. It gets set when the device turns on.
 
** Set if calculator is successfully hosting a device. It gets set when the device turns on.
** Possibly named MGC_M_DEVCTL_FSDEV in the HDRC
+
** Named MGC_M_DEVCTL_FSDEV in the HDRC
 
** Possibly actually indicates whether the bus is in low-speed or full-speed
 
** Possibly actually indicates whether the bus is in low-speed or full-speed
 
* Bit 7:
 
* Bit 7:
** Reset if A-Type cable is currently inserted.
+
** Named M_DEVCTL_BDEVICE in the HDRC
** Possibly named M_DEVCTL_BDEVICE in the HDRC
+
** Set if we are B-device (i.e. peripheral). This can change if you're implementing USB OTG.
  
 
=== Write Values ===
 
=== Write Values ===
Line 44: Line 44:
  
 
== Comments ==
 
== Comments ==
If VBus is internally powered and you short circuit it, it will power down.
+
If VBus is internally powered and you short circuit it, it will power down.
 
+
Bit 6 is pretty strange, it's not as simple as VBus high, or even VBus supplying power. I lit an LED drawing 30 mA off of VBus and port 6 stayed off. But .5 sec after I plug in a USB device, it sets itself.
+

Latest revision as of 19:32, 29 October 2014

This port only exists on the the TI-84 Plus and the TI-84 Plus Silver Edition. On the standard TI-83 Plus, it acts as a shadow of port 07. On the TI-83 Plus Silver Edition, this port has no effect.

Synopsis

Port Number: 8F

Equivalent HDRC port: Possibly MGC_O_HDRC_DEVCTL (0x60)

Function: VBus Control

Using this port, you can control the VBus line and see its status.

Read Values

  • Bit 0:
    • Named MGC_M_DEVCTL_SESSION in the HDRC
    • Set if VBus is high. (Cutoff between 1.5 V and 3 V)
  • Bit 1:
    • Named MGC_M_DEVCTL_HR in the HDRC
    • Peripheral routines like this bit.
  • Bit 2:
    • Named MGC_M_DEVCTL_HM in the HDRC
    • Set if calculator is host.
  • Bit 3:
    • Named MGC_M_DEVCTL_VBUS in the HDRC
    • Reset if VBus is externally powered.
  • Bit 4:
    • Named MGC_M_DEVCTL_VBUS in the HDRC
    • Set if VBus is externally powered.
  • Bit 5:
    • Always 0
    • Named MGC_M_DEVCTL_LSDEV in the HDRC
    • Possibly actually indicates whether the bus is in low-speed or full-speed
  • Bit 6:
    • Set if calculator is successfully hosting a device. It gets set when the device turns on.
    • Named MGC_M_DEVCTL_FSDEV in the HDRC
    • Possibly actually indicates whether the bus is in low-speed or full-speed
  • Bit 7:
    • Named M_DEVCTL_BDEVICE in the HDRC
    • Set if we are B-device (i.e. peripheral). This can change if you're implementing USB OTG.

Write Values

  • Bit 0: Set to power VBus. This will only stick if the USB controller ports are set up correctly. Most notably port 4C and port 54.
  • Bit 2: Unknown. Peripheral routines sometimes set this.
  • Bits 3-7: No effect

Comments

If VBus is internally powered and you short circuit it, it will power down.