PDA

View Full Version : Extreme Newbie Question



chemania
02-09-2005, 07:08 AM
I am going to be using a BS2P40 to create a control system for a preamp. The thing will run an LCD, 12-4pdt relays, rf and button inputs. I know I will need 12v to run the LCD backlight and 5v for all logic and relays. I plan on using a 200w pc supply to power the whole thing. I plan on running the 5v for the relays directly from the pc supply.

Question is what should I run to where on the stamp? 12V on VIN, 5v on VIN, or 5v on VDD? I checked the supply and it runs 5.02v with 375mA load. Each relay nominally runs this load, max nominal load from relays should be less than 3 amps (given that no more than 9 will be energized at any one time). Oh, I am using a handful of ULN2803A's to drive the relays too.

More questions to come... :)

thanks,

chemania

Newzed
02-09-2005, 07:19 AM
First of all, your LCD backlight only requires 5VDC, but it could draw as much as 260ma at full brightness.· A 5VDC relay usually requires about 30ma for the coil.· You should have a 5 volt regulator supplying the Stamp, and another 5 volt regulator for the LCD, both driven by 12VDC.· You didn't say how many buttons - you should be using a shift register to drive the 2803's - it will save you a lot of Stamp I/O lines.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Sid Weaver
Do you have a Stamp Tester?

http://hometown.aol.com/newzed/index.html (http://hometown.aol.com/newzed/index.html)
·

chemania
02-09-2005, 07:40 AM
>A 5VDC relay usually requires about 30ma for the coil.

OOPS u are correct.· I checked the data sheets and they are 50mA at max.· I misread mW as mA· ... stupid me.

>You didn't say how many buttons - you should be using a shift register to drive the 2803's - it will save you a lot of Stamp I/O lines.

Only going to use 4 buttons.· Volume up/dn, mute, input selector.· I have heard some talking about the shift register technique but know nothing about it.· Looks like it is time to search the archives again.

TNX,

Chemania

Newzed
02-09-2005, 08:01 AM
12 relays and 4 buttons makes 16 control lines.· This can be handled by a two 74HC595 shift registers daisy-chained together,· Takes three Stamp lines to control the 16 outputs of the two shift registers.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Sid Weaver
Do you have a Stamp Tester?

http://hometown.aol.com/newzed/index.html (http://hometown.aol.com/newzed/index.html)
·

Chris Savage
02-11-2005, 09:03 AM
chemania,

·· I have built dozens of controller-based Amplifier/Pre-Amplifer Systems over the years.· Alot of what you will be using is the same stuff I have used in the past...However, I am surprised by the 12 4PDT relays.· If it's for switching audio, might I suggest a slightly more elegant way of accomplishing this?· There are many audio switching chips available that can be controlled by the BASIC Stamp.· Some are serial control, others parallel.· This would not only provide cleaner switching of the audio, but will take less hardware and power consumption.

·· In my designs I've used one 12VDC relay to switch main power, and 2 5V PCB Relays to switch the tape monitor circuit.· All the input switching used to be done by 2 LM1037N's by National Semi, but alas, they're discontinued.· In any event, there are substitutes.

·· One other way I save precious I/O pins on the BASIC Stamp when I'm using an LCD display is to use a Serial Backpack.· This uses only 1 Stamp pin to use the LCD.· The ones I use provide extra I/O pins which are used to switch various non-critical hardware within the pre-amp, such as the LCD backlight, etc.

·· I must admit, you are the first person I have seen post about doing such a thing...I myself started back in 1991 doing it for friends and clients.· It can be an ambitious project the first time!

·· I almost forgot...Your power supply sounds like a little overkill...I have used a single transformer from Radio Shack in prototypes before...This supplies +12/-12V and +5VDC for the pre-amp and logic.· This is built from a 24VCT 2A transformer from Radio Shack, and provides the 3 supplies using a bridge rectifier, 2 regulators, and a few caps.


▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

Post Edited (Chris Savage) : 2/11/2005 1:09:11 AM GMT

chemania
02-11-2005, 10:58 PM
Hi Chris,

I am actually building a Class-A MOSFET balanced preamp and amp. Both projects are ongoing and currently in various stages of completion. I have done several amps and preamps before, each with its own specific fun feature, but have never attempted microprocessor control of this type before. I actually have a degree in Chemical Engineering with Major Emphasis on CAPD/CAPC. I have done some opto22 control systems (I actually have an old LC2 in the work shop, anyone remember how to program in FORTH??) in the past as well as systems using other "packaged" controllers, but that was decades ago (I teach HS chem and phy now). So yea, there are some steep learning curves to overcome but not insurmountable. In reading the reference manual (definite gEEk thing) I keep going...oh yea! I remember that!. I considered going with a pga2310 for the volue control but wanted to stick to a more purist approach.

Since this thing is balanced, I am using 5 4pdt relays to switch inputs (3 unbal inputs, tape monitor, and bal input) , so we get R+,R-,L+,L- switched. On unbal inputs the relays connect the + inputs and ground the -inputs. The preamp uses Super Symmetrical feeback and in researching the thing I found an idea for using 8 relays to create a 256 position shunt-type volume control. From what I have read on the subject it seems to work VERY well. So there you go. Actually 13 relays. I do plan on using a 1 pin backpack for the lcd. As for the PS, the audio section of the preamp runs at +-60V regulated. I have most of that supply done except for the regulation stages. Since I have a box full of old PC power supplies lying around here I just thought I would grab one and use it instead of trying to reinvent the wheel.

At this point that is about as far as I have gotten in the design, except for laying out a few lines of pseudo-code. I basically have pseudo-coded the input selector function, mute and volume functions. As I learn more about syntax and stamp features, I am having to go back and change things a bit. It is fun none the less. Controls was my first love, though I have not gotten to do any in years.

BTW Chris, knowing that you have done this before, you have become my new best friend!!! http://forums.parallax.com/images/smilies/tongue.gif


That is about all I can think of for now,


Chemania,

PS - The reason I got these small signal relays is that I found 132 of them for 30 bux! I did have to remove them from a board and am in the process of testing them now. Up to this point they have shown very well. I have the input boards laid out and soldered up as well as the volume control. I am using 9 pin serial ribbon cable on standard 10 pin headers to hook everything up.

Chris Savage
02-11-2005, 11:45 PM
Okay,

·· Unbalanced inputs changes everything...I don't know of any chips to handle that, however I myself prefer balanced signals anyway.· Another thing on the relays regarding power, is if you're only going to have a few on at a time, I still think you can get by with a smaller power supply.

·· My Pre-Amps use two different supplies running off a single transformer.· In the end you have +/- 12-15V (Depends on the design) plus the +5VDC for the logic, plus sometimes +12VDC for certain things.· But I have always packaged the Pre-Amp and Power Amp sections in different enclosures (Usually rack-mount style).· In early versions I used a standard MIDI cable (DIN-5) to connect the control signals to the Power Amp section, which has it's own power supply for the main amplifier (+/- 74V), as well as a small +5V/+12V supply for the Meters and Fan.· The audio was sent via standard patch cables.

·· Usually the only thing in the Power Amplifier enclosure besides the main amp board and power supplies is Power Output Meters, Cooling Fan (The amp gets quite hot!), temp sensor (Thermistor), mute control and Power Relay.· All these signals can be realized with the DIN-5.· Basically·one pin·sends temp data back (Analog).· That data is used to determine whether the cooling fan needs to be one (one more pin).· One pin controls the Mute Relay (Function of Hybrid Amp Chip/National Semi), which serves two purposes, one of which is a normal MUTE function, the other of which prevents turn on thumps.· One pin controls the Power Relay (Which turns on both supplies in the Power Amp cabinet).· The last pin is used for a common-ground for all these signals, although I could use the shield and make use of this last pin if I wanted.

·· The Pre-Amp has line-input meters which are very fluid and provide a measure of the input signal, whereas the Power Meters on the Amp show the actual power level going to the speakers.· In the past before I had a logic-controlled chip to control volume, I aquired a motorized volume control and used that.· It's a standar 100K Stereo POT with·Taper for loudness contour, but is driven by a motor.· Using relays for volume control never quite occurred to me, but it's an interesting concept, nonetheless.· I admire your ambition.



▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

Paul Baker
02-12-2005, 12:20 AM
Chemania, I actually started to develop a·FORTH interpreter for the SX (for the contest), until I found out they were looking for hardware based systems. The interpreter version is 90% done, I was also planning on creating a compiled version (like SX/B). But it's iced until after the contest. FORTH is a great language for microcontrollers.

Paul

chemania
02-17-2005, 07:52 AM
Paul - A FORTH interpreter would be totally kewl for the stamp. I coded a lot of FORTH but it has been years. I did a data acquisition system for the ENG department in a company I worked for. I can't believe they actually paid me it was so much fun.

BTW - guys, I got the relay volume control running. Works great! Listening to it now on the computer. Using Debug to show the volume level. Thanks for the help. Now for the mute, input selector, and lcd..and then to get some boards laid out and installed.


Chemania

Chris Savage
02-17-2005, 08:08 AM
You'll have to post some pics and/or code...I am really interested in seeing this thing!· http://forums.parallax.com/images/smilies/shocked.gif

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

chemania
02-17-2005, 08:41 AM
It is really rough right now Chris, wires everywhere. The code is about as bad, no spit-polish at all. I will try to post a few things in a couple days when I "find" the camera. For the time-being, here is the code I am using.

' {$STAMP BS2p}
' {$PBASIC 2.5}

vol VAR Byte
prevol VAR Byte


OUTPUT 0
OUTPUT 1
OUTPUT 2
OUTPUT 3
OUTPUT 4
OUTPUT 5
OUTPUT 6
OUTPUT 7
INPUT 8
INPUT 9

vol=0
prevol=0

main:
IF IN8 AND vol < 255 THEN vol = vol + 1 ' volume up button
IF IN9 AND vol > 0 THEN vol = vol - 1 ' volume down button
IF prevol <> vol THEN DEBUG CLS,? vol, BIN(vol)
OUT7 = vol.BIT0 ' I know this section looks backwards but it made sense to me when I coded it!
OUT6 = vol.BIT1
OUT5 = vol.BIT2
OUT5 = vol.BIT3
OUT3 = vol.BIT4
OUT2 = vol.BIT5
OUT1 = vol.BIT6
OUT0 = vol.BIT7 ' probably should wrap this whole switching statement in an IF like the DEBUG statement
prevol = vol
PAUSE 75

GOTO main

Like I said, rough, but OK for an hour's work after getting the stamp up and running, I guess. I did about 10 other program to investigate the uln2803, input buttons, and the like. I am sure this whole thing will have to be recoded when the mute circuit goes in as well as the input selector and shift register. BTW the relays engage resistors that are 8k, 4k, 2k, 1k, 500R, 250R, 128R and 64R with the latter being on the LSB and the 8K being on MSB. The resistors are on the input of the volume control and switch NC to ground and NO to output line.


Any suggestions????


Chemania

Chris Savage
02-17-2005, 09:03 AM
chemania said...
It is really rough right now Chris, wires everywhere. The code is about as bad, no spit-polish at all. I will try to post a few things in a couple days when I "find" the camera. For the time-being, here is the code I am using.

OUTPUT 0
OUTPUT 1
OUTPUT 2
OUTPUT 3
OUTPUT 4
OUTPUT 5
OUTPUT 6
OUTPUT 7
INPUT 8
INPUT 9
I know this is rough code, but just as a suggestion, you might try specifying INPUT and OUTPUT using one DIRS statement.· For example, what you have right there could be done with:

DIRS = %0011111111

Anyway, when you get some pics, post 'em...Trust me, I know all about rough-looking prototypes...· http://forums.parallax.com/images/smilies/blush.gif

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

chemania
02-19-2005, 07:14 AM
Chris,

Does the DIRS statement work when you have named the pins? my newest version of the proggy names the pins for better readability. When I started coding the mute circuit I got lost so I had to rehash some things.

Chemania

Jim McCorison
02-19-2005, 08:55 AM
Yes. DIRS isn't really a command, it is a memory map of the I/O pin direction control, whereas creating a variable type of PIN allows you to see/set the contents of the pin. Check out the PSBASIC help file. In Contents, double click on "PBASIC Reference", then check out "Memory and Variables".

Jim

Chris Savage
02-19-2005, 01:36 PM
Thanks Jim, yes, the DIRS command affects the DDR, that's Data Direction Registers, not the video game.· http://forums.parallax.com/images/smilies/tongue.gif· And you can specify it toward the beginning of your program, even before you alias your pins or in the Initialization section of your program.



▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

Jim McCorison
02-19-2005, 11:58 PM
Chris,

Can't you specify DIRS anywhere in the program, or is it strictly limited to an initial setting.

Jim

Chris Savage
02-20-2005, 06:36 AM
You can change the pin direction at any time.· I guess I was generalizing...usually you set your pin directions once, and at the beginning of the program is a good place.· About the only thing you might need to do first in special situations is to set your OUTS in case you need certain pins HIGH prior to the pins going from INPUTS to OUTPUTS.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

Chris Savage
02-20-2005, 08:42 AM
chemania said...
OUT7 = vol.BIT0 ' I know this section looks backwards but it made sense to me when I coded it!
OUT6 = vol.BIT1
OUT5 = vol.BIT2
OUT5 = vol.BIT3
OUT3 = vol.BIT4
OUT2 = vol.BIT5
OUT1 = vol.BIT6
OUT0 = vol.BIT7 ' probably should wrap this whole switching statement in an IF like the DEBUG statement
I have an old piece of Z80 code I wrote that this kind of reminds me of...I wired my Commodore 64 keyboard's row inputs backwards!· So in the code I kinda had to fudge things a bit to reverse the connections in software.· All it ended up being in the end was shifting the bits from the input byte the opposite direction, but in the documentation it looked weird.· I did not want to re-wire that when it was all wire-wrapped!



▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

chemania
02-20-2005, 09:30 AM
Here are a couple images as requested! ;)

Chemania

chemania
02-20-2005, 09:43 AM
Chris,

It seems I almost always end up getting things backwards when I flip a circuit board over. I believe that is what I did when I wired the header. If I rewire the header then my naming system goes down the tube. I always wanted to buy that 8 channel adc for the C64 but could never afford it. Do you remember that one? I did use the tape drive power on the vic20 to switch a relay once though!

Chemania

chemania
02-20-2005, 10:47 AM
Ok, explain this one.....I coded:

IF NOT muted THEN
IF Vol_Up AND volume < 255 THEN volume = volume + 1
IF Vol_Dn AND volume > 0 THEN volume = volume - 1
ELSE
IF Vol_Up AND mute_vol < 255 THEN mute_vol = mute_vol + 1
IF Vol_Dn AND mute_vol > 0 THEN mute_vol = mute_vol - 1
ENDIF

Which does not work......actually it acts as if the else statement is not there, but


IF muted THEN
IF Vol_Up AND mute_vol < 255 THEN mute_vol = mute_vol + 1
IF Vol_Dn AND mute_vol > 0 THEN mute_vol = mute_vol - 1
ELSE
IF Vol_Up AND volume < 255 THEN volume = volume + 1
IF Vol_Dn AND volume > 0 THEN volume = volume - 1
ENDIF


works perfectly. What am I missing about how the IF...THEN....ELSE statement works? I checked the stamp manual and they don't even mention the ELSE construct nor is ELSE listed as a reserve word in the reserve word list (BS2P).

BTW this bit of code is for a section of the volume control that allows me to mute the thing and then change the volume while muted. Good for if someone walks in the room while you are cranking it.

Chemania

Jim McCorison
02-20-2005, 11:14 AM
The ELSE is documented under the IF command. Check the online help syntax.

Actually neither one should really work properly. The compiler should really give you an error on your syntax. The IF / THEN on one line only allows an address (label) as an argument:

IF NOT muted THEN ChangeVol

ChangeVol:

In order to have an command you have to use a multiline form. So, you syntax would be:



IF NOT muted THEN
IF Vol_Up AND volume < 255 THEN
volume = volume + 1
ENDIF
IF Vol_Dn AND volume > 0 THEN
volume = volume - 1
ENDIF
ELSE
IF Vol_Up AND mute_vol < 255 THEN
mute_vol = mute_vol + 1
ENDIF
IF Vol_Dn AND mute_vol > 0 THEN
mute_vol = mute_vol - 1
ENDIF
ENDIF




Also, note the indentation. While not syntactically required, indenting the objects of your if makes them much easier to read.

Jim

Chris Savage
02-20-2005, 11:21 AM
chemania said...
Chris,
It seems I almost always end up getting things backwards when I flip a circuit board over. I believe that is what I did when I wired the header. If I rewire the header then my naming system goes down the tube. I always wanted to buy that 8 channel adc for the C64 but could never afford it. Do you remember that one? I did use the tape drive power on the vic20 to switch a relay once though!
Chemania
Getting things backward is why back in the Wire-Wrapping days I started using a product called "Wrap-ID," which was a little template that you would put on the wrap side of the board and it had the pin numbers listed on that side.· Saves having to think backward.

I don't remember the 8-Channel ADC for the 64...I think probably because back then I was making my own boards, although I don't think I ever did a multi-channel ADC for the 64.

Tape Drives...Now I'm feeling Nastalgic!· Commodore really simplified Tape Drives for computers back then.· No having to run 3 wires between each unit.· Just one plug.


▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

chemania
02-21-2005, 12:55 AM
Finally figured out the problem with my IF statements. That NOT is not a boolean NOT but a binary NOT. Therefore, NOT 1, is still true! The statements themselves work because my If....THENs are acutally IF...THEN...ELSE statements with a null else. I guess the moral is stay away from NOT logic. The reason I never saw the command in the manual is that I was using a V2.0 manual and running the V2.1 program. I had to do a fresh install to get the online help file to work and I had to go dig out the v2.1 hardcopy I printed off before buying my stamp.

Chris - have you done anything with a C64 lately? I pulled one out of moth balls a couple of years ago. I thought it loaded slow in the mid 80's it seems like it takes a month and a half now! Still fun to play loadrunner on though...

Jim McCorison
02-21-2005, 01:20 AM
Chemania,

Interesting discovery about the NOT operator. I would certainly consider it a bug in PBASIC.

IF muted THEN
IF (muted = 1) THEN
IF NOT (muted = 1) THEN

all work correctly. However

IF NOT muted THEN
IF NOT (muted) THEN

do not work correctly.

My cut would be that if you are going to allow a boolean expression as a condition, than the NOT operator should work in conjunction with it. The help text states:

NOT Help Text said...

The NOT operator returns the logical NOT of an expression. Note that in the BASIC Stamp, a non-zero value is considered True (T), zero is considered False (F). The expression is subject to the following logic:

NOT F = T
NOT T = F

The result returned by NOT will be True or False.



Jim

Shawn Lowe
02-21-2005, 02:48 AM
You should define in your program that:
NOT_muted=0
muted=1

So the you say
if NOT_muted then
this
this
Else
Of course you would also have to set up an input for your muted switch in the program (probably already have)

Shawn

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Shawn Lowe


Remember - No matter where you go
There you are.

chemania
02-21-2005, 02:57 AM
Jim, I am not totally understanding what you are getting at. In my attempts to understand this on pg 224 it says, "Internally, the BASIC stamp sees a bit variable containing 1 as the 16-bit number %0000000000000001. So it sees the NOT of that as %1111111111111110. Since any non-zero number is regarded as true, NOT 1 is true. Strange but true."

So that when the portion of my program that reads the state of the Mute button sets Muted (VAR bit) to true (1) then NOTing Muted will still be true because NOTing %0000000000000001 still give a nonzero number. I don't see any other way to set a flag in one section of the program and NOT it in another section unless I use another if then construct to do a synthetic NOT.

Are you saying that in order to do a true logical not then I should have an expression (muted=1) or (muted=0) insteading of letting the stamp set the value of the expression?


Chemania

Jim McCorison
02-21-2005, 03:45 AM
Chemania,

What you are describing is the actions of the inverse operator (~). If the NOT were to be implemented as you describe I fail to see how it would work at all. But it does work properly in the instance of "IF NOT (muted=1)", since "muted=1" (when muted is in fact equal to 1) returns a logical "1". NOT then logically negates that yielding a "0".

Reread the quoted text from the help docs that I posted. They specifically state that NOT "returns the logical NOT of an expression". A logical NOT in the case of a single bit argument happens to also be the same as an invert. But it is not the same on multi-bit argument.

Now it is possible that what you describe is what happens internally, but if that is the case than the usage of NOT when applied to a single variable as an conditional expression is inconstantly applied in comparison to a multi argument conditional expression.

I think that either they have a documentation problem with the description of NOT, or an implementation bug. Not sure which, hopefully somebody from Parallax can comment on this. From a programming perspective, having NOT perform a true and proper logical NOT on the results of the expression would certainly be more intuitive as well as more consistent with other languages.

Jim

chemania
02-21-2005, 03:53 AM
I think I got it now. I checked some of my OLD programming notebooks and seems we used to have a var type of boolean. I think I was confusing the NOT logical operation with that NOT (inverse) math operation. My problem seems to be I KNEW so many programming languages and now that I have not used them in years I am subconsiously pulling bits and pieces from different languages and applying them to pbasic. A total recipe for disaster!

Many thanks for straightening me out,

Chemania

Jim McCorison
02-21-2005, 04:29 AM
You know you're really getting things muddled up if you only use variables beginning with i,j,k,l,m, or n as integers. (That's FORTRAN for you relative newbies.) http://forums.parallax.com/images/smilies/smile.gif

Jim

Jon Williams
02-22-2005, 09:51 AM
There are far more elegant solutions to this problem than using NOT in a backwards kind of configuration. One could (and I think should) construct code that looks more like this:

IF (muted = Yes) THEN ....

No ambiguity. No tricking operators. A simple set of constant definitions (for the states of Yes or No that work with muted) will make the program easier to write, read, and maintain.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Jon Williams
Applications Engineer, Parallax
Dallas, TX· USA

Jim McCorison
02-22-2005, 12:41 PM
Jon,

Agreed, but that does not address the issue of how the NOT operator worked when he did use it. Are there undocumented restrictions on the use of NOT (i.e. not with a single variable as a conditional expression) or is the operator buggy?

Jim

chemania
02-25-2005, 05:21 AM
Jim,

I don't think it is either a bug problem nor a documentation problem.· It is more of an understanding problem, at least on my part.· The NOT operator can be used in two ways; as a boolean operation or a binary (bitwise) operation.· When using it as a binary math operator....something like ....num1 = NOT num2... then all bits are switched from their current state.· When used as a boolean operator it changes the state of the evaluated expression ...say....NOT (muted=Yes)...· (Muted = Yes) having a boolean state of·TRUE·where the NOT,·implemented as a boolean operation, changes the boolean state to FALSE.· PBASIC just didn't which I meant...it should have read my mind!

I don't believe I have ever used a language that did not have a VARTYPE boolean in which the NOT operator would do a true boolean operation not on a TYPEd number.· Basically everything works as it should (except my rusty ole brain).···http://forums.parallax.com/images/smilies/tongue.gif··

As for logic coding, the majority of the code was written before I coded the mute circuit so it made more sense (to me) from a high level language approach to say when it is not muted then do all this stuff otherwise do that stuff.· If one replaces that variable with an expression the logical valuation of the expression·works fine whether one says when muted do this else do that or when not muted do that else do this.

Chemania

chemania
02-25-2005, 05:25 AM
oh BTW, do you remember the old FORTRAN 66 IF statement that went something like If (expression) GOTO1, GOTO2, GOTO3 ?? As I recall you could branch on positive, zero, or negative results. I was a baby when that language came out but had to recast a large Pulp and Paper plant simulator into, I think it was, PASCAL. That finally became the Advanced Simulator for the Pulp and Paper Industry (ASPPI). My prof got most of the credit and I did most of the work!! ;)

Chemania

Chris Savage
02-25-2005, 08:11 AM
chemania said...
Here are a couple images as requested! ;)
Chemania
Thanks for posting the pics (I requested)...http://forums.parallax.com/images/smilies/smile.gif

One question I do have is, are you getting any crosstalk or noise in the audio lines from all the wires on the solder-ring board?· In the past when I build my pre-amps I still used sheilded wire to connect to the rear-panel jacks and between boards because my scope showed some crosstalk.

I only used relays (2) on my Tape Monitor circuit, so I was wondering about how much noise all those relays will pickup and mix into your audio signal.

Things to consider...Didn't know if you had a scope or not.



▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

chemania
02-25-2005, 09:01 AM
I don't have a scope handy. I have a buddy who does. I intend to take the board to his place before it actually gets cast into it's final form. In all probability I will probably have to go with shielded leads. As far as the "sound" goes...it beats the heck out of an Alps Black Beauty pot! BTW, this thing is on the output side of the preamp so cross talk is not as big a consideration I suppose. It is only a 10k attenuator. By putting the control on the outputs you not only attenuate the signal but the noise floor also. That makes it really nice and quiet.


chemania (but u can call me Jeff)

Chris Savage
02-25-2005, 11:11 PM
Jeff,

·· I have to admit...Build your own Pre-Amp/Amplifier is an ambitious project.· But building it like you're doing, that's really ambitious.· I hope it works out the way you planned.· I always liked building my own Amplifiers & Pre-Amps, but I used to hate running into noise issues, not just on the audio lines, but in the power supply.

·· Once I finished a prototype that worked great on the bench.· Problem is, the cooling fan was never actually connected on the bench because it was outside the enclosure and stayed cool.· I had an LED connected to show the fan getting power.· Later when I put it all together, I found that the fan, when running, would cause a hum on the audio output.· Very annoying!

·· And once I had an issue with ripple on the power supply I built.· It used a multiple winding secondary transformer that had a common CT.· So the ripple seemed to affect the other supplies as well (Logic).· It would certainly be a good idea to get access to a scope to check these things out.· Especially with everything connected and running.

·· Good luck on it though, can't wait to see more sub-system pics posted.· This is making me want to start a new one myself!



▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--

chemania
02-26-2005, 04:11 AM
I know where you are coming from Chris.· I would love to get into a discussion about equipment design.· Would they kick us out of the forum???· This is my third pre and my 8th amp, but it is the first time I have done uP controls.· I guess a DAC is next!· As far as the fan goes...I have already tried that one.· I have hooked up the actual fan and PS I will be using...tried variations of placement, etc.· I usually try everything conceivable and then still end up with noise (cable rerouting, equal ground lengths, and star grounding usually solves it)!!!· hehe· This pre runs at +-60vdc and is regulated and has a CRC....if that is still noisy I will add a CLC stage.· I have been wanting a scope for some time and just have not broken down and bought one.· Maybe the parallax one would be useable?


Jeff

·

Chris Savage
02-26-2005, 05:37 AM
Thank you for reminding me, our topic has strayed a little off-topic.· If you would like to discuss amplifier design, etc. post a message in the "Sandbox" and I will reply there.· I'm not helping by keeping this discussion going in the BASIC Stamps forum, and for that I apologize to those reading and wondering what we're doing!

http://forums.parallax.com/images/smilies/blush.gif

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
--==<{Chris}>==--