[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: sbc board problem



Hi Andrew

Couple of questions on bus monitor.  It looks like LED Latch is not
clocking.   You show a spdt momemtary switch in the schematics which
seems kind of strange how it is hooked up.  On the board you show a
toggle switch in the upper left of board.  I have nothing there - I
assume that is my problem - guess I had thought that was a power
connection.  Or is that switch for single stepping the board ??  Is
that why I am not working.  If I probe the inputs of U6 the board
appears to step a little. I I just install JP1 will it work as well -
not sure if that will cause the clocking?

Or maybe I don't have the right majic to get switches set so I can see
what is going on?

Dave

On Feb 16, 3:24 pm, "Andrew Lynch" <lyn...@yahoo.com> wrote:
> Hi Dave!  Thanks!  On the ECB bus monitor, there are three chips which need
> jumpers for VCC and GND due to a design error.  There is a note on the wiki
> on what to do and also the instructions are in the forum.
>
> I like the futurlec board for SD because it is cheap but it requires a lot
> of pins.  The ucontroller SD sounds like winner especially if the software
> is already available and it seems designed to work with the Propeller.
>
> Just start with your schematic and I will jump in with help on the IO
> decoder and other bits as needed.  I recommend posting it on the wiki so
> other builders can follow along with the design.
>
> I think this is a great idea and a natural compliment to what is already
> available for the N8VEM system.  Depending on how much PCB room is available
> maybe we can squeeze in a couple of other features.  We'll just have to see
> how it shakes out.  I think the hardest part of the project will be writing
> the Propeller side software.  I believe it will require some Propeller
> assembler to get the response times necessary to interface directly on the
> ECB.
>
> Thanks and have a nice day!
>
> Andrew Lynch
>
>
>
> > -----Original Message-----
> > From: n8...@googlegroups.com [mailto:n8...@googlegroups.com] On Behalf Of
> > yoda
> > Sent: Monday, February 16, 2009 12:12 PM
> > To: N8VEM
> > Subject: [N8VEM: 2592] Re: sbc board problem
>
> > Hi Andrew,
>
> > Yeah I can do that with a register file through one port.  My only
> > concern is if I can do all the processing in time to not have to start
> > putting waits on buss which will cause use of an additional line and
> > more complexity.  I will try it but reserve the right to take a couple
> > of address lines if it becomes too complex :)  I looked around and
> > found 2 alternatives for the SD socket:
>
> >http://www.futurlec.com/Mini_SC.shtml ;   which is 6.90
>
> > and
>
> >http://ucontroller.com/index_pro1.html ; which is 12.99
>
> > I have ordered 2 of each to evaluate.  I like the uncontroller one to
> > fit on board better but I don't understand why it is so expensive as
> > it is a simpler board than the futurlec one.  The futurlec board is
> > ready to plug in but the plugin structure is different - might be able
> > to hang of board on ribbon cable.  Anyways one of the 2 or both should
> > work.  Look at the links and tell me if you have a preference.
>
> > Hopefully I will start on schematics tonight or tomorrow.  Finished my
> > bus monitor board last night but does not seem to be working fully.
> > Did not have time to put scope on it and see if signals are on the
> > backplane etc.  Want to make sure signals are working on backplane
> > before working on protoboard.
>
> > Dave
>
> > On Feb 15, 10:22 pm, lynchaj <lyn...@yahoo.com> wrote:
> > > Hi Dave!  Thanks!  Check out the design of the Z80 DART.  Zilog used a
> > > "register select" command so you can have as many registers as you'd
> > > like and still only use one address line.  Then you conserve your
> > > Propeller lines for real IO.  The "register select" approach is the
> > > two step rather than direct addressing but it works great!
>
> > > Basically, you just stuff what address of what register you want to
> > > read/write into the main status register and then perform the
> > > operation on the data in the data register.  It works really slick!
> > > Then you can have several registers and stuff in as much data as you
> > > want!  If I recall correctly, the 6845 uses a similar approach.
>
> > > Do you have a link for the sparkfun part?  I am all for keeping the
> > > price low.  Show me the way!  I am just bouncing ideas off right now.
> > > Nothing too serious.  Its just a great idea and I am excited to see it
> > > spring to life.  However, we have to avoid SMT since that will wipe
> > > out most of the builders.  DIP parts are good!  Can we do a USB
> > > connection using DIP parts alone and let a Propeller cog do the
> > > translating?  That'd really cut costs.
>
> > > Yes, please use the ECB prototype board as your base.  All the
> > > information is available on the wiki so it'll make your KiCAD
> > > experience a little easier.  Its all in the KiCAD folder.  Converting
> > > the ECB prototype board into a peripheral is amazingly easy and I am
> > > embarrassed to say initially I was against the idea of an N8VEM
> > > prototyping board.  Now I am its biggest fan!  I'll be using another
> > > one soon for my 6809 host processor prototype once the breadboard is
> > > finished.  I am burning through the stock all by myself!
>
> > > If remaining pins gets to be a problem, then lets consider the second
> > > Propeller option but I prefer the single Propeller approach for
> > > simplicity's sake.  It only takes A1 added to the address decoder to
> > > enable as all the rest of the signals are shared in common.  This is a
> > > great thing!  The great thing about making a wire wrap prototype is
> > > that we can find out for sure if the design works or not.  If it has a
> > > problem we'll know *before* it goes to PCB manufacturing.  That is the
> > > only way to go!
>
> > > Thanks and have a nice day!
>
> > > Andrew Lynch
>
> > > On Feb 15, 10:31 pm, yoda <y....@r2d2.org> wrote:
>
> > > > Hi Andrew,
>
> > > > Here are some comments.  I planned to use at least 2 mayb 3 address
> > > > lines into the propeller.  I planned to use status register as you
> > > > suggest, but use different ports for keyboard, vga and SD. The
> > > > keyboard and vga can share one address as one is read only and the
> > > > other is write only.  Probably would use two ports for SD drive - one
> > > > for command and one for data.  With 3 address lines can have 8 ports.
> > > > So 8 for data 3 for address 1 for rd, 1 for wr and 1 for CS would be
> > > > 14 pins.  vga takes 8, keyboard 2, and sd takes 4 to that is another
> > > > 14 so we still have 4 pins left over.
>
> > > > 2 propellers is interesting - more pins than I know what to do with at
> > > > the moment.
>
> > > > I was thinking of the SD module from Sparkfun.  I have two of the bare
> > > > sockets.  They are surface mount  but what I was thinking is to use a
> > > > right angle header and solder the socket to it.  The spacing is right
> > > > and would have to provide a shim underneath for support.  The one you
> > > > suggested is 29 dollars seems a little steep when all we need is a
> > > > socket to make it work.  There is already propeller code to make it
> > > > work - so some modifications will be in store.
>
> > > > The FTDI packages you suggested are pretty steep as well (30 +
> > > > dollars) so I will continue to investigate there.
>
> > > > I will start developing a schematic this week if I get some time.  I
> > > > will assume the proto board is base so will only show the deltas off
> > > > the protoboard.  I will wirewrap based on your suggestions.
>
> > > > I basically have the parts in hand so will start going later this week
> > > > I hope.   A lot of things are going on at my real job so I don't know
> > > > how far I will get this week.  Looking like weekends are my free time
> > > > now.
>
> > > > Dave
>
> > > > On Feb 15, 8:53 pm, "Andrew Lynch" <lyn...@yahoo.com> wrote:
>
> > > > > Hi Dave!  Thanks!  I recommend wire wrap construction personally but
> > point
> > > > > to point will also work.  Just be sure not to short any pins to
> > ground or
> > > > > VCC as there are "fill zones" on both the top and bottom of the
> > prototype
> > > > > board to reduce EMI and noise.  Just pull the wires through with
> > enough
> > > > > clearance so they make their connections without shorting to the
> > fill zones.
> > > > > I would not rely on the solder mask as an insulator although it will
> > work to
> > > > > some degree.  Excessive heat from soldering will melt through and
> > cause
> > > > > shorting.
>
> > > > > I would like to make a prototype board along with you.  I think you
> > could
> > > > > make a direct ECB to Propeller interface using a few lines.  At a
> > minimum, I
> > > > > think you need 1 Propeller and a 74LS32 address decoder to narrow
> > the IO
> > > > > address range down.
>
> > > > > For the interface, qualify the /CS signal generated by the ECB
> > prototype
> > > > > board down to just 2 addresses using A3, A2, and A1.  Then connect
> > the
> > > > > Propeller chip select /CS_Prop and D0-D7 to the Propeller, /RD (low
> > is READ,
> > > > > high is WRITE), A0 (low for Propeller Main Status Register PMSR and
> > high for
> > > > > Propeller Data register PDATA).  That uses 11 signal lines and gives
> > you a
> > > > > lot of flexibility.  When you READ PMSR, it gives you status bits
> > for busy,
> > > > > etc.  When you want to read a register, you WRITE PMSR and
> > READ/WRITE the
> > > > > PDATA register depending on the operation.
>
> > > > > This is the scheme that the Z80 Zilog Peripheral chips use and it is
> > very
> > > > > efficient in terms of needed signals and won't use up all the
> > Propeller
> > > > > lines.  If things get tight on the number of lines remaining, we
> > could
> > > > > always implement D0-D3 and make it nibble wide communication and
> > just use 7
> > > > > lines.
>
> > > > > Then on the Propeller side, we'll need a program that puts all the
> > D0-D7
> > > > > pins into either high impedance tristate or an input mode.  The
> > Propeller
> > > > > has a cog that constantly monitors the /CS_Prop line to see when it
> > goes
> > > > > low.  When it does go low, a cog checks the status of the /RD and A0
> > lines
> > > > > to determine to either write to or read from the data bus.  If /RD
> > is high,
> > > > > the Propeller reads the data bus pins and if /RD is low it writes a
> > value.
> > > > > What it reads or writes depends on the state of A0.  If A0 is low,
> > then
> > > > > write the PMSR data or read register select command on the data bus
> > and if
> > > > > A0 is high read or write the register data as depending on the
> > previous
> > > > > register
>
> ...
>
> read more »- Hide quoted text -
>
> - Show quoted text -