2 Programs?
ProcessingData...
Posts: 208
So if I understand the propeller EEPROM setup correctly, the spaces $00000 to $7FFFF are for program space? That means that $80000 to $FFFFF are free. So, could we not use a I2C Driver and one byte of variable space to switch the EEPROM sections back and forth? Essentially, creating a "second program" loadup option?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Basic Stamp,···· Propeller,·· · SX,·· FUN!
START:·
>Proccessing Data. . . .··
>Task Complete. . .·.
>Saving Data. . . .
>Entering SLEEP Mode. . . .
>Signing OFF
·
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Basic Stamp,···· Propeller,·· · SX,·· FUN!
START:·
>Proccessing Data. . . .··
>Task Complete. . .·.
>Saving Data. . . .
>Entering SLEEP Mode. . . .
>Signing OFF
·
Comments
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Toys are microcontroled.
Robots are microcontroled.
I am microcontroled.
If it's not Parallax then don't even bother. :-)
·
Mini-Din/PS2 connectors are for sale! 5 for $1! PM me if you wish to make an order.
Cheap·shipping unless specified!· ···· Order 100 get 25 FREE!····· 200 left!!··
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Basic Stamp,···· Propeller,·· · SX,·· FUN!
START:·
>Proccessing Data. . . .··
>Task Complete. . .·.
>Saving Data. . . .
>Entering SLEEP Mode. . . .
>Signing OFF
·
- Stop all other cogs
- Copy contents of desired eeprom segment to hub ram
- Configure clock
- Start spin interpreter on object at $10
- Stop self
Most of the code you require is in booter.spin posted by Chip quite a while back.
It's dead easy.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Missed it by ->" "<- that much!
Then, when it's ready to be run, it moves the editor to the lower half, then puts the program into the upper half, and puts a small program that will flip the programs after its done running! of course, you have to account for loops, but you could make it put a bit in EEPROM that tells it to switch if the bit is a 1, and make it be a 1 when you first run the program!
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Basic Stamp,···· Propeller,·· · SX,·· FUN!
START:·
>Proccessing Data. . . .··
>Task Complete. . .·.
>Saving Data. . . .
>Entering SLEEP Mode. . . .
>Signing OFF
·
@BradC
How do you start the spin interpreter at a position?
Could you upload Booter.spin?
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Basic Stamp,···· Propeller,·· · SX,·· FUN!
START:·
>Proccessing Data. . . .··
>Task Complete. . .·.
>Saving Data. . . .
>Entering SLEEP Mode. . . .
>Signing OFF
·
Sure. Always keep a copy of interpreter.spin and booter.spin handy. They are the definitive guide on a lot of important aspects of the propeller.
I've also attached a copy of a little demo I wrote a while back to demonstrate how to load a complete propeller binary into a new cog while the existing program keeps running. It's a good demo for how to start a spin interpreter wherever you want it. If you load it into the propeller RAM using F10, it will then load the contents of the eeprom bottom half at $388 and start the application there while it keeps itself running happily flashing a led on P7.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Missed it by ->" "<- that much!
I developed it with my propmodules in mind but I am working on a version 1.02 with more features and 1.03 should be generic along any platform with 512kbit EEPROM.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
propmod_us and propmod_1x1 are in stock. Only $30. PCB available for $5
Want to make projects and have Gadget Gangster sell them for you? propmod-us_ps_sd and propmod-1x1 are now available for use in your Gadget Gangster Projects.
Need to upload large images or movies for use in the forum. you can do so at uploader.propmodule.com for free.
Because since yesterday, I'm writing an EEPROM-read/write utilty. Exactly for the purpose of writing images to a different location in EEPROM.
I've designed it that way, that it can be let run on the Prop on a console (command-line driven) or be remote controlled by a server on the PC.
I think, I'll post the version tonight (European time).
The server is not existent yet. But the client on the Prop is written that way, that a terminal program like RealTerm (that can playback files) is enough.
As an teaser the commands:
I'll explain that all in more detail in a new thread. Watch for "3PClient".
This program is also excellent for poking around in the EEPROM.
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.:
YADRO
Post Edited (Nick Mueller) : 7/3/2009 12:22:26 PM GMT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Toys are microcontroled.
Robots are microcontroled.
I am microcontroled.
If it's not Parallax then don't even bother. :-)
·
Mini-Din/PS2 connectors are for sale! 5 for $1! PM me if you wish to make an order.
Cheap·shipping unless specified!··········150 left!!··
No, just writing to the EEPROM.
With this tool, you can write (and read) multiple boot-images to different locations.
Normaly, no one needs it. But as soon as you have different images to boot from on a single EEPROM, its quite helpful.
It's working now (wasn't satisfied with the speed). But need to change it for a different serial-port (I have two on my testboard and normaly use the non-default).
Now, transmitting data at 115kBaud no longer saturates the in-buffer. Programming and verifying takes just a tad longer than Propellant, despite I transfer in Hex to make the output more readable for those who want to poke around.
Drove me a bit nuts to effectively write in EEPROM-pages, until I came up with the idea to deqeue the writing. That's dumb simple now.
Will post it tomorrow evening, 'cause I have to visit the veterinair with both of my cats.
And now for a beer ...
Nick
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Never use force, just go for a bigger hammer!
The DIY Digital-Readout for mills, lathes etc.:
YADRO
Post Edited (Nick Mueller) : 7/3/2009 10:17:33 PM GMT