Find's Treasure Forums

Welcome to Find's Treasure Forums, Guests!

You are viewing this forums as a guest which limits you to read only status.

Only registered members may post stories, questions, classifieds, reply to other posts, contact other members using built in messaging and use many other features found on these forums.

Why not register and join us today? It's free! (We don't share your email addresses with anyone.) We keep email addresses of our users to protect them and others from bad people posting things they shouldn't.

Click here to register!



Need Support Help?

Cannot log in?, click here to have new password emailed to you

Microcontroller PI md by M.Stuart

A

Anonymous

Guest
Some one have info on this projects? Is the
Geotech page project with scheme and
hex files correct?
Regards
 
i have tried the 4 and 8 mhz code myself with the pcb i reworked
if you look to the original on pi 84 explinations {original} you will see at a glance the pcb is very similar with just bits of track added and some drill points for the cpu reset ic 3 pin to be added {i can help look to the modififaction texts you will see how the reset was wired into the 5v rail gnd and then the mclr pin
this is now on the pcb...
the hex files
i adjusted to suite
the adjustments are good but not absolutely perfect trasitions i will fix this as i document each routine
as a new addition i will place in the link {archive now} a copy of the code reworked texts coments and some variables but working { has more than one set of defaults also on port a,1{and a4 normal} hold to trigger
i tested the 8 mhz but the 20 i havent tested but it simlates fine in isis lite
giving good transition for most of the scales as the scope is no real good in isis it is hard to tell exact timings so... ill get the scope i have on it and adjust t he loop divider {correction for instructions used in loop its self} to get a perfect pattern
as i will add this small error isnt a real problem anyway and is just present in the rx window {i will iron it out in the morning if this chip arrives other it will be monday..}
give the 8 mhz or 4mhz block a go
they work perfect guaranteed
 
further
i noticed that the original code
still allows the tx and rx too run
as you adjust the settings
this is extremly silly
in my own opinion as it leads to excessive voltage spikes and current /voltage nodes in the wrong place
so now this is fixed
and a full set of chips versions avalible for both older code
and reworked a little english added
with all respective and retrospective credit maintained
also see the texts in the asm file per folder {you choose by processor pic 84.. micro xtal you use and flash that hex ...choose correctly}
if you have a pic16F84A-10p this is a ten mhz chip
runs 8 mhz code
and 8 mhz xtal
take a look at the www.microchip web site to check versions you can find
and match the chip with the one you have too
ONLY !!! or it prob wont run {or not for very long
 
"i noticed that the original code
still allows the tx and rx too run
as you adjust the settings
this is extremly silly
in my own opinion as it leads to excessive voltage spikes and current /voltage nodes in the wrong place
so now this is fixed"
==========================================
Are you sure about this? In my design, I generate the timing via interrupts and then "metal detect" outside of the interrupt. I allow a menu selection and do not disable interrupts so that the circuit is still being pulsed along with the other timing required. There is no way in this design for voltage spikes or any other bad thing to happen while adjusting settings...except for battery voltage is still being used but I have my reasons for doing it this way. If I weren't still "letting the tx and rx" continue to run, you wouldn't see the effects of your settings being changed until you exit the menu mode.
I wonder what Mark is doing that would cause "leads to excessive voltage spikes and current /voltage nodes in the wrong place"? That just doesn't make any sense. Maybe you can elaborate further why this is bad in his design.
Charles
 
"If I weren't still "letting the tx and rx" continue to run, you wouldn't see the effects of your settings being changed until you exit the menu mode."
all of 11us time frame @20mhz a long time indeed to wait
in this time one space one mark rx and fifty irratic marks of rx tx have bombarded the gates of your silicon {out of time step}
{look in proteus RT simulator like i did}
if you have even the slightest view this wont cause any problem
Then i am sorry my friend you still have much to learn
yes all well and good if you re write the whole code block on interupt
but listen man i am no idiotic little kid
even if you use an interupt or several
you will still get problems and poor timing lock
the fact remains that any form of irratic pulsing of a fet will cuase parasitic osccilations too form in the switching stages and larger than normal voltage and current nodes to appear in other than the coil at the bottom of the stick or in places they otherwise wouldnt
i dont see this marvelious code running in a sim if i did i would still see the same as his if you leave them too run
the fact is the mark paulo software was designed when micros where still pre cross compiler stage
so i wont blame his lack of knowlage just i think daftness
i chalange you too find me a reason why a voltage spike isn't bad for a metal detector
unless you deliberatly genorate one as normal
the fact tx and rx disable till you "exit the routine" is more than enough to stop this completely
this mark stuart design used to blow fets and kill his rx stage
the reason given why he added a cpu reset to "properly reset the processor on glitch from psu drain"
this kills the fet and takes out several resisotors
also and is known documents problem
do you sums my friend
if you dont find the code blocks usefull
i am sorry for you
 
"but listen man i am no idiotic little kid "
My post was in no way intended to provoke you or belittle you. Sorry you took it that way.
I just don't understand what you are saying. It concerns me because my second design is set up via interrupts for the timing. My first detector is just using delay loops which will give a little more erratic timing but doesn't pulse anything while adjusting parameters via buttons. I don't care for this setup as much but for that design it has to be done that way.
If I'm pulsing my electronics with an interrupt via a countdown timer, what does it matter whether its happening during a menu mode or not? The processor runs doing whatever your code is suppose to, the timer counts down to zero, the interrupt is generated, the ISR routine is executed (pulses the transmitter), it returns from interrupt, and your processor returns to the main code. What does it matter what that code is? Whether it is looking at buttons or reading an A/D, or talking to the LCD, etc. the metal detector shouldn't be receiving any bad spikes or anything that I can see. I'm not saying that it isn't bad to have bad spikes in your sensitive analog electronics, I'm just saying I don't see from this where they would be coming from? The timing of the interrupts are not affected if everything is handled properly. Someone else feel free to jump in if I'm missing something. I've designed mine around this method and I'm just not seeing any issues with it so far.
Thanks,
Charles
 
so...
i will try to explain
the mark stuart design was originaly built using a pic 54 and later versions used a pic 74 {if i remember correctly} so the code asm block was written to include adjustments features
as asm is not a port loading language{or easily it can be i know this but this asm version isn't}
but however too maintain as much integrity of code from the original author
i simply re adjusted the timing and init's to make the original code run more efficiently
as there was and issue with multiple itterations as the code jumps around on interupts
at the time it was written there was no cross compilers and it is a hard job too one that supported port loading {sending a hex byte to port you pre assigned so keeping the core code simply interupted by a button and yes the port will still run on the timer}
nothing more
it is a block of code that also has the flemish changed to english to allow people who want to make a cheep detector for coins in sand etc etc {hence the reason ill add a tilt switch {apply 5v to the pin no tx rx pulse } remove 5v it runs so when it is put down it stops
i also made several ideas as a tex file to change several componets too add stabilities as the voltage from cells and avalible apr charge diminishes with time
the tilt switch is handy to save energy
the tx rx gets disabled becouse
on any cable that carries a charge
you get current and vltage nodes and antinodes form some as high as 1kv and 400 amps peek for less than a psec
so... these move when you change freq
so all it takes is a glitch that produces the right mix
and these nodes end up in the middle of the fet
and BANG here a fet cost 3
 
hi all
i have added port b7 disable enable pwm rx tx this allows a detector to be put down and picked up without turning off and on etc....
also for a trigger for handheld use
now gives a pwm signal same as tx from port b1
this could be used to drive a second fet and coil to increase directionality
and power and little cost and haslte
if anyone is interested give me an email if i get 5 people i will do it
 
added
port b4 b5 b6 pull to gnd switch to 5v
adds in default settings {you can make and add
at compile time}
over the next day or so
i will fully optimise each set of code timing to be as absolute as i can
with a perfect pattern
this hasnt been done yet
just the main wor to get a sensible block of chip types and speeds before
i started to 100% optimise the timing
my advice is too add the buttons and a trigger or switch to port b7 {must be pulled high for rx tx too run}
and use the blocks avalible
they are almost spot on for all versions with just a few tweaks to make
 
Top