Goldsmith писал(а):То есть не хотите делать отдельный вход для управления третьим состоянием буферного усилителя?
нам то все равно, мы выполняем ТЗ кота Gudd-Head который хотел умощнить выходы контроллера с сохранением Z состояния, т.е. как я понял, не используя дополнительные сигналы для уравления буфером
схема красивая, но как указал коллега, транзисторы надо бы запереть при Z
Коктейль "Рекурсивный": 20% спирта, 30% воды, 50% коктейля "Рекурсивный"...
vitalik_1984 писал(а):Это что же получается? Q2 и Q4 всегда открыты при Z состоянии? или я чего не догоняю.
Последний вариант.
unalex писал(а):схема красивая, но как указал коллега, транзисторы надо бы запереть при Z
Конечно, надо. Они и в самом деле заперты. Иначе это будет не красивая схема, а весьма эффективный электрообогреватель помещений.
Когда обе кнопки разомкнуты, по цепи эмиттер-база Q1 - R3 - верхний диод - нижний диод - R6 - база-эмиттер Q3 течет ток. Оба транзистора (Q1 и Q3) насыщены, соответственно, на переходах база-эмиттер Q2 и Q4 напряжение недостаточно для их открывания; оба выходных транзистора заперты. Выход схемы в высокоимпедансном состоянии.
Замкнем нижнюю кнопку. Ток через базовый переход Q3 прекращается, он закрывается, открывая Q4. Q3 по-прежнему заперт. На выходе схемы низкий уровень (0).
Вариант с верхней кнопкой расписывать не буду, схема абсолютно симметрична. Я специально для желающих приложил модель, можно натыкать вольтметров-амперметров-осциллографов и понаблюдать за ее поведением.
Любой дурак может писать код. Настоящий профессионал - это тот, кто способен постоянно создавать продукт высокого качества, укладываясь при этом в бюджет.
J. Ganssle
Goldsmith писал(а):Когда обе кнопки разомкнуты, по цепи эмиттер-база Q1 - R3 - верхний диод - нижний диод - R6 - база-эмиттер Q3 течет ток. Оба транзистора (Q1 и Q3) насыщены, соответственно, на переходах база-эмиттер Q2 и Q4 напряжение недостаточно для их открывания; оба выходных транзистора заперты. Выход схемы в высокоимпедансном состоянии.
Compiling C: main.c
avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2 -DF_CPU=1000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./main.lst -std=gnu99 -MMD -MP -MF .dep/main.o.d main.c -o main.o
main.c: In function 'main':
main.c:23: error: 'i' undeclared (first use in this function)
main.c:23: error: (Each undeclared identifier is reported only once
main.c:23: error: for each function it appears in.)
make.exe: *** [main.o] Error 1
> Process Exit Code: 2
> Time Taken: 00:04
значит ест ошибка
а сам ошибка находится здес
Compiling C: main.c
avr-gcc -c -mmcu=atmega32 -I. -gdwarf-2 -DF_CPU=1000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=./main.lst -std=gnu99 -MMD -MP -MF .dep/main.o.d main.c -o main.o
main.c: In function 'main':
main.c:23: error: 'i' undeclared (first use in this function)
main.c:23: error: (Each undeclared identifier is reported only once
main.c:23: error: for each function it appears in.)
make.exe: *** [main.o] Error 1
> Process Exit Code: 2
> Time Taken: 00:04
но я не знаю английский за счет чего и не знаю что там написано.
исправляйте код пожалуйста
Последний раз редактировалось fahri1 Вт фев 26, 2013 12:47:10, всего редактировалось 1 раз.
fahri1 , 1.микросхемы отличаются корпусами, у разных корпусов попадутся быть разные номера выводов и разные значения ей одних и тех же номеров ног. В следующий раз потрудитесь обозначить тип корпуса, либо еще лучше написать на какой порт выводить.
2.Вам нужно два примера для аппаратного и программного ШИМ, а на каком языке?
Gudd-Head писал(а):Что-то я туплю. Диоды тут обязательны?
Перестраховка. Люблю надежные конструкции, без неожиданных сюрпризов.
Нижний диод не даст открыться Q3, если уровень лог. 0 на входе схемы достигнет 0.8V (а в принципе имеет право). Тогда схема сочтет это за третье состояние, что в общем непраавильно. Диод Шоттки отодвинет этот порог до 1V (0.4V на диоде + 0.6V для открытия эмиттерного перехода). Если поставить обычный диод с P-N переходом, порог приподнимется еще на 0.2V.
Без диодов тоже в большинстве случаев будет работать, поскольку уровень ненагруженного нуля на выходе КМОП очень близок к 0V, но все-так береженого бог бережет. Тем более что для подобных случаев у меня припасены BAT54S, места занимают немного.
(Верхняя половина, само собой, работает точно так же).
Естественно, эта схема - лишь эскиз, а не окончательный вариант. Под конкретные требования ее можно существенно улучшить (например, поднять быстродействие, увеличить входной импеданс, понизить потребление...).
Gudd-Head писал(а):Вариант с компаратором хорош тем, что помимо тока можно поднять и напряжение
Фактически Q1 и Q3 - это и есть простейшие компараторы, поскольку открываются, как только входное напряжение выходит за пределы "0" и "1", и тем самым блокируют свое плечо выходного полумоста. Входными диодами можно корректировать порог срабатывания этих компараторов.
Любой дурак может писать код. Настоящий профессионал - это тот, кто способен постоянно создавать продукт высокого качества, укладываясь при этом в бюджет.
J. Ganssle
vitalik_1984
корпус tqfp/mlf квадратный всего 44 выводов.
на языке с+/с++
мне нужно два наипрстейшего примера . и для аппаратного и для программного ШИМ,
Подскажите,что должно быть на ногах программатора (на ISP разъёме).Программатор готовый,вот этот http://microsin.ru/content/view/685/44/ .
Ошибка ISP Mode Error вылезает и в том случае,если к программатору не подсоединена программируемая плата.
fahri1 писал(а):но я не знаю английский за счет чего и не знаю что там написано.
исправляйте код пожалуйста
Не знаете английский - пользуйтесь словарями/переводчиками. Хоть на Яндексе, хоть на Гугле. Судя по ошибке вы и Си плохо владеете. Читайте книжки.
У вас в main не определена переменная i, а вы её в циклах используете. На это и ругается.
Когда уже ничего не помогает - прочтите, наконец, инструкцию.
Лучший оптимизатор находится у вас между ушей. (Майкл Абраш, программист Quake и QuakeII)
Избыток информации ведёт к оскудению души - Леонтьев А. (сказано в 1965 г.)
1.2 длинный код можно спрятать при помощи тега spoiler Спойлервот так
2 для понимания что такое шим и как он работает скопировать первый попавшийся код недостаточно, надо еще и даташиты читать
3.1 знание английского желательно, хотя можно обойтись и переводчиком
3.2 ключевые слова "error" "warning" и т.п. знать обязательно
4.1 из п3.2 находим где сообщение об ошибке, копируем в переводчик и видим что необъявлена переменная i
4.2 если непонятно что это такое, бросаем ШИМ и начинаем изучать Си с самых основ
Коктейль "Рекурсивный": 20% спирта, 30% воды, 50% коктейля "Рекурсивный"...
Привет всем котам и кошкам.
Вопрос бредовый, но все же никогда такого не было.
Возможно ли при перепрограммировании по SPI прогером minipro спалить AtMega168 и кварц 8Мгц.
С начало прочитал, записал 1н раз, 2й раз, а потом пшик и не коннектится.
Перепробовал все включая тактирование внешним сигналом на макетке.
Что кварц сдох узнал случайно.
Почти любым программатором можно спалить устройство -достаточно наплевать на источники питания и их земли.
Насчет кварца, он мог подохнуть от удара и почти невероятно чтобы от электричества
Загружая на вход компьютера "мусор", на выходе получим "мусор^32".
PS. Не работаю с: Proteus, Multisim, EWB, Micro-Cap... не спрашивайте даже
Что значит "наплевать"? Питание было подано через прогер он сам от юсб. Ноги соответствовали своим назначениям.
Да и в практике бывало путал + и - ноги питания с портами, контролер раскалялся, но потом все равно работал.
Но они все дип были на заметке.
Merlin писал(а):Питание было подано через прогер он сам от юсб.
Надеюсь не через ISP-разъем?
Обычно он не предназначен для питания целевого контроллера, если это не написано в описании к программатору. Программатор не может знать какое питание нужно в конкретной схеме, что если он выдаст 5В, а в схеме стоит 3В флеш-память?
Именно через ISP, но у меня умный прогер MiniPro и в документации у него написано можно питать ( наверно)
Я как то и не заморачивался на этом +5 так +5 ну и ок
Никаких перемычек не нужно в хелпе так и писано питание от isp подать на целевые ус-во.
Возможно он заложен т.к. фьюзы я не трогал и не смотрел возможно сбились.
Какими еще способами можно разлочить или проверить его работоспособность?
Подскажите, есть батарейка 9В "Крона", есть Мега8 с россыпью светодиодов и схемой (требует 5в) завязанной на нее, нужно включать/выключать схему одной кнопкой. Понятно что мегу загоняем в sleep и пробуждаем прерыванием, а как правильней организовать стабилизатор к батарейке? Если напрямую, "в спячке" 78l05 ест несколько миллиампер.
Вот, накидал на вскидку: PB1.0=1 - на меге стабильные 5v (можно моргать светодиодами, включать вторичную схему); PB1.0=0 - все выключено, стабилизатор ничего не потребляет, на меге для сна 3...5v (Uбат-UD2). Поругайте! Или может есть более лучший вариант?
Спойлер
MiklSh Хе, прикольная замещающая схема меги А чем вам не нравится стабильное питание от 3 вольт? Светодиоды питаются через ULN2000
Тем более подозрительное включение стабилитрона D2 как правило стабилизаторы напряжения выглядят по другому. Этот стабилитрон будет тупо подавать все напряжение, которое выше, чем 4.3
Вы вообще проверяли работу данной схемы? Вроде как она у вас в протеусе. Можно было и приложить в архиве.
Вот создал сам
1 косяк с трех вольтовой частью
2 я исправил
3 возможный глюк, так как схема может включиться от 0,6 вольт
Если не нужно, чтобы контроллер всегда был включен можно просто перевернуть вот так транзистор. Мк когда ему не нужно питание просто выключает ногу с минуса и все.
Последний раз редактировалось vitalik_1984 Вс мар 03, 2013 00:01:06, всего редактировалось 1 раз.