This is the ATmega328 Processor and Crystal Circuit |
Note: I have mounted the 0805 bypass capacitors on edge so that they will fit on the 0605 pads. For this module space reduction was not really necessary, but I generally use this technique by default.
ATmega328 - 32QFP |
This is not considered to be the "Ugly Style" of Homebrew hobby construction. But, under a high power microscope everything is "Ugly", especially after it has been setting around for a while. It is a wonder that any modern high density electronic devices work at all, with all of the accumulated contamination that everything collects.
More circuit review, software program review, and testing is required.
UPDATE: Apr 30, 2014 15:09
Success, I got my FN switch problem solved. There were two problems.
The first, was a missing via on my board that should have provided a ground path for the FN switch.
The second, I have been working on the frequency Display and the associated Human Interface within the Sketch. My new modifications had not been properly integrated with the rest of the Sketch.
Now, all is working as expected.
--
Comments Welcome !
ReplyDeleteDoes the function button have anything to do with the configuration in the code and/or pullups? There was some discussion of "flaky" function button operation on freelist. Subject: " Alternate mode setups for FN Button and Analog Keyer input". From Aug 18 and 19th.
ReplyDeleteWhen in doubt to determine if it is a hardware fault, write you own code/program to test the button input that sets a driven output pin. Probe with DMM or if there is an LED output available.
Zesty, Thanks for the Comment. I will check out the ideas from the discussions.
ReplyDeleteWhat could go wrong? It is an analogue input with pull-ups enabled and a switch to ground. The code just checks for an "analogue" value < 300...
ReplyDeletetry this sketch:
void setup()
{
Serial.begin(115200);
digitalWrite(A3, 1);
Serial.println("Starting...");
}
void loop()
{
Serial.println(analogRead(A3));
}
run it and push the button. See if the number changes.
(I have a grand way of stating the obvious, I know...)
Thank Jeff,
ReplyDeleteIt worked, I think I have messed up the program operation while trying to re-do the Human Interface.
I will hold off on the FN switch operation until finished mucking with the code.
Thanks