I see... I haven't had a chance to look at his sketch yet (have been busy banging by head agains the wall working on the firmware update for the new Shahe scales).
This is more complicated than it needs to be. I would do the following:
1. Disable pull up resistors in the chip. I.e. leave the pins floating; if needed you can hard-wire unused pins to the round to avoid noise.
2. Add a +3V power supply (you will need this to power the scales). My choice would be the LM1117-3.3, but since the scales draw very little current, a voltage divider with 2K/3K resistors should work.
3. Pull up the lines to the scales Vcc using 20K (or even better, 47K) resistors
This will give you cleaner (more square) pulses. I don't have this scale, but the newer Absolute DRO+ you have to read on the raising edge and the data line goes up right before the clock line and raises very sharply. Comparator with built-in pull-up resistor slows down the raise time, possibly to the point where the data line might not go over the threshold fast enough.
If you *really* want to have an IC between the scales and the inputs, use a non-inverting buffer of some sorts. Those are purpose-built for this sort of thing and 3.3V to 5V ICs are very common.
If you go the comparator route you still have to power the scale and provide "virtual grounds" to the comparators, so you won't be saving any parts. Basically you will be building the circuit I linked in my previous post, except in your case you don't really need it.
As far as MSP430 vs. Arduino, I prefer MSP430 over Arduino because of the tooling. I use Code Composer studio with a proper FET, so I can do debug the code, halt the chip and inspect the registers, look at the memory, etc. MSP430 has more modern perhiperals as well, but the tradeoff is a HUGE learning curve. Unless you really want to invest a LOT of time into learning embedded programming in pretty low-level C, Arduino isn't such a bad option.
Hope this helps
Yuriy
Hey Brian,
Good to see you here.
this makes sense. The "doorbell" line seems similar to the "Req" line use by Mitutoyo SPC scales, which is used by the host to request reading from the scale. On the newer absolute scales this line can be just pulled to the ground and the scale will send the position at about 50Hz.
Regards
Yuriy
Hi Yuriy, good to see you're active here!
That line really is a Request line, only in reverse. I guess a more apt name would be Request-To-Read. On these particular scales, the read head is not exactly slaved to the display unit, more of a peer-to-peer type of arrangement. The read head has it's own on-board oscillator, so I have to assume the read head processor is not assumed to be synchronized with the display unit processor.
Anyway, I think Jimmy is building a proto-shield using the voltage dividers, so we should be able to find out in fairly short order if there are any issues with 3 scales connected at the same time.