Форум по микроконтроллерам: PIC16F628A проблема с исходником - Форум по микроконтроллерам

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

PIC16F628A проблема с исходником

#1 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 29 Январь 2017 - 16:48

Доброго времени суток ув. Форумчане! Возникла проблема с детским креслом качалка. В соседней ТЕМЕ это обсуждалось, но это было давно и автора уже не найти. Может кто то из вас сможет помочь с проблемкой в исходнике, т.к. контроллеры я практически не знаю и найти причину не могу. Ближе к делу. Собрал схему как делал автор, залил прошивку в контроллер, заработало как положенно, но где то через 10 сек. генерация ШИМ заканчивается, моторчик останавливается и начинают мерцать все светодиоды кнопок. При повторном нажатии на кнопки выбора скоростей все повторяется - 10 сек. работы и мерцание. Сразу подумал что проблема в монтаже, но проверка на ошибки ничего не дала. Решил промоделировать модель в протеусе с того архива что автор прикреплял. При моделировании схема ведет себя аналогично моей((( Уважаемые форумчане помогите разобраться в чем дело.

Схема

Прикрепленное изображение: 9.PNG

Проект (протеус+MPLABX+XC8)
Прикрепленный файл  Button_PWM_Melody.rar (170,71К)
Количество загрузок:: 49

Исходник
Скрытый текст

Сообщение отредактировал D.mon: 29 Январь 2017 - 18:04

-3

#2 Пользователь офлайн   nick14 

  • PipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 465
  • Регистрация: 15 Февраль 11
  • ГородРыбинск

Отправлено 01 Февраль 2017 - 10:38

Для того что бы Вам помочь нужно понять как вообще должно работать это устройство, можете простыми словами описать алгоритм работы?
0

#3 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 01 Февраль 2017 - 14:58

Спасибо что отозвались! После включения питания ничего не происходит. При нажатии любой кнопки от 1 до 6 появляется генерация ШИМ на порту RB3. Кнопками 1 - 6 задаются скорости качания качели. При выборе, к примеру, режима "4" (SW11)загорается светодиод(D4) подсветки этой кнопки. И так в любой очередности на повышение или на понижение скорости вращения двигателя. Для выключения эл. мотора качели нужно нажать кнопку выключения (SW7). К порту RB0 подключена оптопара в которую вставлена шторка с прорезями 10101010. На сколько я понял когда оптопара срабатывает(луч светодиода попадает на прорезь) мотор должен ускоряться до того момента как не попадет на шторку. По моему мнению сделано для повышения мощности мотора на малых скоростях качания.

Вот у меня получается что при нажатии на любую кнопку задачи скорости мотор включается, подсветка кнопки тоже включается, но через 13 секунд работы мотор останавливается и начинают мерцать все светодиоды кнопок одновременно с частотой около 10 Гц (ну это так приблизительно на глаз).

Схема включалась на столе от БП через стабилизатор LM7805.
0

#4 Пользователь офлайн   nick14 

  • PipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 465
  • Регистрация: 15 Февраль 11
  • ГородРыбинск

Отправлено 01 Февраль 2017 - 22:20

Просмотр сообщенияD.mon (01 Февраль 2017 - 14:58) писал:

К порту RB0 подключена оптопара в которую вставлена шторка с прорезями 10101010. На сколько я понял когда оптопара срабатывает(луч светодиода попадает на прорезь) мотор должен ускоряться до того момента как не попадет на шторку. По моему мнению сделано для повышения мощности мотора на малых скоростях качания.


В программе по входу RB0 должны приходить импульсы, которые сбрасывают таймер. Если импульсов нет то получается выход в такой режим....
0

#5 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 01 Февраль 2017 - 22:32

Так вроде бы оптопара подключена, и там шторка ездит туда сюда... хм... буду мерит напряжение которое приходит на вход RB0.
Кстати напряжение низкого уровня какое считается?

Сообщение отредактировал D.mon: 01 Февраль 2017 - 22:34

0

#6 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 01 Февраль 2017 - 22:37

ага, напряжение на входе минимальное 1.6В, максимум 4.8В. Возможно 1.6В многовато, попробую еще один резистор впаять последовательно. Кстати по схеме там не 1к, а 10кОм стоит везде.

Сообщение отредактировал D.mon: 01 Февраль 2017 - 22:39

0

#7 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 01 Февраль 2017 - 23:00

Да, Вы совершенно правы! Импульсов не было на RB0, т.к. 1.6В считало высоким уровнем. Добавил еще 10к в цепь, напряжение упало до 0,15В и все стало работать нормально.

А скважность импульсов в программе не подскажите где увеличить? С 1 по 4 скорости мотор даже не крутится а только пищит... Напряжение на моторе 0.4В. В начале программы есть таблица скоростей, тут можно добавить оборотов?
0

#8 Пользователь офлайн   boatcall 

  • Знаток
  • PipPip
  • Группа: Пользователи
  • Сообщений: 70
  • Регистрация: 29 Октябрь 14
  • ГородКрасноярск

Отправлено 02 Февраль 2017 - 10:08

А программу сами писали? Лично я, увидев
...goto antidreb...
даже смотреть дальше не стал. И в целом программа кривая. Много лишнего, а того что нужно нет.

Сообщение отредактировал boatcall: 02 Февраль 2017 - 10:11

0

#9 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 02 Февраль 2017 - 11:51

Просмотр сообщенияboatcall (02 Февраль 2017 - 10:08) писал:

А программу сами писали? Лично я, увидев
...goto antidreb...
даже смотреть дальше не стал. И в целом программа кривая. Много лишнего, а того что нужно нет.


Нет, программу писал не я)))) Если бы я был силен в программировании то таких очевидных вопросов я бы не задавал))) Программа из соседней ТЕМЫ, но автора я не нашел.

А в кратце что значит следущее
...goto antidreb...
???
Переход на подпрограмму?
0

#10 Пользователь офлайн   nick14 

  • PipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 465
  • Регистрация: 15 Февраль 11
  • ГородРыбинск

Отправлено 02 Февраль 2017 - 13:00

Программа действительно кривая, но наверно рабочая и обсуждать нет смысла.... тут уже вам решать. Но другой пока никто не написал да вы и не просили.
0

#11 Пользователь офлайн   D.mon 

  • Новичок
  • Pip
  • Группа: Пользователи
  • Сообщений: 8
  • Регистрация: 29 Январь 17

Отправлено 02 Февраль 2017 - 13:20

Да, программа рабочая в принципе свои функции как никак выполняет. Единственное можно ли скважность импульсов ШИМ поднять малой кровью, так сказать? Может там какой то коэффициент поменять...

Сообщение отредактировал D.mon: 02 Февраль 2017 - 13:21

0

#12 Пользователь офлайн   nick14 

  • PipPipPipPip
  • Группа: Пользователи
  • Сообщений: 1 465
  • Регистрация: 15 Февраль 11
  • ГородРыбинск

Отправлено 02 Февраль 2017 - 14:02

Как понял из программы можно изменить как вы и говорили значения в таблице...
//Таблица скоростей двигателя для каждой кнопки (резистор к полевику 470 Ом, конденсатор 2.2мкФ)
#define ONE 725
#define TWO 780
#define THREE 835
#define FOUR 890
#define FIVE 945//853
#define SIX 1000//1023

Режимы там к примеру режим 1 (ONE/720), режим 2 (ONE/720, TWO/780) и т.д. Наверно нужно просто уменьшить все значения в одинаковой пропорции...
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей