Напопробовать.
Привет Николай попробовал прошивку всё работает,только исчезла задержка по включению анода.
Да если можно то выложети исходник.
Владимир
Привет Николай попробовал прошивку всё работает,только исчезла задержка по включению анода.
Да, если можно то выложети исходник.
Владимир
Владимир,не могу найти исходник, куда-то запихнул. потерпите до завтра.
Николай.
Владимир, добрый день.
Я тут допустил оплошность. Дело в том, что я почикал исходник на том компе, на котором писал и отлаживал прогу. А в отладочном исходнике на флешке, с которого компилировал для Вас, вызов этой тормозной функции вывода на экран был закомментарен.
Прилагаю исходник “as is”.
Вам необходимо раскомментарить вызов функции privetstvie и все пойдет.
Необходимо проверить откуда берутся постоянные вывода на экран изменяющихся параметров. Должны читаться из ЕЕПРОМА, в отладочном варианте это может быть по-другому. Надо проверять.
Обращаю внимание на следующее.
Большинство функции объявлено вложенными (inline). Сделано это для возможного уменьшения размера кода при компиляции с максимальной оптимизации по размеру кода. Можете это убрать, если не критично по размеру кода.
Далее. Проверить состояние параметра DEBUGGING, который определяет временнЫе константы в режиме отладки. Отрубить фразу #define DEBUGGING.
Далее. Вывод значения температуры на экран выполняется функцией PrintValue4.
Она не рассчитана на вывод отрицательных чисел. Поэтому если изделие будет эксплуатироваться при отрицательных температурах на экране будет ежик.
Для корректной работы при отрицательных значениях аргумента, ее надо изменить.
Обработка данных с датчика температуры в ф. Temperature. Поскольку градуировочная кривая датчика, примененного Вами практически прямая линия, это значительной упростило формулу подсчета.
Собственно весь текст – сырец в рабочем процессе, поэтому в тексте есть лишние места.
Вроде все.
Николай.
Уважаемый Николай Николаевич, нельзя ли выложить картинку с фьюзами. Я честно говоря слабоват в програмировании, но если есть все пояснения, то обычно все получается. Заране благодарен.
Я отлаживал на мега32, так как она была под руками.
Считайте , что для Вас Мега16 полностью идентична меге32, за исключением объема памяти.
Программирую, используя avreal + STK200/300.
Состояние фузов запрограммированного процика как их выдает avreal
Команда:
avreal32 -as -p1 +mega32
...
avreal/WIN32 - AVR controllers LPT programmer by Redchuk Alexandr
v1.27rev1 (Jan 2 2009 12:49:24) http://www.ln.ua/~real/avreal
bug-reports, suggestions and so on mail to avreal@real.kiev.ua
Command:
-as -p1 +mega32
Adapter enabled
Device connected, mega32 detected
Chip not locked
Fuses
OSCCALs = C2 C1 BD BE
BODLEVEL = 1
BODEN = 1
SUT = 3
CKSEL = 4
BLB1 = 3
BLB0 = 3
OCDEN = 1
JTAGEN = 1
CKOPT = 1
EESAVE = 1
BOOTSZ = 3
BOOTRST = 1
Total time 225ms
Reset pin released
Adapter disabled
Рекомендую начать попытки программирования именно с вышеуказанной невинной команды. Так Вы только будете читать кристалл и больше ничего.
программирование фузов
avreal32 -as -p1 +mega32 -fcksel=4 -w
Вам надо в командной строке подставить +mega16 вместо +mega32, если используется ета мега.
Программирование памяти программ и ЕЕПрома
avreal32 -as -p1 +mega32 -w swmetr1602.hex swmetr1602.eep
Надо, чтобы avreal видел оба файла прошивок, для этого надо указать либо полный путь к каждому файлу,
или записать их в один каталог рядом с avreal'om.
Программирование фузов выполняйте только после того, как убедились в том, что программа и еепром запрограммированы.
А можно сбацать батник вида
...
avreal32 -as -p1 +mega32
pause
avreal32 -as -p1 +mega32 -w swmetr1602.hex swmetr1602.eep
pause
avreal32 -as -p1 +mega32 -fcksel=4 -w
pause
...
Так можно на каждом шаге проконтролировать ход программироваия и по Ctrl-C прервать исполнение при желании.
Если процик был зашит ранее или возникло желание перешить, ОБЯЗАТЕЛЬНО надо очищать кристалл
до прошивки командой
avreal32 -as -p1 +mega32 -e
ФСЁ.
Еще один вопрос автору: куда подключаются входы Uinp и Uout. Небольшая схема не помешает. Извиняюсь за несообразительность.
На эти входы подключаются выводы компаратора, ссылка на который была в 3 посту темы.
Цитата :
«… Емкостные делители выбираются исходя из параметров лампы, так, чтобы в нормальном режиме выдавали примерно одинаковое напряжение. Резисторы выбираются исходя из чувствительности микроамперметра (с нулем по середине шкалы!) и напряжения на выходе детекторов. Подстроечным резистором устанавливаем стрелку индикатора на ноль при работе усилителя с правильно (!) настроенным П-контуром. В дальнейшем отклонения стрелки будет свидетельствовать о неправильном согласовании или/и работе в перенапряженном режиме.
Удачи!
Олег
73 de UR3IQO »
В данном случае стрелочный прибор и потенциометр отсутствуют, а выход сеточного детектора подключается к входу Uinp, с анодного детектора – на вход Uout. После настройки выходного каскада на минимум искажений напряжения с детекторов подстроечными резисторами настраиваются на 2,56 в на ножках процессора при максимальной раскачке, соответствующей минимальным искажениям. Работа устройства отражается в виде второго градусника в нижней строчке, расширяющегося из центра. Положение, когда градусник исчезает соответствует центральному положению стрелочного положения и точной настройке контура.
Собственно прочтите внимательно несколько раз первые 3 поста темы. там написано практически все, что Вам нужно.
Николай.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)