Shop OBEX P1 Docs P2 Docs Learn Events
Programming a propeller / Eeprom? — Parallax Forums

Programming a propeller / Eeprom?

Hello everyone!

Is this the standard programming procedure?

Disable the propeller with the reset pin

Interface with the 0 adressed Eeprom directly by connecting to the i2c bus and fill it with the new propeller image.

Allow propeller to boot, causing it to load the new program from Eeprom to hub.

Is this how it's typically done with programmers/FTDI chips?

Or are you "supposed" to interface with the propeller directly somehow?

Comments

  • Mike GreenMike Green Posts: 23,101
    edited 2016-05-22 14:31
    The Propeller has a boot program in its on-chip ROM that gets control after the Propeller gets out of reset. This program listens to I/O pin 30 for a special serial protocol (from an attached PC running a Propeller load program) and responds as needed on I/O pin 31. The boot program is designed to use the built-in RCFAST clock (so it doesn't need a crystal) and is clock speed independent (RCFAST is temperature and voltage dependent so can vary). The PC can command the Propeller to load a program into RAM and optionally write it to EEPROM (at least 32K bytes attached to I/O pins 28/29) then optionally start the program loaded into RAM.

    If there's no PC attached or if the special serial protocol isn't seen, the boot program attempts to read the first 32K from the attached EEPROM into RAM and starts the Spin interpreter using the contents of RAM.

    So, the Propeller is designed to connect to a PC's serial port via some kind of serial adapter. The DTR line is used to generate a reset signal for the Propeller so opening the serial port will reset the Propeller. The PC is assumed to be running one of the Propeller IDEs (Propeller Tool, SimpleIDE, or PropellerIDE) that will handle the downloading for you. The serial protocol is documented and there's a Spin program available that will run on one Propeller and download a program to a second Propeller.

    Look at the schematics for any of the Propeller boards for examples of how to do the connecting.

    You could hold the Propeller in reset and directly fill the attached EEPROM with a new program as you suggested, but that's not how the Propeller was intended to be used.
  • Cluso99Cluso99 Posts: 18,066
    Mike,
    Isn't the SI (RXD) P31 and SO (TXD) P31 ?
  • Cluso99 wrote: »
    Mike,
    Isn't the SI (RXD) P31 and SO (TXD) P31 ?
    ''

    Except for those confusing Prop plug TXD --> Prop "TXD" fritzing diagrams!!!

    So yes.
    Host TXD --> Prop RXD P31
    Host RXD <-- Prop TXD P30
  • Sorry, I still get these mixed up. I even looked it up and still got them backwards.
Sign In or Register to comment.