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

Rockman

Members
  • Постов

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

  • Посещение

Сообщения, опубликованные Rockman

  1. Доброго времени суток, решил начать потихоньку осваивать МК, т.к схемы собранные на рассыпухи не отличаются высокой точностью и стабильностью. Начал ставить задачи по этапно - моргание светодиодом -> моргание светодиодом после нажатия на кнопку - > моргание светодиодом при нажатии на кнопку в течении 40 секунд-> всё остальное что может делать МК в течении этих 40 сек.

    На данном моменте застрял на 3-ем этапе, никак не могу разобраться как прикрутить работу таймера к своему коду, листинг прилагаю (1- программа моргания светодиодом 3 раза, после нажатия на кнопку, 2 - изыскания на тему таймера):

    #include <mega8.h>
    #include <delay.h>
    #include <interrupt.h>
    #include <io.h>
    #define PD2 2 // Переобозначение 2 пина порта D на его имя.
    
    void main(void)
    {
    PORTD = 0b10000000; // Подключаем подтягивающий PULL-UP резистор к 2 пину порта D.
    DDRD = 0b00000000; // Настроим порт D на ввод информации.
    DDRB = 0b11111111; //Настроим порт D на вывод информации.
    while(1) // Бесконечный цикл опроса кнопок.
    {	
     if (PIND &= 1<<PD2) // Считываем 2 пин порта D.
     {
    	 PORTB =0b00000000; // Если 1 (кнопка не нажата), то гасим светодиод.
     }
     else	
     {
     PORTB = 0b00000001; // Если 0 (т. е. кнопка нажата), то зажигаем светодиод.
     delay_ms(500);
     PORTB = 0x00000000;
     delay_ms(500);
     PORTB = 0x00000001;
     delay_ms(500);
     PORTB = 0x00000000;
     delay_ms(500);
     PORTB = 0x00000001;
     }
    
    

    а теперь таймер:

    #include <mega8.h>
    #define s;
    int s; // переменная для хранения секунд
    
    // Обработка прерывания по совпадению
    interrupt [TIM1_COMPA] void timer1_compa_isr(void)
    {
    s++; // увеличиваем переменную каждую секунду
    if(s>59) // обнуляем секунды после 59
    {
     s=0;
    }
    TCNT1=0; //обнуляем таймер
    }
    
    void main(void)
    {
    
    TCCR1A=0x00; //настройка таймера
    TCCR1B=0x05;
    TCNT1=0x00; //здесь увеличиваются тики
    OCR1A=0x1E85; //записываем число в регистр сравнения
    
    TIMSK=0x10; //запускаем таймер
    }
    

  2. Shida, Falconist , благодарствую за ликбез, т.е по факту у меня просто выходной сигнал с чередованием разностей напряжений, который ничем не управляется, соответственно не может быть назван никаким типом из модуляций, я так понял

    По своей проблеме : косяк в схеме нашёл, это отсутствие входной емкости на КРЕН, при подачи фазы (на зарядник), напряжение на АКБ начинало немного пульсировать, и соответственно схема работала нестабильно. А тестил лишь на постоянке (на БП и голом АКБ), и сразу выявить не смог проблему. Детский косяк конечно, но увы..

    ЗЫ а еще один тестовый конденсатор оказался вздутый, не заметил сразу поэтому отписал, что дело не в них)

  3. Falconist, ШИМ меняет усредненное значение напряжения на выходе, а я просто задаю ключевой режим работы, вы это хотите сказать?

    Vascom, увы, кондеры не помогли.. :(

    уже затвор притягивал к земле, дабы избежать влияния емкости (на затворе) - тоже не помогло, хоть ты с бубном ходи..

    Ах да! совсем забыл проводка 220В и провода на фонарь, лежат в одной гофре, длинна кабеля порядка 5 метров, возможны наводки на таких расстояниях?

  4. Доброго времени суток форумчане, собрал схему для моргания светильником в режиме ШИМ с частоой ~1 Гц, с питание от АКБ и зарядным устройством, но обнаружил следующую проблему, при включении ЗУ в сеть, через некоторое время наблюдается сбой в работе ШИМ, начинается "дискотека", в чем причина пока понять не получается, есть мысль посавить фильтрующие кондеры по входу-выходу КРЕНки, на схеме зачеркнуты т.к их нет, но вот панацея ли это? Картинки прилагаю, блок "схема" это тот в котором принципиалка находится. буду благодарен за любые предположения с вашей стороны (ЗУ не заземлено к слову)

    post-165124-0-51865200-1440591378_thumb.jpg

    post-165124-0-07465500-1440591380_thumb.jpg

  5. Прошу еще помощ, скажите а как собрать схему на 555 таймере в режиме мультивибратора, чтобы при каждом изменении уровня входа, время "сброса" выхода обнулялось. Ну т.е например, вот сейчас, пришёл импульс на вход, на выходе в течении 15 секунд высокий уровень, и таймеру пофик что там по входу пока эти 15 сек не пройдут, а как сделать так чтобы при приходе импульса на вход эти 15 секунд обнулялись?

  6. Уважаемое сообщество, а подскажите еще вот что, почему у меня транзистор Q4 до конца не закрывается? пробовал объединять базу с коллектором, всё равно( он во включенном состоянии держит напряжение порядка 8 вольт а в закрытом, порядка 1

    ЗЫ Всё решил! объединил эмиттер с базой :)

  7. Кажется нашёл.. вс дело в выходе Сброса, он привязан к тому же питающему напряжению, что идет на триггер. Есть у кого-нибудь идеи как сохранить напряжение на это выходе (он инвертирующий), что бы таймер не сбрасывался?

    ЗЫ Поставил диод и конденсатор, заработало :)

  8. Прошу еще помощи сообщества, для задержки выключения решил использовать еще один 555 таймер, собрал схему моностабильного мультивибратора, но на выходе вход просто дублируется, а мне надо чтоб была задержка (на время разрядки кондера С4, что я делаю не так? если поменять местами Tres и Trig то на выходе вообще 0 :(

    post-165124-0-17223300-1438157441_thumb.jpg

    post-165124-0-25756600-1438157442_thumb.jpg

  9. Shida, спасибо, ща погуглю схему с полевиком. Фамилию Шмитта запомню)

    на последней осциллограмме явно видно отсутствие импульсов?

    Дык они отсутствуют когда напряжение на АКБ упало ниже критичного уровня (триг.Шмитта отработал), а мне надо чтоб закорачивание на землю (ключом) запускало генератор (555) и при этом после отпускания кнопки еще некоторое время генератор продолжал работать

  10. Доброго времени суток форумчане, я хочу сделать схему для моргания фонарем, запитанную от АКБ, условия : фонарь должен моргать при двух условиях - когда напряжение хорошее и кто-то жмякает на кнопку. Что у меня получилось смотрите в приложении. Не получается решить вопрос с кнопкой, закорачивание входа RESET не дает результата что я не так делаю? и ещё, как на максимально простых элементах сделать задержку, т.е кнопку нажали и фонарь моргает некоторое время.

    1 график моделирует изменение напруги на АКБ

    2 график отображает напругу на выходе шмидта

    3 ноль ну т.е закороченная кнопка :)

    5 выход 555 (ШИМ)

    post-165124-0-71205400-1438006635_thumb.jpg

    post-165124-0-44293600-1438006636_thumb.jpg

  11. Апну тему, подскажите схемку как реализовать такое же устройство на микрухе К561ТЛ1, собираю также как и на транзисторах, цепляю делители по входам - не работает, также пробовал через RC цепь подавать сигнал на оба входа - работает, но не в нужных диапазонах.. наверное нужна обратная связь? беру номиналы как и в схеме на транзисторах (для обр.связи), схема начинает работать как генератор(

  12. купил IRL 3705 , как советовал Vascom , разогрев гораздо более медленный.. но есть, сейчас попробую поменять номинал резистора на затворе (стоит 120), поставлю по-меньше

    Поставил 27 Ом, 30Вт держит неплохо :) после часа краш-теста можно трогать рукой

  13. Второе. Номинала 26 Ом не существует в природе. Есть 2,58 и есть 2,61 в рядах от Е48 до Е192. Так что не надо привирать.

    прошу прощения, 27 Ом, из линейки Е12

    Данному полевику тупо не хватает напряжения для открывания

    подтяжка базы сможет помочь?

  14. Если затворный (бывший базовый) резистор остался номиналом 1 кОм, то и этот фактор может начать играть роль. Если после его замены на 10...33 Ома нагрев останется таким же, то тогда - только то, о чем я писал в посте № 15. А фронты - ни при чем.

    А вы не перепутали, 0.12 это случаем не коэффициент шума?

    напряжение насыщения согласно справочнику 0.6 В у них

    http://alltransistor...df&dire=_russia

  15. Если затворный (бывший базовый) резистор остался номиналом 1 кОм, то и этот фактор может начать играть роль. Если после его замены на 10...33 Ома нагрев останется таким же, то тогда - только то, о чем я писал в посте № 15. А фронты - ни при чем.

    остался таким же горячим..

    ЗЫ IRF3205. тоже самое

    КТ917Г2 нету в продаже.

    ЗЫ

    А может проще попробовать реле или оптопару?

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