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

Управление Двумя Светодиодами На Pic16F84A


PySTAMbI4

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

Здравствуйте Уважаемые!!!

Я долго рыл сеть(Гуглил, мылил...), скачал кучу инфы по Ассемблеру для МК, и понял, что все что я нашел - ВАТА!!!

Ребят, поскажите, мож у кого есть "нормальный" справочник по программированию PIC на асме (с описанием комманд, синтаксисом, примерами...)

Если вам не сложно, черкните мне прогу на асме (от и до...):

При нажатии на кнопку последовательно переключается режим перемигивания светодиодов.

1й режим: светодиоды моргают одновременно

2й режим: светодиоды моргают поочередно

3й режим: светодиоды моргают поочередно по 2 мига за раз. (т.е. 2мига один - 2мига другой и т.д)

типа того...

Будем учиться на конкретном примере...

Изменено пользователем PySTAMbI4
Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов 50
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Здравствуйте Уважаемые!!!

Я долго рыл сеть(Гуглил, мылил...), скачал кучу инфы по Ассемблеру для МК, и понял, что все что я нашел - ВАТА!!!

...

...

...

Если вам не сложно, черкните мне прогу на асме (от и до...):

...

вах молодець!!! из далека начал...!

все команды,регистры и прочие описаны в датащите на МК

скачиваем открываем и долго курим

хочешь получить помощь?

пишешь прогу в асме

выкладываешь на обозрение

задаешь вопросы исправляешь ошибки

Изменено пользователем IMXO
Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

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

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

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

пишешь прогу в асме

выкладываешь на обозрение

задаешь вопросы исправляешь ошибки

Извеняюсь за несовсем корректное изложение своих мыслей!!!

итак...

есть код взятый с сайта MicroChip - (я его немного переделал...)

list p=16F84A
#include<P16F84A.INC>

Level	equ	0x000      ; Объявление перемменной Level и записи в нее ноль

org	00000h             ; сброс в самое начало памяти EEPROM
goto	Start              ; переход в начало программы

org	00020h             ; Установка адреса начала программы

Level_01 - моргаем все вместе
      movff    LATB,F
      ;  задержка 0,5 сек (пока еще не разобрался как сделать)
      movff    LATB,0
      ;  задержка 0,5 сек (пока еще не разобрался как сделать)

Start
clrf	LATB	   ; Чистим все порты B
clrf	TRISB      ; Установка всех портов B на вывод
clrf	Level      ; Чистим переменную Level
Loop
btfsc	PORTA,4	; - А кнопка нажата?
goto	Loop	; - неа, проверяем еще раз

IncCount
incf	Level,F		; - Переходим к следующему режиму
       goto    proga           ; - Поди ка, светодиоды переключи

Debounce
btfss	PORTA,4		; - проверь, Кнопка отпущена?
goto	Debounce	; - Нет, перепроверь!!!
goto	Loop		; - Да, отпущена, иди смотри нажата ли!

proga
       btfss   Level,0x001
       goto    level_01

END

Что-то вроде того!

Все комментарии к программе это - как я понял что к чему (если я ошибаюсь где то, пожалуйста поправьте меня)

Так же я знаю что лучше использовать прерывания и таймеры, но я пока не нашел кода для изучения!

Если кто напишет код аналогичной программы с таймерами и прерываниями, Буду очень признателен!!!

Изменено пользователем PySTAMbI4
Ссылка на комментарий
Поделиться на другие сайты

Я не большой специалист, и многое мне в этиой программе и не только в ней не понятно. Даташит читал?

Start

clrf LATB ; Чистим все порты B

clrf TRISB ; Установка всех портов B на вывод

Команда на очистку порта вроде бы правильная, однако чистиш не то надо чистить PORTB а ты - LATB. Настройка порта на вывод - правильно, только надо переключится на 1-й банк (что это такое смотри даташит). Ну а дальше - мне тяжело разобрать.

Такие веши надо отлаживать, для этого необходимо вооружиться хотябы MPLAB. А если тебе лабораторку надо сделать, то так и напиши, тебе хоть и с демоплатой изготовят - любой каприз за Ваши деньги.

А если более серьезно, вот эту "ВАТУ" которую ты скачал почитай, тем более если не имееш навыков в цифровой схемотехнике + даташит (первоисточник описания МК), для начала возьми PIC16F628A на дего даташит на руском можно найти.

Изменено пользователем Bugrim
Ссылка на комментарий
Поделиться на другие сайты

пишешь прогу в асме

выкладываешь на обозрение

задаешь вопросы исправляешь ошибки

Извеняюсь за несовсем корректное изложение своих мыслей!!!

итак...

есть код взятый с сайта MicroChip - (я его немного переделал...)

list p=16F84A
#include<P16F84A.INC>

Level	equ	0x000      ; Объявление перемменной Level и записи в нее ноль

org	00000h             ; сброс в самое начало памяти EEPROM
goto	Start              ; переход в начало программы

Ну начало еще норм.

org	00020h             ; Установка адреса начала программы

Вот это в твоем случае - не нужно: нет обработчика прерываний поэтому прогу можешь начинать с 00 адреса

Level_01 - моргаем все вместе
      movff    LATB,F
      ;  задержка 0,5 сек (пока еще не разобрался как сделать)
      movff    LATB,0
      ;  задержка 0,5 сек (пока еще не разобрался как сделать)

Вот эта часть проги явно не на своем месте + нужно "мувить" какоенить число

и оператор пишется MOVLW и/или MOVWF

Start
clrf	LATB	   ; Чистим все порты B
clrf	TRISB      ; Установка всех портов B на вывод
clrf	Level      ; Чистим переменную Level
Loop
btfsc	PORTA,4	; - А кнопка нажата?
goto	Loop	; - неа, проверяем еще раз

IncCount
incf	Level,F		; - Переходим к следующему режиму
       goto    proga           ; - Поди ка, светодиоды переключи

Debounce
btfss	PORTA,4		; - проверь, Кнопка отпущена?
goto	Debounce	; - Нет, перепроверь!!!
goto	Loop		; - Да, отпущена, иди смотри нажата ли!

Этот кусок проги вообще врядли когда-нибуть запустится!

proga
       btfss   Level,0x001
       goto    level_01

END

Что-то вроде того!

Все комментарии к программе это - как я понял что к чему (если я ошибаюсь где то, пожалуйста поправьте меня)

Так же я знаю что лучше использовать прерывания и таймеры, но я пока не нашел кода для изучения!

Если кто напишет код аналогичной программы с таймерами и прерываниями, Буду очень признателен!!!

ну тут вообще жестко!!!

Изменено пользователем Lev@
Ссылка на комментарий
Поделиться на другие сайты

С такими познаниями надо в начале зажеч/погасить светодиод, потом поморгать, поиграться с паузами (на таймерах, с помощью циклов), а только потом реализовывать "столь сложную" задачу.

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

Команда на очистку порта вроде бы правильная, однако чистиш не то надо чистить PORTB а ты - LATB. Настройка порта на вывод - правильно, только надо переключится на 1-й банк (что это такое смотри даташит). Ну а дальше - мне тяжело разобрать.

Bugrim - Спасибо за поправку!

Такие веши надо отлаживать, для этого необходимо вооружиться хотябы MPLAB

Пока нет возможности отлаживать в MPLab'е! Второй комп с Win'98 еще не досабирал... а в W'Seven MPLab глючит...

А если более серьезно, вот эту "ВАТУ" которую ты скачал почитай, тем более если не имееш навыков в цифровой схемотехнике + даташит (первоисточник описания МК), для начала возьми PIC16F628A на дего даташит на руском можно найти.

Даташит на МК PIC16F84A на русском языке у меня уже есть сижу (как сказал IMXO) курю параллельно анализируя asm'коды программ...

До этого же как то "докурился"...

А если тебе лабораторку надо сделать, то так и напиши, тебе хоть и с демоплатой изготовят - любой каприз за Ваши деньги.

Если бы для лабораторки - то я бы так и сделал!!! Тут принципиально хочу во всём разобраться == для себя...

Lev@, а можно поподробнее?

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

Сделать три цикла, в начале каждого проверка нажатости кнопки. Кнопка нажата - переход к следующему циклу. Кнопка не нажата - мигнули светодиодами так, как предусмотрено в режиме, снова проверили кнопку. В третьем цикле по нажатию кнопки переход к первому.

mig_1

    btfsc    PORTA,4   ;кнопка нажата?
        goto   mig_2   ;да - переключаем след. режим
    ;мигаем 
    ;как надо в первом режиме
    goto    mig_1

mig_2

    btfsc    PORTA,4   ;кнопка нажата?
        goto   mig_3   ;да - переключаем след. режим
    ;мигаем как надо во втором режиме

    goto    mig_2

mig_3

    btfsc    PORTA,4   ;кнопка нажата?
        goto   mig_1   ;да - возвращаемся в первый режим
    ;мигаем как надо во третьем режиме

    goto    mig_3

А вообще надо сделать не просто по нажатию кнопки, а по её нажатию и отпусканию, иначе режимы будут переключаться всё то время, пока кнопка будет нажата ))

Изменено пользователем EviL_LaugH
Ссылка на комментарий
Поделиться на другие сайты

А вообще надо сделать не просто по нажатию кнопки, а по её нажатию и отпусканию, иначе режимы будут переключаться всё то время, пока кнопка будет нажата ))

вам такое понятие как дребезг контактов знаком?

написанный вами код будет приводить к не предсказуемым реакциям устройства

для решения этой задачи используются прерывание по изменению состояния порта

с двойной проверкой с использованием задержки на время дребезга контактов

далее при тактовой частоте 4МГц микроконтроллер на каждую команду тратит 1мкс

на команды ветления 2мкс итого контроллер на обработку

     btfsc    PORTA,4   ;кнопка нажата?
        goto   mig_2   ;да - переключаем след. режим

потратит 3мкс как думаете если кнопку нажать скажем на 0,1с

в какой из циклов попадем

Изменено пользователем IMXO
Ссылка на комментарий
Поделиться на другие сайты

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

Если нажать кнопку на 0.1 с и при этом обрабатывать нажатие по ее отпусканию - хоть на 10 секунд нажмите, обработчик сработает только тогда, когда вы ее отпустите)) а насчет приведенного мной кода - да, я же и написал, что без обработки по фронту циклы будут переключаться все то время, пока нажата кнопка.

Давайте не будем пока пудрить мозг автору умными понятиями. Ему бы пока понять, как программа в контроллере должна работать, а то он там зачем-то проверяет бит какого-то регистра и потом программа в end улетает. Наверно, ему сейчас не до дребезга контактов :)

Изменено пользователем EviL_LaugH
Ссылка на комментарий
Поделиться на другие сайты

Если нажать кнопку на 0.1 с и при этом обрабатывать нажатие по ее отпусканию - хоть на 10 секунд нажмите, обработчик сработает только тогда, когда вы ее отпустите))

если не убирать дребезг обработчик сработает раз этак 20-30 только при нажатии и еше столько же при отпускании

P.S. Ув. EviL_LaugH не цитируйте полностью предыдущий пост модеры злятся :D

Изменено пользователем IMXO
Ссылка на комментарий
Поделиться на другие сайты

если не убирать дребезг обработчик сработает раз этак 20-30 только при нажатии и еше столько же при отпускании

Это Вы, пожалуй, хватанули :) может какой-нибудь PIC24 с тактовой до 120 МГц и обработает столько дребезгов, а вот PIC16 при 20 МГц максимум один в реальной схеме отрабатывал, и то раз через два :)

ПыСы: убрал цитату, спасибо :)

Изменено пользователем EviL_LaugH
Ссылка на комментарий
Поделиться на другие сайты

Рустамыч ну как вы там разбираетесь? посмотрите как я мигал светодиодами может поможет посты из темы новичкам

Но одного интернета мало, кто бы что ни говорил, но самоучитель Корабельникова и книжки Зайца для начинющих самое то, изучаите.

Изменено пользователем Andrey_Ch8

Не цитируите полностью предыдущее сообщение!!!

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

PIC16 при 20 МГц максимум один в реальной схеме отрабатывал, и то раз через два :)

на обработку команды тратится 3мкс дребезг длится в среднем 0,1-2мс

так что успевает и не один раз :D

самоучитель Корабельникова

о пошла реклама... :lol2: :lol2: :lol2:

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

на обработку команды тратится 3мкс дребезг длится в среднем 0,1-2мс

так что успевает и не один раз :D

Ну блин. Я, конечно, пока новичок в микроконтроллерах, но схем с кнопками и МК уже напаял прилично. Везде одинаково, дребезг максимум одно-два паразитных нажатия отрабатывал. :)

ЗЫ имхо никакие книги для начинающего не пойдут. Лучше всего поставить себе любую понравившуюся задачу и на основании даташита попытаться ее воплотить в жизнь. А копаться в чужих ассемблерных исходниках, да еще и адаптированных под древний мплаб (эт я про книгу Корабельникова) - радости мало. Лучше и полезнее написать самому.

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

о пошла реклама...
О если б это был платный курс, распостраняется абсолютно бесплатно)))

Не цитируите полностью предыдущее сообщение!!!

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

распостраняется абсолютно бесплатно)))

так не нать и за деньги не нать Г.. полное

не правильный подход к написанию программ в начале

ведет к проблемам в будушем

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

так не нать и за деньги не нать Г.. полное

Ну вот человек старался выложил информацию, наиподробнейшим образом. А когда человек подробно все расписывает , то как раз и есть до чего до...ться. Вот если б Е.А написал в своем самоучителе: " Я сделал программу, она делает , то и то-то, остальное смотрите в даташите на англицком", тогда бы никто не доёб...ся бы, а сказали б: " Ну , хороший самоучитель, из даташита и кучи литературы все понятно"

Не цитируите полностью предыдущее сообщение!!!

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

Здравствуйте Все я снова с вами!!! (пока масло поменял на своём тазике, пока туда... пока сюда...) ну так вот:...

Рустамыч ну как вы там разбираетесь?

Но одного интернета мало, кто бы что ни говорил, но самоучитель Корабельникова и книжки Зайца для начинющих самое то, изучаите.

Дело в том, что я сторонник практической теории... т.е. мне будет проще разобраться в практическом примере (поэтому я и просил в своём первом посте исходный код...) т.к. я уже знаком с языками программирования более высокого уровня (Си, Паскаль, Бэйсик, ну и др. Объектно-ориентированные языки...не суть...

)

Итак!!!

Распечатав код, который оставил мне в личке IMXO (кому надо "его" код, обращаемся к нему...) , а так же даташит на МК PIC16F84A начал потихоньку разбираться...(или как у вас тут говорят : КУРИТЬ!!! :-))_)

До меня доперло следующее

Я разобрался в:

1. организации памяти данной МК

2. регистрами общего назначения

3. регистрами специального назначения

4. командами к данной МК (из даташита) (но пока еще не совсем все понял)

и невъехал ещё пока в:

1. организацию прерываний (т.е. что такое и с чем курить я понял но не совсем еще разобрался как их реализовывать программно)

2. так же ещё недокурил пол-сиги про управление перефирией и модулями (то что они программируются регистрами спец.наз'а эт понятно, непонятно что на че влияет...

ну и следовательно не вкурил про задержки....

про дребез контактов мне вообще ещё думать очень рано...

ну а по поводу Самоучителя Корабельникова скажу одно - я не люблю забивать башку лишней инфой... а её там оооочень... и примеров там с гулькин нос...

как то так....

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

Рустамыч ну как вы там разбираетесь? посмотрите как я мигал светодиодами может поможет посты из темы новичкам

спс за код уже распечатал и приложил к уже имеющимся распечаткам... шуршу... муршу... разобраться хошу... ххх

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

и невъехал ещё пока в:

1. организацию прерываний (т.е. что такое и с чем курить я понял но не совсем еще разобрался как их реализовывать программно)

2. так же ещё недокурил пол-сиги про управление перефирией и модулями (то что они программируются регистрами спец.наз'а эт понятно, непонятно что на че влияет...

PIC16F84A поддерживает четыре источника прерывания

* внешние прерывание по фронту сигнала на выходе RB0/INT

* внешние прерывание по изменению уровня на выводах RB4....RB7

* внутреннее прерывание при переполнении RTCC

* внутреннее прерывание при завершении записи во внутреннюю память EEPROM

управление прерываниями реализовано с помощью регистра INTCON (адрес 0Bh )

____________________________________________________________

разряд_____|__7__|__6__|__5__|__4__|__3__|__2__|__1__|__0__|

обозначение|_ GIE _| EEIE_| TIOE_| INTE_| RBIE_| TOIF_| INTF_| RBIF_|

разряды оканчивающиеся "Е" управляют прерываниями лог"1"-разрешает прерывания лог"0"-запрещает

* GIE - разрешение GIE=1 или запрет GIE=0 всех прерываний

* EEIE- разрешение EEIE=1 или запрет EEIE=0 прерывания по завершению записи во внутреннюю память EEPROM

* TIOE- разрешение TIOE=1 или запрет TIOE=0 прерывания при переполнении RTCC (при 255->0)

* INTE- разрешение INTE=1 или запрет INTE=0 прерывания по фронту сигнала (устанавливается в OPTION бит 6 INTEDG=1 нарастающий, INTEDG=1 спадающий) на выходе RB0/INT

* RBIE- разрешение RBIE=1 или запрет RBIE=0 прерывания по изменению уровня на выходах RB4....RB7

разряды оканчивающиеся "F" - это контрольные флаги которые устанавливаются при поступлении запроса на прерывание

флаг прерывания от EEPROM в регистре EECON1 бит EEIF (4 бит)

при возникновении прерывания происходит следущие

1. Завершается команда, выполняемая в данный момент (выполняет железо)

2. Адрес следующей команды помещается в стек как адрес возврата (выполняет железо)

3. проверяются установленны ли флаги разрешения прерывания (выполняет железо)

4. устанавливается запрет глобальных прерываний разряд GIE=0 (выполняет железо)

5. осуществляется переход по адресу org 0004h в подпрограмму обработки прерываний (выполняет железо)

6. подпрограмма выисняет если необходимо (при использовании нескольких прерываний) источники прерывания (выполняет прога)

7. выполняем необходимые действия (выполняет прога)

8. сбрасываем флаги прерываний TOIF, INTF, RBIF, EEIF (выполняет прога)

9 подпрогмма обработки прерываний завершается командой retfie (выполняет прога)

9.1 в счетчик команд PC из стека выгружается адрес следующей команды (выполняет железо)

9.2 разрешаем глобальные прерывания (выполняет железо)

10 продолжение основной проги

P.S. уф...

Изменено пользователем IMXO
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Сообщения

    • У меня больше всего вопросов вызвала необычная схема обеспечения отрицательного питания. Автор этой обстоятельной заметки пишет: For this supply to work correctly, the transformer must have a secondary voltage of at least 18V RMS.  Почему? Что будет не так с отрицательным питанием, если напряжение на трансформаторе будет меньше 18В?   https://tinyurl.com/23mlwxtt - я в простейшей эмуляции ставлю 12В пикового напряжения для трансформатора и на стабилитроне все как положено: -5.6В.
    • Согласен, очень криво объяснил. Это работа трёх вольтовой линии, просто на диод шотки сдвоенный, на один анод приходит сигнал напрямую с трансформатора, а на второй через дроссель. Вольт/деление 5 вольт в клетке, тайминг по моему 10 МС. Третья фотография это сигнал на катодах уровень земли ровно по центру экрана. Но все линии по итогу в порядке 3.3 в, 5, в, 12 в и -12 в. Нагрузить все линии не могу сразу ,так как тут же выгорают транзисторы (имеется нагрузка 250 ватт по 10 ампер на каждую линию за исключением-12в), поэтому нагружаю 3.3 вольтовую линию на 10 ампер,  подключаю переменный резистор 50 ватт на 15 ом на 5 вольтовую линию и постепенно довожу до той той картины с перекосом (это гдето  50 ватт общее). По поводу микросхемы, вверху имеется скрин где между импульсами проскакивает мини импульс, если так можно сказать, он проскакивает и на одной  и на второй ноге (7,8). Микросхема не tl 494, а lw4933/abx942.1/c9421646. Далее они приходят на базы транзисторов 945g  коллекторы этих транзисторов соединены с  выводами трансформатора. Просто схема типовая, легче мне кажется просто привести фото самого блока, для тех кто разбирается будет гораздо информативне.  Диод шотки по 12 вольтовой линии был подгоревший, заменил на донора. Приводить скрины не буду что бы не захламлять тему. В итоге, пока все так же, при достижении определенной нагрузки суммарно где-то 50 ватт, появляется этот "выброс и перекос". По этому имеются мысли на два варианта, это микросхема , этот мини импульс между периодами, на низкой нагрузке особо не влияет, но при достижении определенной приводит с самовозбуждению входной цепи и непроизвольному открытию транзистора нижнего плеча. Либо дело в "горячей части", плавающий дефект в обвязке силовых ключей.  Спасибо за ответ.
    • @Gomerchik а вы контролировали как меняется уровень сигнала на А1 ардуины?
    • Спасибо за совет. Автором данного проекта я не являюсь, мне нужно было воссоздать уличный датчик для метеостанции взамен пропавшего(( Из разного найденного в интернете этот проект работает с моей станцией Орегон (спасибо автору). В понедельник попробую последовать Вашему совету. Но все равно куча непоняток  как блин это работает)) Если дело в неправильной отправки команды, то как на это влияет подключение датчика температуры? Если совсем не подключать таймер, то передача идет один раз (как и прописано в программе), станция принимает и отображает, но минут через сколько-то естественно станция уже ни чего не показывает, но с таймером питание полностью не пропадает с ардуинки, но передача сигнала каким-то образом работает по таймеру.  В моем понимании данная команда подается один раз потому, что таймер должен отключать питание МК после передачи сигнала и каждые 43 сек снова подавать питание (так того требует станция).  Ардуино передает показания температуры отключается полностью и 43 секунды мк не работает.  Сейчас у меня питание пока сделано на подпитке от солнечной батареи, но пару пасмурных дней и аккумулятор съедается до отключения(
    • thickman Так и сделаю. Вытащу из бу БП.  Буду знать, как отличить. Благодарю. Заменил транзисторы на IRFB20N50K. Картина стала, совсем другой.  Похоже трудность не в драйвере, на момент подвозбуда, переходные процессы, в нем, завершены. Увеличил затворные резисторы до 50ом, стало немного лучше.  Не понятно, почему верхний ключ греется несколько сильнее. Возможно, стоит посмотреть ток в коллекторе.  Снабберные емкости временно удалил, изменений не произошло.  Замена ТГР на другой, на кольце MSTN-16A-TH, так же, результата не принесла.   irfb20n50k.pdf
    • А что нить из ассортимента активных щупов производства СССР..))
×
×
  • Создать...