http://minyos.its.rmit.edu.au/~s9906768/pic/proj_ti.html

http://www.ticalc.org

http://sami.ticalc.org/ PIC <--> TI Calc interfacing for the mac

http://gtktilink.ticalc.org

http://wmoore.tsx.org/

All TI calculators have two open-drain lines. There is a method under Fargo to access each line individually for input and output (see "lowlevel.txt"), but in most cases where byte-transfers are needed, TI's built-in link routines are simple and effective to use. The protocol used by these routines will be described here:

When the lines are not active they are high. You should remember that if an end of an open-drain line is pulled-down (connected to the ground) by a device, all devices that are attached to that line (including the device that pulled the line down) will read a low signal even if they are trying to pull the line up.

We will assume that Calculator1 (C1) want to send a byte to Calculator2 (C2). The lines will be refered by L1 and L2. In the text "10" means L1 high and L2 low, and "01" means L1 low and L2 high.

This will be repeated 8 times in order to transfer a bit.

This protocol used by TI on their calculators, is an effective protocol. But in most cases you do not need to go through those details when programming, since everything is made by the built-in ROM routines. To learn more on the byte level protocol, look at \doc\ti-prot.txt

'PBASIC code for the STAMP to display data from a TI-83 from Jack [goflo at pacbell.net]
' Connector: Red = Gnd, Purple = Pin0, White-Green = Pin1
dirs = %00000000
pins = %00000000
symbol BitCount = B1
Init: if pin0 = 0 and pin1 = 0 then Init
 pause 2000 ' pause to connect Link
Start: BitCount = 0
 B0 = 0
Loop: if pin0 = 1 and pin1 = 1 then Loop
 if pin0 = 0 then TLow
RLow: low 0
 branch BitCount,(R0,R1,R2,R3,R4,R5,R6,R7)
R0: bit0 = 1 : goto Rloop
R1: bit1 = 1 : goto Rloop
R2: bit2 = 1 : goto Rloop
R3: bit3 = 1 : goto Rloop
R4: bit4 = 1 : goto Rloop
R5: bit5 = 1 : goto Rloop
R6: bit6 = 1 : goto Rloop
R7: bit7 = 1
Rloop: if pin1 = 0 then Rloop
 BitCount = BitCount + 1
 input 0
 if BitCount = 8 then Display
 goto Loop
TLow: low 1
Tloop: if pin0 = 0 then Tloop
 BitCount = BitCount + 1
 input 1
 if BitCount = 8 then Display
 goto Loop
Display: debug B0
 goto Start


file: /Techref/ti/calc/sio.htm, 3KB, , updated: 2013年7月22日 18:13, local time: 2025年9月3日 17:20,
40.74.122.252:LOG IN

©2025 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF="http://techref.massmind.org/Techref/ti/calc/sio.htm"> ti calc sio</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.


Link? Put it here:
if you want a response, please enter your email address:
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?

Welcome to massmind.org!

Welcome to techref.massmind.org!

.

AltStyle によって変換されたページ (->オリジナル) /