Страница 409 из 628
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн фев 25, 2013 17:52:56
Meteor
unalex писал(а):симулятор говорит что закрыты(поставил амперметр)
Во время нажатия что показывает интересно? Сквозной ток по идее будет длиться несколько мкс..мс
Идейно полевики уже мертвы..
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн фев 25, 2013 20:02:17
unalex
при нажатии кнопки на нуле открывается нижний транзистор, при нажатии кнопки на плюсе - верхний
при отпущенных кнопках оба транзистора заперты
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн фев 25, 2013 20:02:56
Goldsmith
unalex писал(а):эти кнопки аналог ноги микроконтроллера с тремя состояниями
То есть не хотите делать отдельный вход для управления третьим состоянием буферного усилителя?
Тогда такой вариант, без внешнего управления:
Для простоты реализовал на биполярных транзисторах, но при желании можно и на полевых переделать. Номиналы резисторов не оптимизировал, модель заработала в симуляторе сразу.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн фев 25, 2013 20:55:52
vitalik_1984
Это что же получается? Q2 и Q4 всегда открыты при Z состоянии? или я чего не догоняю.
Вариант с компаратором мне как то больше пришелся по душе.
Есть такой вариант с тремя областями напряжения и работы, как раз в середине ни один не подает сигнал, в крайних состояниях открываются соответствующие транзисторы.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн фев 25, 2013 21:11:57
unalex
Goldsmith писал(а):То есть не хотите делать отдельный вход для управления третьим состоянием буферного усилителя?
нам то все равно, мы выполняем ТЗ кота
Gudd-Head который хотел умощнить выходы контроллера с сохранением Z состояния, т.е. как я понял, не используя дополнительные сигналы для уравления буфером
схема красивая, но как указал коллега, транзисторы надо бы запереть при Z
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Пн фев 25, 2013 22:35:12
Goldsmith
vitalik_1984 писал(а):Это что же получается? Q2 и Q4 всегда открыты при Z состоянии? или я чего не догоняю.
Последний вариант.
unalex писал(а):схема красивая, но как указал коллега, транзисторы надо бы запереть при Z
Конечно, надо. Они и в самом деле заперты. Иначе это будет не красивая схема, а весьма эффективный электрообогреватель помещений.
Когда обе кнопки разомкнуты, по цепи эмиттер-база Q1 - R3 - верхний диод - нижний диод - R6 - база-эмиттер Q3 течет ток. Оба транзистора (Q1 и Q3) насыщены, соответственно, на переходах база-эмиттер Q2 и Q4 напряжение недостаточно для их открывания; оба выходных транзистора заперты. Выход схемы в высокоимпедансном состоянии.
Замкнем нижнюю кнопку. Ток через базовый переход Q3 прекращается, он закрывается, открывая Q4. Q3 по-прежнему заперт. На выходе схемы низкий уровень (0).
Вариант с верхней кнопкой расписывать не буду, схема абсолютно симметрична. Я специально для желающих приложил модель, можно натыкать вольтметров-амперметров-осциллографов и понаблюдать за ее поведением.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 10:06:53
Gudd-Head
Goldsmith писал(а):Когда обе кнопки разомкнуты, по цепи эмиттер-база Q1 - R3 - верхний диод - нижний диод - R6 - база-эмиттер Q3 течет ток. Оба транзистора (Q1 и Q3) насыщены, соответственно, на переходах база-эмиттер Q2 и Q4 напряжение недостаточно для их открывания; оба выходных транзистора заперты. Выход схемы в высокоимпедансном состоянии.
Что-то я туплю. Диоды тут обязательны? Если кому интересно зачем нужен такой буфер:
http://radiokot.ru/forum/viewtopic.php?f=20&t=85804
atmega32l.шим.
Добавлено: Вт фев 26, 2013 11:35:42
fahri1
у atmega32l ест 4 вывод для аппаратной шим.нужен простейший код для аппаратного шим и для вывода 43.
я сам нашел кусок кода вот такую
#include <avr/io.h>//библиотека ввода/вывода
#include <util/delay.h>//Библиотека функций
#define PORT_PWM DDRB // порт МК
#define PIN_PWM 3 // вывод порта B - PB3
//Программа инициализации ШИМ
void init_pwm (void)
{
/* Настраиваем 8-ми битный таймер*/
TCCR0 = 1<<WGM00|1<<COM01|1<<WGM01|1<<CS02;// предделитель 256
// Начальные значения ШИМ на выводах МК
OCR0=0x00;
}
/*--Основная программа-----------------------------------------------*/
int main(void)
{
// бесконечный цикл
while (1) {
// увеличиваем яркость (скважность PWM)
for (i=0;i<255;i++) {
OCR0++;
_delay_ms(5);
}
// уменьшаем яркость (скважность PWM)
for (i=0;i<255;i++) {
OCR0--;
_delay_ms(5);
}
}
return 1;
}
исползуя этот код не могу получат прошивку посколку prgrammers notepag (winavr) пишет
"make.exe" all
-------- begin --------
avr-gcc (WinAVR 20090313) 4.3.2
Copyright © 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Size before:
AVR Memory Usage
----------------
Device: atmega32
Program: 294 bytes (0.9% Full)
(.text + .data + .bootloader)
Data: 6 bytes (0.3% Full)
(.data + .bss + .noinit)
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
но я не знаю английский за счет чего и не знаю что там написано.
исправляйте код пожалуйста
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 12:39:21
Gudd-Head
vitalik_1984 писал(а):Вариант с компаратором мне как то больше пришелся по душе.
Вариант с компаратором хорош тем, что помимо тока можно поднять и напряжение

Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 12:53:10
vitalik_1984
fahri1 , 1.микросхемы отличаются корпусами, у разных корпусов попадутся быть разные номера выводов и разные значения ей одних и тех же номеров ног. В следующий раз потрудитесь обозначить тип корпуса, либо еще лучше написать на какой порт выводить.
2.Вам нужно два примера для аппаратного и программного ШИМ, а на каком языке?
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 13:09:40
Goldsmith
Gudd-Head писал(а):Что-то я туплю. Диоды тут обязательны?
Перестраховка. Люблю надежные конструкции, без неожиданных сюрпризов.
Нижний диод не даст открыться Q3, если уровень лог. 0 на входе схемы достигнет 0.8V (а в принципе имеет право). Тогда схема сочтет это за третье состояние, что в общем непраавильно. Диод Шоттки отодвинет этот порог до 1V (0.4V на диоде + 0.6V для открытия эмиттерного перехода). Если поставить обычный диод с P-N переходом, порог приподнимется еще на 0.2V.
Без диодов тоже в большинстве случаев будет работать, поскольку уровень ненагруженного нуля на выходе КМОП очень близок к 0V, но все-так береженого бог бережет. Тем более что для подобных случаев у меня припасены
BAT54S, места занимают немного.
(Верхняя половина, само собой, работает точно так же).
Естественно, эта схема - лишь эскиз, а не окончательный вариант. Под конкретные требования ее можно существенно улучшить (например, поднять быстродействие, увеличить входной импеданс, понизить потребление...).
Gudd-Head писал(а):Вариант с компаратором хорош тем, что помимо тока можно поднять и напряжение

Фактически Q1 и Q3 - это и есть простейшие компараторы, поскольку открываются, как только входное напряжение выходит за пределы "0" и "1", и тем самым блокируют свое плечо выходного полумоста. Входными диодами можно корректировать порог срабатывания этих компараторов.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 13:31:39
fahri1
vitalik_1984
корпус tqfp/mlf квадратный всего 44 выводов.
на языке с+/с++
мне нужно два наипрстейшего примера . и для аппаратного и для программного ШИМ,
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 14:25:03
den2
Имеется небольшая проблема с программатором
http://radiokot.ru/forum/viewtopic.php? ... 4#p1592504 .Посоветовали проверить распайку и потыкать осциллографом.Распайку проверил,вроде всё чисто,соплей нет.Программатор распаял полностью,как описано вот тут
http://avr.ru/ready/tools/prog/avrisp .
Подскажите,что должно быть на ногах программатора (на ISP разъёме).Программатор готовый,вот этот
http://microsin.ru/content/view/685/44/ .
Ошибка ISP Mode Error вылезает и в том случае,если к программатору не подсоединена программируемая плата.
Re: atmega32l.шим.
Добавлено: Вт фев 26, 2013 14:48:41
Kavka
fahri1 писал(а):но я не знаю английский за счет чего и не знаю что там написано.
исправляйте код пожалуйста
Не знаете английский - пользуйтесь словарями/переводчиками. Хоть на
Яндексе, хоть на
Гугле. Судя по ошибке вы и Си плохо владеете. Читайте книжки.
У вас в main не определена переменная i, а вы её в циклах используете. На это и ругается.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 16:38:49
unalex
1.1 для кода есть специальный тег code
1.2 длинный код можно спрятать при помощи тега spoiler
Спойлер
вот так
2 для понимания что такое шим и как он работает скопировать первый попавшийся код недостаточно, надо еще и даташиты читать
3.1 знание английского желательно, хотя можно обойтись и переводчиком
3.2 ключевые слова "error" "warning" и т.п. знать обязательно
4.1 из п3.2 находим где сообщение об ошибке, копируем в переводчик и видим что необъявлена переменная i
4.2 если непонятно что это такое, бросаем ШИМ и начинаем изучать Си с самых основ
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Вт фев 26, 2013 19:11:30
Merlin
Привет всем котам и кошкам.
Вопрос бредовый, но все же никогда такого не было.
Возможно ли при перепрограммировании по SPI прогером minipro спалить AtMega168 и кварц 8Мгц.
С начало прочитал, записал 1н раз, 2й раз, а потом пшик и не коннектится.
Перепробовал все включая тактирование внешним сигналом на макетке.
Что кварц сдох узнал случайно.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Чт фев 28, 2013 07:00:12
Meteor
Почти любым программатором можно спалить устройство -достаточно наплевать на источники питания и их земли.
Насчет кварца, он мог подохнуть от удара и почти невероятно чтобы от электричества
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Чт фев 28, 2013 08:09:51
Merlin
Что значит "наплевать"? Питание было подано через прогер он сам от юсб. Ноги соответствовали своим назначениям.
Да и в практике бывало путал + и - ноги питания с портами, контролер раскалялся, но потом все равно работал.
Но они все дип были на заметке.
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Чт фев 28, 2013 08:34:08
Engineer_Keen
Merlin писал(а):Питание было подано через прогер он сам от юсб.
Надеюсь не через ISP-разъем?
Обычно он не предназначен для питания целевого контроллера, если это не написано в описании к программатору. Программатор не может знать какое питание нужно в конкретной схеме, что если он выдаст 5В, а в схеме стоит 3В флеш-память?
Re: Мелкие вопросы по МК и ПЛИС.
Добавлено: Чт фев 28, 2013 08:46:41
Merlin
Именно через ISP, но у меня умный прогер MiniPro и в документации у него написано можно питать (

наверно)
Я как то и не заморачивался на этом +5 так +5 ну и ок