Пришли платки для аттенюатора, начнем собирать прототип…
Начнем как обычно с цепей питания, схема
Подаем питание в пределах +5…9v, светик PWR загорается, для проверки, в контрольных точках измерим значения напряжений
Все в норме! Идем дальше, запаяем МК ATMEGA 328P и его обвязку, схема
Выглядит все это теперь так
Попробуем прошить МК, для этого подключаем программатор USBAsp к разъему J2 IСSP ардуиновскими проводками, можно и припаять проводки, но так как шаг между пинами разъема на плате меньше чем 2,75мм, то ардуиновские проводки прекрасно держатся и без пайки. По сути прошить то надо всего один раз.
Подключаем программатор к компьютеру, питание на плату подавать не надо, открываем программу для прошивки МК и пробуем считать калибровочные ячейки генератора по кнопке «Чтение»
Программатор увидел наш МК, все отлично, выбираем прошивку в поле «Flash» и прошиваем по кнопке «Программирование»
Все успешно! Переходим на вкладку «Fuses», выставляем биты как на картинке ниже и прошиваем по кнопке «Программирование»
Отлично! Теперь отключаем программатор, подключаем дисплей к соответствующему разъему соблюдая распиновку, слева на право GND/VDD/SCK/SDA и подаем питание
Программа успешно запустилась и остановилась на отображении значения напряжения источника питания, тут все правильно, так как у нас не распаян делитель напряжения на вход АЦП, вот его схема
распаиваем ее, я запаял следующие значения резисторов R10 — 68k, R9 — 22k, R11 — 12k, особая точность тут не нужна, у меня получилось в пределах +/- 0,2v, но подбором резисторов в данной схеме делителя можно выставить и более точное значение показаний.
Далее соберем схему управления аттенюатором
Подключаем энкодер, согласно схеме, на плате разъем J3, снизу вверх GND/+3.3v/BUT_ENC/ENC_1/ENC_2
Линии +3,3v и BUT_ENC подключаем к пинам кнопки энкодера, GND на средний пин, ENC_1 и ENC_2 на крайние пины, если направление врашения не устраивает меняем местами линии ENC_1 и ENC_2. Подаем питание и проверяем работу кнопок и энкодера
Описание управления в файле verinfo.txt в архиве с прошивкой. Для дальнейшей проверки настроим аттенюатор следующим образом. Удержанием кнопки энкодера ждем символа «S» в правом верхнем углу, как данный символ появится отпускаем кнопку энкодера, тем самым попадем в настройки, первый пункт разрешаем/запрещаем сохранение текущего состояния аттенюатора в EEPROM
значение YES/NO выбираем вращением энкодера, переход к следующему пункту настроек кратковременное нажатие кнопки энкодера
здесь устанавливаем вращением энкодера минимальное значение напряжения источника питания, я выставил 5,0v, нажатием на кнопку энкодера переходим к следующему пункту
здесь указываем значение внутреннего затухания цифрового ступенчатого аттенюатора PE4302, пока оставим значение 0,0dB, следующий пункт
здесь указываем уровень сигнала на входе аттенюатора в dBm, пока оставим 0,0dBm, удержанием кнопки «STEP» выбираем шаг перестройки, точка в правом нижнем углу шаг 0,1, нет символа в правом нижнем углу шаг 1, двоеточие шаг 10, следующий пункты, это значения внешних аттенюаторов, пока тоже оставим значения равные 0,0dB
Выходим из настроек нажатием на кнопку энкодера. Теперь проверим управляющие сигналы для цифрового ступенчатого аттенюатора, для этого установим нулевое затухание вращением энкодера и проверим напряжение на НЕ «земляных» контактных площадках конденсаторов С43..С48, значение должно соответствовать логическому нулю, далее выставим вращением энкодера максимальное затухание
теперь на тех же контактных площадках конденсаторов C43…С48 Должны получить значение логической единицы равное +3,3v. У меня все соответствует!
Снижаем напряжение источника питания до +5v и наблюдаем соответствующее предупреждение на дисплее
73!