In my sig you can see a coffee maker project, and I need calc's port.
I've questions: • in command Port( , what are the three statuses ? • how does the Send( and Get( command works ? • how many bits ( not bytes ! ) can receive my calc in a second ? (TI 83+)
• How many milliseconds will it take to receive a 48*64 image with 4 level grayscale ? (384bytes*2pics, I think )
Now I know how to read in, but with an error i think I discovered my VAT and now I don't know what I should do ...
IMPORTANT: I registered on cemetech, but when I login, in center I've only this: template->make_filename(): Error - template file not found: site/home_index.tpl
And the SAX box say more than 50 times "Warning: dupe aborted" ...
yes ... the Get( and Send( axe command receives or sens a bytes , doesn't it ? The arduino function 'Serial.begin(int fast);' set the number of bits/second, but how many bit/second can support my TI 83+ ?
When I had time, in a school hour , I made a list of commands between arduino and calc. Correct me if I'm wrong, but : • the calc can send a byte • the byte goes into Arduino's port's buffer in a wait file • Arduino read the byte • Arduino may send a byte • calc's Get( funtion returns Arduino's byte ... No ?
Command list :
Spoiler For commands:
205 - is there sugar ? 208 - yes 200 - no 145 - is there milk ? 148 - yes 140 - no 035 - is there water ? 038 - yes 030 - no 065 - is there coffe ? 068 - yes 060 - no 122 - send 100mL of water ! 125 - send ... 1•• - ... ••mL ... 126 - ... of water ! 123 - done 222 - send 50mL of milk ! 225 - send ... 2•• - ... ••mL ... 226 - ... of milk ! 223 - done 207 - send a sugar ! 203 - done 075 - make hot for ... 0•• - ... 20*•• ... 076 - seconds ! 073 - done *** - GENERIC - *** 008 - yes 000 - no 003 - done 001 - error 009 - repeat
X-8LUE AXE0.0.3 DOESN'T WORK I turned off my calc at one hour this night, and the Axe version doesn't work.
All I made for X-8lue is here, except the 0.0.1 version, but I can give it if you want. PS: the 0.0.1 had no function to control text scrolling, there was just 'Pause' between two 5-line blocks ...
When I use it in my coffee program ( see the code on the topic, in my sig ), if the appvar was archived, it dispays my memory as chars, until the first zero. So it's a little bug ...
This night, I will do the first Axe version of X-8lue : aXe-8lue 0.0.3
Please search for me the source code of folder explorer in DCS7's SEs, like 'open' in DocDE7 or MT3, because I'll really need it.
. I don't really know for the moment ... At first, I make the first Axe version of X-8lue ( but it'll be the 0.0.3 ^.^ ) But I think the progress will be displayed on calc's screen .
AxCoffee source code, if you're interested ... (AxeLib's code is in X-8lue's topic, in my sig)
Spoiler For Spoiler:
:.COFFEE CalCup 1.0 TIcoffee :prgmAXELIB :sub(6M7 :identity(FF008092BEA4A292BEA48092B68080B8B6C680FDB6C580C57F460838081007E0) : :[F0A8E8A8E8000000F0A8F0A8A8000000→Pic1 :[7CC6828282C67C007CFEFAD6EEFE7C00 :[7C82AA92AA827C00 :Lbl 0 :0→Θ :"<fonct>v</fonct>Coffee"→Str9 :!If GetCalc(Str9)→Z :.ARC :UnArchive Str9 :If GetCalc(Str9)→Z :1→Θ :Else :.CREATE 32 BYTE :GetCalc(Str9,32)→Z→Θ :0→{Z} :Return!If Z :End :End : : :ClrDrawClrDraw<sup>r</sup> :Fix 5 : :Text(36,29,"TI-Coffee" :StorePic ClrDraw :Text(35,29,"TI-Coffee" :DispGraph<sup>r</sup><sup>r</sup> :Repeat getKey(54):DispGraph<sup>r</sup><sup>r</sup> :End :0→W :If {Z} :Goto CF :End :.INITIALISATION :Lbl INI :ClrDraw :Text(20,19,"Setup language:" :rref(18,18,56,9 :Line(18,18,18,39 :Line(73,18,73,39 :Line(19,40,72,40 :Pxl-Off(18,18:Pxl-Off(73,18 :Text(28,30,"< :Text(58,30,"> :"English"→Str7 :[00] :"French " :[00] :0→C :DispGraph :Pause 450 :Repeat getKey(54) or W :getKey(15)→W :If getKey(1) or getKey(2) or getKey(3) or getKey(4):Pause 360 :C+1^2→C:End :Text(33,30,C*9+Str7 :DispGraph :End :C→{Z+1} :0→{Z+3} : :1→{Z} :Lbl CF :If W:Goto END:End :ClrDrawClrDraw<sup>r</sup> :0→S→L+1→T+7→E:{Z+1}→C :If {Z+3} :0→E:{Z+4}→S:{Z+5}→L:{Z+6}→T : :End :"Settings→Str0 :[00:"Reglages :[00:"Sugars: :[00:"Sucres: :[00:"Milk: :[00:"Lait: :[00:"Cups: :[00:"Tasses: :[00:"Coffee ! :[00:"Cafe ! :[00:"No ! :[00:"Non! :[00:"Yes! :[00:"Oui! :[00:"Save prefs :[00:"Enregistrer :[00:"Reset :[00:"Reinit. :[00:"Cancel :[00:"Annuler :[00:"Coffee: :[00:"Cafe: :[00:"Water: :[00:"Eau: : : :Goto A :Lbl DRW :Pt-On(2,2,8*C+Pic1 :Line(8,2,8,6 :Text(10,1,C*10+Str0 :rref(0,0,96,9 :Line(0,0,0,62 :Line(95,0,95,62 :Line(1,63,94,63 :Pxl-Off(0,0 :Pxl-Off(95,0 :Text(10,55,C*12+111+Str0 :Pt-On(2,55,E+16+Pic1: :sub(BUT<sup>r</sup>,64,39,30,7,C*9+73+Str0,1 :sub(BUT<sup>r</sup>,64,55,30,7,C*9+135+Str0,1 :sub(BUT<sup>r</sup>,64,47,30,7,C*9+153+Str0,1 :Text(3,12,C*9+19+Str0 :Text(32,12,S►Dec :sub(BUT<sup>r</sup>,30,12,7,7,0,0 :Text(3,24,C*9+37+Str0 :sub(BUT<sup>r</sup>,30,24,17,7,5*C+(10*L)+91+Str0,1 :Text(31,36,T►Dec:Text(39,36,T+1►Dec:Text(35,36,"-" :Text(3,36,C*9+55+Str0 :sub(BUT<sup>r</sup>,30,36,14,7,0,0 :Pt-Change(88,1,Pic1+32 :ClrDraw<sup>r</sup>StorePic :Return : :Lbl 2 :Pt-On(X,Y,Pic0 :Pt-Change(X,Y,Pic0 :Pt-On(X,Y,Pic0+8 :Return : :Lbl BUT :If r<sub>6</sub>:Text(r<sub>1</sub>+2,r<sub>2</sub>,r<sub>5</sub>:End :rref(r<sub>1</sub>,r<sub>2</sub>,r<sub>3</sub>,r<sub>4</sub> :Pxl-Off(r<sub>1</sub>,r<sub>2</sub> :Pxl-Off(r<sub>1</sub>,r<sub>2</sub>+r<sub>4</sub>-1 :Pxl-Off(r<sub>1</sub>+r<sub>3</sub>-1,r<sub>2</sub> :Pxl-Off(r<sub>1</sub>+r<sub>3</sub>-1,r<sub>2</sub>+r<sub>4</sub>-1 :Return : :Lbl MOS :1:ReturnIf (X≥r<sub>1</sub>) and (Y≥r<sub>2</sub>) and (Y<(r<sub>2</sub>+r<sub>4</sub>)) and (X<(r<sub>1</sub>+r<sub>3</sub>)) :0:Return : :Lbl A :48→X:32→Y→H :sub(DRW :DispGraph :Pause 450 :Repeat W or (getKey(54) and sub(MOS,66,39,27,7)) :getKey(15)→W :If sub(MOS,88,1,7,7) and getKey(54):1→W:End :If sub(MOS,66,47,27,7) and getKey(54):1→W:End :If sub(MOS,66,55,27,7) and getKey(54):DelVar Str9:Goto 0:End :sub(2 :DispGraphClrDrawRecallPic :If Y>0 and getKey(4):Y-1→Y:End :If X>0 and getKey(2):X-1→X:End :If X<95 and getKey(3):X+1→X:End :If Y<63 and getKey(1):Y+1→Y:End :If sub(MOS,30,24,20,7) and getKey(54):1→H :L+1^2→L:End :If sub(MOS,30,12,7,7) and getKey(54):1→H :S+1^5→S:End :If sub(MOS,2,55,47,7) and getKey(54):1→H :E+8^16→E:End :If sub(MOS,30,36,14,7) and getKey(54):1→H :T+1^6→T:!If T:1→T:End:End : :If H :Pause 120 :ClrDraw :sub(DRW :0→H:End :End :If W:Goto END:End :Goto B :.CLOSER :Lbl END :Fix 4 :If E :1→{Z+3} :S→{Z+4} :L→{Z+5} :T→{Z+6} :End :If Θ :Archive Str9 :End:Return : :Lbl B : :Goto END
I don't know anything about the VAT. Is it really important to know how to read/write in when we make axe programs ?
Now, without help, I understood appvar FLDSV7's structure : Áv◘Games••• = Á:new folder ; v:number of folder; ◘:number of the folder before; Games•••: folder's name (• is here to make sure name's length will be 8 ) ↑↓ALEAT = the file 6 in folder 7 is the program ALEAT
Thank me ^^ I've done READER, which had permised (?) me to read in FLDSV7. I've done AXELIB too, which allow to copy DCS7's custom cursor in Pic0 ; and open/close an appvar (but UnArchive doesn't work so good ... )
I must do : - a pump for milk > arduino - a recipient for milk - same for water > arduino - same for water - motor to open/close coffee recipient > arduino - coffee recipient - one or two motors to block the second sugar while make fall the first >arduino - something to command the hot by arduino > arduino as captors : - is there any sugar anymore ? - " water " ? - " milk " ? - " coffee " ? > ARDUINO and maybe : - LEDs for progress
I had a crazy idea : make a coffee maker with milk and sugars, which is link to an arduino platform. The com pins of arduino are link to calc ...
Now I've done just the program where you can choose what you want, in french or english, and save your prefs. I've done too the commands list for communication ( Is there milk ? / Give a sugar / It's done ! )
I've begun the X-8lue project some weeks ago, and now I want to show it. It's a program which read the HTML code put in Str1, and then it displays websites.
Now it's only in TI-Basic, but if you say me how to read DCS7 folders, I'll make it as an axe DSC7 SE, and maybe we'll can make it compatible with Doc DE 7, so it would be possible to edit code on DocDE7 and read on X-8lue ...
Now I'll try to read the DCS7 folders, but I may crash it. So please give me the structure before !