Например TDA7294

Форум РадиоКот • Просмотр темы - непонятная ошибка PIC12F1822
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Ср май 01, 2024 12:04:44

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: непонятная ошибка PIC12F1822
СообщениеДобавлено: Пн май 30, 2022 11:59:43 
Сверлит текстолит когтями
Аватар пользователя

Карма: 12
Рейтинг сообщений: 54
Зарегистрирован: Вс май 21, 2006 16:07:59
Сообщений: 1201
Откуда: Алтай
Рейтинг сообщения: 0
Делаю формирователь сигнала точного времени (00 минут 00 секунд) по сигналам от GPS.
Программка для PIC12F1822 написана на АСМе в MPLABX. Для симуляции сделал проект в Proteus 8.11 в связке с программкой Docklight. В итоге пока еще "сырая" программка отрабатывает в симуляторе нормально, на выходе два сигнала, каждую секунду сигнал GPS и сигнал точного времени.
В реале же не все так радужно, как в Протеусе. Если секундный импульс есть, то на выходе сигнала точного времени постоянно торчит единичка. И даже когда настраиваю линию порта на выход только при совпадении с нулевыми значениями, на выходе светодиод включен постоянно.
С этими камешками (12F1xxx) работаю впервые, может чего напутал при инициализации МК?
Буду признателен толковому совету.


Вложения:
gps_p1822_00.asm [8.83 KiB]
Скачиваний: 79
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: непонятная ошибка PIC12F1822
СообщениеДобавлено: Пн май 30, 2022 14:35:24 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21874
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Буду признателен толковому совету.

Должен вас огорчить, но код очень плохо читается.
Единственный совет - включить дебаг и посмотреть на железе в MPLABX.
Но для этого нужно использовать штатный метод резервирования оперативной памяти вместо древнего определения переменных как констант имен.
Сиречь, вместо:
Код:
           cblock      0x20 
    uart_byte
    FLAG
    FLAG1
    time_null
           endc   

нужно написать:
Код:
      udata      0x20 
uart_byte:     res 1
FLAG:            res 2
time_null:       res 1

После чего использовать переменную FLAG как 16-битную с младшим байтом FLAG и старшим байтом FLAG+1. А в окне Watches установить размер этой переменной - 2 байта.
Если этого не сделать, то переменные наблюдать в окне Watches будет невозможно, а в окне File Registers крайне неудобно из-за отсутствия имен.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: непонятная ошибка PIC12F1822
СообщениеДобавлено: Пн май 30, 2022 16:27:32 
Сверлит текстолит когтями
Аватар пользователя

Карма: 12
Рейтинг сообщений: 54
Зарегистрирован: Вс май 21, 2006 16:07:59
Сообщений: 1201
Откуда: Алтай
Рейтинг сообщения: 0
Если этого не сделать, то переменные наблюдать в окне Watches будет невозможно, а в окне File Registers крайне неудобно из-за отсутствия имен.

Спасибо, буду пробовать.
Надеялся, что в Протеусе можно будет пошагово пройтись по программке, но классическая замена hex на исполняемый файл cof результата не дала, окно исходника пустое. :dont_know:


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: непонятная ошибка PIC12F1822
СообщениеДобавлено: Пн май 30, 2022 16:54:23 
Потрогал лапой паяльник
Аватар пользователя

Карма: -6
Рейтинг сообщений: -1
Зарегистрирован: Вс апр 03, 2022 07:01:29
Сообщений: 362
Рейтинг сообщения: 1
Эх, лет 15 назад я еще умел писать на ассемблере для PIC :))) Щас уже разучился.
Но вот в Протеусе же можно запустить пошаговую отладку, создав проект с этим микроконтроллером и выбрав вот так:
Изображение
затем вставить текст вашей проги, скомпилировать его и запустить пошаговую отладку:
Изображение


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: непонятная ошибка PIC12F1822
СообщениеДобавлено: Пн май 30, 2022 17:22:44 
Сверлит текстолит когтями
Аватар пользователя

Карма: 12
Рейтинг сообщений: 54
Зарегистрирован: Вс май 21, 2006 16:07:59
Сообщений: 1201
Откуда: Алтай
Рейтинг сообщения: 0
Но вот в Протеусе же можно запустить пошаговую отладку, создав проект с этим микроконтроллером и выбрав вот так:

Спасибо, вот про такой вариант решения задачи я не знал :write:


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
В сети
 Заголовок сообщения: Re: непонятная ошибка PIC12F1822
СообщениеДобавлено: Пн май 30, 2022 17:37:10 
Сверлит текстолит когтями

Карма: 20
Рейтинг сообщений: 302
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1228
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
НовыйДень, спасибо. Для PIC, и на C при помощи CCS попробовал, быстро, легко и точно получилось. Будем использовать :).
Виртуальный blink заморгал за нескольких секунд писания кода :).


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y