Перейти к содержанию

Palxta

Регулятор мощности на pic16f628a

Рекомендуемые сообщения

Третий день бьюсь над созданием регулятора мощности.

Идея такая. Кнопочками выбираем от 0 до 100 уровень мощности, на выходе светодиод и т.д..... скажем при установке 90% светодиод 90 периодов времени светит , 10 периодов нет. Вроди как просто, но при попытке создания, тот светодиод ведет себя не адекватно, то 50*50 периодов  включается, то как задано...

разные пути пробовал, не выходит ничего....

Принцип строил такой;

КНОПКИ

if k1 = 0 and k2 = 1 then
must = must + 1

if must > 100 then must = must - 1
endif
if k1 = 1 and k2 = 0 then
must = must - 1

if must < 20 then must = must + 1
endif

write 5, must
 PAUSE 10
 Mrab = must
 mpau = 100- must
return

отсчет периодов (м - включение в 1 по программе, out - светодиод,  must - переменная установки вых. мощности, mrab - переменная времени работы, mpau- переменная паузы)

if m = 1 then
     if mpau >0 then
     mpau = mpau - 1
     out = 0
     endif
     if mrab = 0 then
     mpau = 100 - must
     mrab = must
     endif
     if mpau = 0 then
     mrab = mrab - 1
     out = 1
     endif
     
endif

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
 

в 628 контроллере встроен аппаратный модуль ШИМ, поэтому с ним проблем вообще не должно быть проблем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
 
 

Оч. интересно... но только учусь, сейчас как раз изучаю прерывания... сложно пока) хочу перейти на пик 676

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Да ничего сложного там нет. Просто нужно разобраться. 

Для расчёта таймеров на винду есть программа PIC Timer Calculator. Есть сайты, где можно рассчитать частоту или период срабатывания таймеров. Либо их задать, и получить всё настройки. 

Прерывания у всех PIC-ов одинаковые, отличие лишь в наличии или отсутствии тех или иных устройств внутри микроконтроллеров. Например Timer2 или Timer3 отсутствует в 628 и 676 микроконтроллере. 

В 676 есть аналоговый вход, есть и прерывание, связанное с ним. 

На 16f84, 16f628, 12f629, 12f675 есть даташиты на русском языке. Рекомендую их почитать. Там расписаны всё регистры, что за что отвечает. 

Всё что там написано распространяется и на остальные микроконтроллеры микрочип. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти



×
  • Создать...