Работа над ошибками.Часть1В процессе помощи в сборке и наладки прибора накопилось множество исправлений и рекомендаций. Некоторые исправления весьма критические. Выкладываю все скопом.
ЖЕЛЕЗО1. В разводке платы блока индикации и управлении отсутствует контакт с "землей" 13 ноги мс. IC8.По этой причине не работает часть кнопок. На моей плате запаяна перемычка о которой забыл упомянуть.
2. Операционный усилитель LM358 желательно заменить на низковольтный с RailToRail выходами. Например MCP6002LM358 в этой схеме работает на нижней границе допустимого напряжения питания. Поэтому нестабилен.
3. Рекомендация. мс. IC8, IC9 настоятельно рекомендуется использовать именно HEF4017BДругие аналоги не держат необходимую частоту SPI, поэтому может вообще не работать управление прибором.
При использовании менее скоростных аналогов необходимо заливать прошивку с пониженной частотой опроса элементов управления. В этом случае работать становится менее удобно, приходится медленно крутить энкодеры.
4. Рекомендация. Диоды VD3, VD4 платы управления. Желательно использовать именно диоды "Шоттки".Иначе часть кнопок может не работать.
5. Емкость конденсатора C8 на плате управления в пределах 30-100nf.Файл разводки печатной платы и схема с исправлениями прилагаются.
Добавлено after 47 minutes 53 seconds:Работа над ошибками.Часть2Основные доделки и критические исправления накопились в прошивке. Не смотря на то, что мой прибор работал вполне нормально, Эти ошибки наиболее критические на мой взгяд.
ПРОГРАММА1. Исправлена критическая ошибка в алгоритме инициализации дисплея.Теперь запустить в работу дисплей значительно проще.
2. Исправлена критическая ошибка в модулях работы с SPI интерфейсом.Управление элементами схемы по SPI и опрос кнопок могли пересекаться по времени, что приводило к зависанию.
3. Наконец сделал прошивку для частоты 15MHz.Теперь можно не разгонять МК, а работать на штатной частоте. Все временные коэффициенты пересчитаны для этой частоты.
Можно оставить штатный генератор на 30MHz и залить прошивку с делителем частоты пополам.
Можно припаять генератор или кварц на 15MHz и залить прошивку с поддержкой этой частоты без делителя.
При использовании кварца, фьюзы необходимо перенастроить.
4. Сделал по три варианта прошивок с разной скоростью опроса кнопок и энкодеров.Если не удается запустить корректный опрос элементов управления на штатной частоте, из-за дребезга или медленных счетчиков, можно залить прошивку с более медленным опросом.
5. Сделал тестовые прошивки для настройки кнопок, выводящие на экран полученные с блока управления коды.Расшифровка параметров прошивки:
Oscilloscope_fxxdxsx.hex
fxx - частота генератора или кварца: f30 = 30MHz, f15 = 15MHz
dx - делитель тактовой частоты: d1 - тактовая частота равна частоте генератора или кварца, d2 - делитель пополам.
sx - делитель скорости опроса элементов еправления: s1, s2, s3. s1- штатная скорость опроса, s3 - самая медленная скорость.
- Вложения
-
- BtnTest.zip
- Тест кнопок
- (322.68 KiB) Скачиваний: 587
-
- Hex.zip
- Рабочие прошивки
- (376.89 KiB) Скачиваний: 570
-
- Scheme.zip
- (88.53 KiB) Скачиваний: 587
-
- PCB.zip
- (316.34 KiB) Скачиваний: 639