Shop OBEX P1 Docs P2 Docs Learn Events
Low Cost PropStick variation for use with a PlugBoard — Parallax Forums

Low Cost PropStick variation for use with a PlugBoard

Duane C. JohnsonDuane C. Johnson Posts: 955
edited 2011-08-31 21:35 in Propeller 1
I've built several homemade RS-232 PropSticks that in conjunction with the PropPlug work very nicely. However, it's a pain to keep making these, or purchasing the assembled units.

I wanted an easier and cheaper method. I think I've come up with a good way to do this. This post describes a crude method of construction. This would be a natural for some small PC boards.
What do you think?

For us experimenters this concept has some advantages over the all in one PropStick boards.
For one, it's more flexible,it's very easy to change configurations. Just plug in the hardware you need. Or free up the pins if not needed.
Think about it, in the PropStick the EEPROM, and serial really only uses 4 pins. One really doesn't need to have all those other stacked pins. All that stuff seams quite redundant.

I intend to make another unit that is a I2C RTC, Real Time Clock. Probably the DS3231.

OK. one could make a DIP-40 board with places to plug in all three of these PlugParts onto it. Now you would have a PropStick with an SD card on the top. Besides, the footprint would be a bit smaller without the serial sticking out the end.

An overall view of my plugboard:
PlugPts2.jpg


This is a schematic of my Memory, Serial interface, and I2CLeverShifter.
PlugPts1.jpg

Note! A2 must be connected to VCC for 24FC1025.
Note! The Level shifter does not incorporate the 5K pullup resisters, they are intended to be near the I2C device.

Actually this level shifter can interface with any higher voltage such as 12V devices.

I used a 2x5 pin .1" header and removed pins 3,4,5, and 6. This allows the header to bridge over the blank space from a pair of Propeller pins and the 2 power rails on the plugboard. Ok, there is a bit of misalignment but it works just fine.

This is a DIP-8 EEPROM mounted atop the header. Note the pair of 5K pullup resisters under the DIP.
PlugPts4.jpg


This is the serial interface. In this case it is constructed by soldering the parts between the header and the connecter. I use Molex 4 pin connectors and ribbon cable instead of directly attaching the PropPlug. This is a much more rugged method and less prone to breakage. The resister capacitor networks greatly reduce noise from resetting the micro. Note the wire going over to the Prop reset pin.
PlugPts3.jpg


This is my version of an I2C level shifter.
PlugPts7.jpg


This is my version of an SD card adapter that connects to P22, P23, gnd, 3.3V, P24, and P25. And the crystal is tucked under the middle. Don't forget to change the pin designations in the Spin definitions.
I posted a detail of this on another thread. See:
http://forums.parallax.com/showthread.php?130083-SD-Card-Pins&p=982464#post982464
PlugPts6.jpg


This is one version of a low dropout regulator to produce the 3.3V power.
PlugPts5.jpg
332 x 530 - 18K
229 x 348 - 9K
247 x 313 - 11K
679 x 362 - 26K
748 x 641 - 56K
284 x 353 - 13K
1024 x 261 - 46K

Comments

  • Cluso99Cluso99 Posts: 18,069
    edited 2011-08-28 11:40
    Nice work Duane! Thanks for posting :)
  • Duane C. JohnsonDuane C. Johnson Posts: 955
    edited 2011-08-28 15:11
    Thanks cluso99!!!

    It took a while to figure out the first set, but only about 1/2 hour for each of 2 more sets.

    It would be a snap if I had a PC board.

    Duane
  • WBA ConsultingWBA Consulting Posts: 2,935
    edited 2011-08-28 23:58
    Very cool! The SD adapter would work with my M44D40+ modules. Maybe I will make a version from the unused Parallax SD adapter kit I still have.
  • caskazcaskaz Posts: 957
    edited 2011-08-29 01:01
    Hi.

    It's cool.

    But A2 of 24FC1025 is non-configurable Chip Select.
    A2 must be tied to VCC in order for this device to operate.
    And access for 24FC1025 is different from 24LC256(24LC512).
  • Duane C. JohnsonDuane C. Johnson Posts: 955
    edited 2011-08-29 05:34
    Very interesting caskaz.

    I hadn't noticed that in the spec.
    http://www.redrok.com/Memory_24FC1025_EEPROM_128Kx8_I2C

    Why does it work then? Been running since Friday or so.
    Ya, it says undefined. I guess my chip defines it as working OK. Ha Ha.
    I'll change the schematic to reflect this

    Duane
  • caskazcaskaz Posts: 957
    edited 2011-08-29 05:58
    Hi.

    24FC1025 address map
    B0 A1 A0 eeprom-address
     0  0  0 00000 - 0ffff      1st eeprom   
     1  0  0 10000 - 1ffff      1st eeprom
    
     0  0  1 20000 - 2ffff      2nd eeprom
     1  0  1 30000 - 3ffff      2nd eeprom
    
     0  1  0 40000 - 4ffff      3rd eeprom
     1  1  0 50000 - 5ffff      3rd eeprom
    
     0  1  1 60000 - 6ffff      4th eeprom
     1  1  1 70000 - 7ffff      4th eeprom
    B0 -- Block Select Bits
    A0 A1 -- Chip Select Bits
    
    Maybe prop don't have how to access 24FC1025.
    If chip's A2 connect to Vcc, prop can use 24FC1025 as 64k-eeprom.
    If prop access address 0x40000 - 0x4ffff, it can get top half's datas of 24FC1025.
  • Duane C. JohnsonDuane C. Johnson Posts: 955
    edited 2011-08-31 10:10
    I just added an I2C level shifter.

    Duane
  • Duane DegnDuane Degn Posts: 10,588
    edited 2011-08-31 20:30
    Is a 24FC1024 the same as an AT24C1024? (Edit: It's not.)

    If so then A0 (pin 1) is not connected. You use an extra bit in the address to access the upper 64K of EEPROM. I may be missing something here.

    @Duane, Is the I2C level shifter needed? I2C communicates by pulling the line low. The Prop can communicate with a 5V I2C device fine without a level shifter. The 5V devices I've used seem to be happy with the lines pulled to 3.3V. Even if the I2C lines were pulled up to 5V, it should be fine as long as the pull up resistor were a high enough value. I'm not sure about using a 12V I2C device with a Prop though.

    Duane

    Edit: I should have checked the datasheet for the 24FC1024. It's not the same as an AT24C1024.
  • Duane C. JohnsonDuane C. Johnson Posts: 955
    edited 2011-08-31 21:35
    I don't have any of these parts, 24FC1024 AT24C1024 so can't comment on them directly.
    Actually I couldn't find the 24FC1024 datasheet.

    I have tested the 24FC1025, 24LC256, and 24LC512. If I had an AT24C1024 I would try it.
    http://www.redrok.com/Memory_24FC1025_EEPROM_128Kx8_I2C.pdf
    http://www.redrok.com/Memory_24LC256_EEPROM_32Kx8_I2C.pdf
    http://www.redrok.com/Memory_24LC512_EEPROM_64Kx8_I2C.pdf

    The I2C level shifter isn't strictly required in most applications if all the I2C parts are on the same board.
    However, many applications use I2C on devices on another board through shielded cable. These interfaces often use fairly low pullup resisters which would violate the Props protection diode spec. The I2C level shifter guarantees that the voltage on the Prop pins can't get higher than 3.3V.

    It may also be needed when using 5V parts at the full maximum clocked speed.

    I mentioned the use of this circuit for interfacing to high voltage signals at 12V. I guess I am not aware that the I2C spec allows 12V, but I suppose it could.

    I was only saying the exact same circuit is used as a non-inverting level shifter for many applications. Basically the pull down current is limited to the Props pull down current spec which is limited to a maximum of 40mA, but the DC characteristics for Vol at Iol = 10 mA, Vdd = 3.3 V is .4V. So you probably want to keep it at less than 10mA or so.

    I have used this same circuit at 40V with the generic 2N7000 and up to 150V with a BS107.
    Note there is a similar circuit that uses an NPN bipolar transistor. And if the 3.3V isn't available a "Depletion Mode" MOSFET with it's gate grounded. I did it with a not so generic DN2530.
    http://www.redrok.com/MOSFET_DN2530_300V_175mA_12O_Vth-1.0_TO-92.pdf

    Duane
Sign In or Register to comment.