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

Evgeniy

Администраторы
  • Публикаций

    1 844
  • Зарегистрирован

  • Посещение

  • Победитель дней

    130
Весь контент Evgeniy
 
 
  1. Попробуй вот так: TimePause=0 i=0 main: for i = 0 to TimePause Button but1,0,255,255,buf1,1,speedDw Button but2,0,255,255,buf2,1,SpeedUp delayms 200 next i toggle led goto main SpeedDw: timepause = TimePause + 1 if TimePause > 10 then TimePause = 10 i=0 gomo main SpeedUp: timepause = TimePause - 1 if TimePause > 10 then TimePause = 0 i=0 gomo main В твоей программе при нажатии кнопки происходит переход на указанную метку (команда buttun так устроена). В данном случае на метку SpeedUp или SpeedDw. Эти подпрограммы должны заканчиваться безусловным переходом, а конкретно командой goto. Но у тебя они заканчиваются командой возврата (return). Но так как в эту подпрограмму после нажатия кнопок попадаем по goto, return не знает кто вызвал подпрограмму и естественно не знает куда надо вернуться! Поэтому и зависает. Протеус должен кучу ошибок сыпать. Цепочка gosub -> goto -> return не должна работать, она и не работает.
  2. Попробуй сначала помогать всеми выводами TRISA=%00000000 TRISB=%00000000 ALL_DIGITAL true main: PortA=255 PortB=255 Delayms 200 PortA=0 PortB=0 Delayms 200 Goto main Если все выводы моргают, значит они настроены как цифровые. Потом меняй регистры: TRISA=%11111111 TRISB=%11111110 и вставляй свой код.
  3. Если программа компилируется без ошибок, значит в ней ошибок нет. Конфигурации микроконтроллера в самом начале программы не видно? config ??? Регистры TRIS правильно настроены? Строчки Device = 16Fххх ? Попробуй перед main добавить: ALL_DIGITAL true Для того, что бы все выводы портов стали цифровыми.
  4. Когда я собирал шокеры, мне попадались китайские транзисторы IRFZ44, с которыми шокер работал, но на выходе была хилая дуга. При этом транзисторы не грелись. Я всё перепроверил. Заменив транзисторы на такие же, но купленные в другом магазине, шокер заработал как надо. Возможно и у тебя так же. Тут вся схема - 3 детали.
  5. Там огромный зазор. Такой огромный и не нужен. Достаточно 0,1-0,2мм. Можно взять две одинаковые половинки и в центре положить кусок бумаги.
  6. Трансформатор проверял, как я выше писал? Есть искра? Обмотки правильно сфазированы?
  7. Схема однотактная, и для того, что бы сердечник не входил в насыщение, а обмотки не превращались в перемычки, в сердечнике делают немагнитный зазор. Попробуй поднять напряжение до 7-8В. Скорее всего транзистору просто не хватает напряжения для открытия.
  8. В этой схему IRFZ44 может и не работать, ему большее напряжение требуется. Лучше IRL3705 поставить. Или подобный, с логическим уровнем на затворе. Можно с материнок наковырять, там таких полно.
  9. Дак там в схеме резистор на 100 Ом. Вообще, лучше подстрочный установить, и настроить так, чтобы нормальная дуга была, и при этом жрало немного. Такой компромисс выбрать. Обмотки правильно с фазировали? Собранный трансформатор проверяется так: - Концы высоковольтных проводов расположить так, что бы между ними был небольшой зазор 1-2мм; - Один конец первичной обмотки трансформатора подключить к источнику тока, аккумулятору. Вторым концом чиркаете по второму выводу источника тока. В этот момент во вторичной обмотке должно появлятся высокое напряжение и в зазоре проскакивать искра. Таким образом подключаем половинки первички по очереди, потом соединяем обмотки последовательно, а к источнику тока подключаем крайние концы обмоток. Соединённые выводы не трогаем, они висят при этом в воздухе. Если обмотки правильно сфазированы, то на выходе так же будет проскакивать искра. Если сфазированы неправильно, то искр не будет, и в схеме трансформатор работать не будет. Мало от краёв отступили, может между слоями пробить.
  10. Конденсаторы С1 и С2 исправны? При старте под нагрузкой возможен бросок тока, входное напряжение проседает ниже порогового и ШИМ уходит в защиту. Попробуй замени их или параллельно подоткнуть ёмкость.
  11. Предлагаю собрать другую схему. По проще, схема на КТ117 транзисторе.
  12. Самое простое, это подключить 5 последовательно соединённых термистора на 100к. Получатся те же 500к. Термистор должен быть с отрицательным ТКС. То есть при нагреве сопровождение должно уменьшаться.
  13. В принципе, эту строчку можно просто удалить. И скомпилировать без битов конфигурации. А при прошивке в программе выбрать настройку тактового генератора, включить нужные биты и прошить микроконтроллер. Есть сайты с онлайн расчетом слова конфигурации для pic контроллеров. Например в pickit биты не выставить, но конфигурационное слово вписать можно. Для образца конфигурации контроллера лучше в папке pbp поискать файлы, их названия соответствуют марками pic контроллеров, и они легко ищутся поисковиком. Открываются просты блокнотом. Конфигурация в pbp3 немного отличается от pbp2.6 отличия незначительные.
  14. У каждой железки есть свой даташит, в котором подробно описано как с ней работать. Датчики DHT-11 и DHT-22 не исключение. В архиве программа на PicBasic Pro, которая автоматически распознаёт тип датчика (DHT-11 или DHT-22), и выводит с него на индикатор температуру и влажность. Микроконтроллер работает с кварцем 10мГц! Для другой частоты нужно подбирать переменные, но это довольно просто. DHT-11.zip
  15. А если кусок схемы разрисовать? Куда эти детали подключены? Возможно обычные MOSFET. Погляди тут.
  16. А если кусок схемы разрисовать? Куда эти детали подключены? Возможно обычные MOSFET.
  17. Проект на 676 может и интересен, но для начала лучше попробовать тоже самое на микроконтроллере с большим количеством портов, что бы не извращаться с кодом. Когда всё получиться, пытаться впихнуть в 676. Ds18b20 при 12 битном преобразовании тратить 750мс времени! При динамической индикации, во время ожидания ответа от этого датчика, индикатор будет выключен. Поэтому датчик лучше опрашивать раз в 5-10 секунд. А то и реже. Если что то массивное нагревать, скорость нагрева не велика, и нечего его опрашивать каждую секунду. Опрос датчика можно повесить на TIMER1. Его можно настроить на прерывание раз в 1-2 секунды. Кнопки лучше опрашивать в главном цикле. Мой протэус как то не хочет переваривать кнопки параллельно индикатору, начинает жутко тормозить и зависать. Надо попробовать свежее. Хотя я раньше делал такое устройство, и в протэусе все работало хорошо. На Али есть светодиодные индикаторы с последовательным вводом на 74HC595. https://a.aliexpress.com/_AWG5OJ Для управления 2,3,4,8,16 индикаторами требуется всего 3 порта микроконтроллера! Индикация тоже динамическая, но портов нужно в разы меньше. Программа вывода информации ничуть не сложнее. DHT22 очень похож на DHT11, и код подходит. Примеров валом в интернете. Лично я не пробовал. У них точность ниже, и как то мне они не зашли.
  18. Из-за нехватки ног у 676 микроконтроллера, в этом проекте 3 его порта используются как выходы для отображения информации на индикаторе, и как входы для опроса кнопок и датчика температуры. Дело конечно не хитрое, передёргивать регистры TRIS. Но если термостат разрабатывается с нуля, я бы не экономил на выводах мк, и установил бы 18 ногой. Но для обучения можно подзаморлчиться и написать программу.
  19. А с чем связано применение 676 микроконтроллера? У него и ног меньше, и памяти, например чем у 628? Достоинство 676 - это наличие у него АЦП. Но это достоинство в термостате не применяется. В данном проэкте можно обойтись и без прерываний.
  20. У меня протеус версии 8.3. Проекты из посвежее он не открывает. Да и прошивки к проекту нет. Лучше картинку из проекта выложи, что бы я собрать смог. Ну и листинг программы не помешает.
  21. Первая же ссылка в гугле выдала даташит для 629/675 пика на русском языке http://kazus.ru/nuke/pic/parts/PIC12F629_675.pdf На 676 тоже легко ищется https://www.radioradar.net/hand_book/documentation/pic16f676_pic16f630.html
 
×
  • Создать...