Jump to content
Sign in to follow this  
kamaz6141

Уровень Выходного Сигнала

Recommended Posts

Всем привет, вобщем собрал по этой схеме индикатор уровня выходного сигнала, всё работает, вместо R1 перемычка, подключил на выход ПК, но при средней громкости загорается максимум 3-4 светодиода, а если выкрутить громкость вообще на максимум, то до 5-6...вопрос, как сделать чтобы чтобы нормально до последнего доходило? И чтобы отфильтровать НЧ нужно увеличить С1?

Заранее спасибо!

Share this post


Link to post
Share on other sites

R2 увелич, а лучше последовательно поставь подстроечник на 27К и настрой им


Удовольствие критиковать мешает наслаждаться прекрасным. (це) Ж. Ла6рюйер

Share this post


Link to post
Share on other sites

Изготовление 2-х слойных плат от 2$, а 4-х слойных от 5$!

Быстрое изготовление прототипа платы всего за 24 часа! Прямая доставка с нашей фабрики!

Смотрите видео о фабрике JLCPCB: https://youtu.be/_XCznQFV-Mw

Посетите первую электронную выставку JLCPCB https://jlcpcb.com/E-exhibition чтобы получить купоны и выиграть iPhone 12, 3D-принтер и так далее...

Высокая надежность SiC! Как они этого добились?

За несколько лет кропотливых исследований и совершенствования технологии компания Infineon смогла довести показатели надежности и стабильности параметров высоковольтных и быстродействующих карбид-кремниевых транзисторов линейки CoolSiC практически до уровня их кремниевых собратьев.

Подробнее

Затупил я :rolleyes:

Edited by Rhime

- А совесть в курсе? - А совесть в доле! :-D

Эксперт — это человек, который совершил все возможные ошибки в некотором узком поле.

Все грамматические ошибки являются авторским стилем изложения материала.

Share this post


Link to post
Share on other sites

Материалы вебинара «STM32L5. Секреты оценки энергопотребления»

Опубликованы запись и материалы вебинара КОМПЭЛ, посвященного первому семейству МК STM32L5 на ядре Cortex-M33. На вебинаре было рассказано о самых распространенных ошибках при расчете энергопотребления микроконтроллеров и о специальном тесте ULPMark, позволяющем дать наиболее объективную оценку энергоэффективности. Измерения проводились на демонстрационной платформе STM32L562E-DK.

Подробнее

Снижена цена на AC/DC и DC/DC преобразователи Mornsun в Компэл!

Компэл и компания Mornsun снизили цены на преобразователи AC/DC-преобразователи семейств LS и LDE. По привлекательной цене также предлагаются DC/DC-преобразователи изолированных семейств поколений R2 и R3 различного конструктивного исполнения.

Подробнее

kamaz6141

Для уменьшения уровня НЧ - ставь конденсатор последовательно с R1(Только зачем это нужно - собираешся измерять уровень только СЧ и ВЧ?).

Прежде всего нужно увеличить R3 до 680 ... 750 Ом (при 390 идёт ток через светодиоды, более 32 мА).

R4 замени на подстроечник 2,7 ... 4,7 КОм, выстави им нужный уровень, измерь получившийся номинал и замени постоянным.


Мнения автора могут не совпадать с его точкой зрения.

Виктор Пелевин "Поколение П".

Share this post


Link to post
Share on other sites
Guest 680 Ом

680 Ом - под схемой по твоей ссылке, есть схема из журнала, увеличить относительно журнальной схемы.

Share this post


Link to post
Share on other sites

Вобщем сделал, через выход колонок играет как надо но реагирует на громкость, а на выходе пк теперь вообще ноль эмоций, видимо слишком слабый сигнал =(

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this  

  • Сообщения

    • Я в курсе , но далеко от Чепа
    • @Sergej а гистерезис еще надо) уберите тот конденсатор и замените резистором. Почитайте в интернете. У меня тоже так было. Просто в момент переключения происходят множественные включения и выключения, по этому и моргает светодиод. Короче петля гистерезиса надо. конденсатор там не поможет.
    • У вас нет ни единого грамма канифоли. А у большинства пользователей этого форума нет ни единого прибора, из показанных вами в этой теме. И мне кажется, что вам будет гораздо проще приобрести пару грамм канифоли, для полезных и реальных исследований, чем большинству  форумчан приобрести Keysight B2985A, или используемый вами флюс. А истинных радиолюбителей можно найти, в частности, в конце вот этой страницы, где они выражают намерение пойти зимой в лес, чтобы  отбивать смолу от деревьев и получать из неё канифоль. И даже модератор Бородач интересуется подробностями её получения, хотя у него наверняка найдутся деньги на указанный вами флюс. Допускаю, что ему просто не знаком его запах, в то время как запах канифоли ему давно нравится. Вполне возможно, что в будущем многие захотят перейти на используемый вами флюс, если у них представиться возможность его понюхать и, сравнив его запах с запахом канифоли, сделать выбор в пользу вашего флюса. Но, пока этого не произошло, мне кажется, что имеет смысл провести исследования, по канифоли, предложенные мною выше.
    • От мощности нагрузки будет зависеть решение .  Ищите  в конструкциях любительских трансиверов на 1600кГц.
    • Классные. Отделка корпусов под интерьер подбиралась. Только вот один момент не понял Со Славой связанный. Он же категорический противник СЧ больше 9см, а такиж пишет, что такие тоже сам делал
    • Угу, все по даташиту, фильтры только поправил под себя. А Николай не омич нынче, а значительно ближе  к тебе..

  • Модуль реле с ИК-датчиком движения, 12В. Регулируемая задержка: 10...350 сек

  • Similar Content

    • By Олег Кузьмичёв
      Доброго времени суток уважаемые радиолюбители! Хочу собрать шкальный индикатор уровня громкости для усилителя, на семисегментных индикаторах. Нашёл блок индикации от электронных весов. Сегменты "А" - левый канал; сегменты "D" - правый. Контроллер KIA6966S.Всё-бы нечего, да общий провод этих индикаторов "катод".Как быть в такой ситуации ума не приложу. Что можете посоветовать, как оформить шкалу? Хотелось-бы применить именно эту микросхему.потому как я с ней хорошо знаком, и эти индикаторы.потому что они мне понравились.
    • By admin
      В этом видеоролике рассмотрены простейшие способы получения индикатора звукового сигнала из обычного вольтметра.
      Ссылки:
      Усилитель переменного напряжения
      Эмиттерный повторитель
      Симуляция:
      Диодный мост: http://everycircuit.com/circuit/4608895732940800
      Диодный мост с усилителем: http://everycircuit.com/circuit/5041293436125184
      Схема с эмиттерным повторителем: http://everycircuit.com/circuit/5744565943795712
      Схема с источником тока, управляемым напряжением: http://everycircuit.com/circuit/5101282922070016
      Схема с фильтрующим конденсатором: http://everycircuit.com/circuit/4972694117810176
    • By vladk1da
      Доброго времени суток. Задумался я Вот над чем - все ищут схемы чертежи плат индикаторов уровней, но практически никто не задается вопросом как собрать собственно сам tower из листов оргстекла. Может есть такие мастера кто делал данный индикатор и может рассказать нюансы и особенности сборки этого элемента устройства.
    • By abuzhakov
      Привет всем! на этот раз я решил собрать VU METR на atmega8
      В инете я нашел схему вот эту http://hawelson.blog.cz/1005/vu-metr-2x32led-s-mikrokontrolerem и решил её собрать!
      У меня сейчас в машине стоит анализатор спектра на atmega8 я его переделал под VU METR но светодиодов мало всего 10 поэтому мне пришла в голову такая идея.
      Кто нибудь собирал такую? и работает ли она вообще?
      Вот схема:

      Печатная плата:

      В собранном виде:


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

      И код программы:

      /* MCU: ATmega8, ATmega8L Program pro stereo VU metr 2x32 LED Program napsal Petr Hawliczek Vytvořeno pro web: http://HAWELSON.blog.cz/ */ //******************************************** #define F_CPU 1000000UL // NASTAVENÍ VNITŘNÍHO OSCILÁTORU NA 1MHz (defaultní) #include <avr/io.h> #include <util/delay.h> //******************************************** void cekani(); // podprogram rychle nastavitelneho cekani (delka bliknuti LED) unsigned char a; // proměnná do které se bude ukládat hodnota z A/D převodníku // je typu char, tedy 256 hodnot char b=0; // konstanta posunu pro potlační šumu // (posun od nuly, aby neblikaly LED bez sign.) //******************************************** void main() { DDRB = 0xFF; // inicializace portů DDRC = 0b11111100; DDRD = 0xFF; PORTB = 0x00; PORTC = 0x00; PORTD = 0x00; //******************************************** while (1) { // nekonečná smyška vykreslování // Levý kanál // Nastavení A/D převodníku --> ADMUX = 0x00; // ozkačení z kterého kanálu chceme brát (kanál 0) ADMUX = ADMUX | 0b11000000; // aktivace REFS0 a 1 //(Internal 2,56V reference with external capacitor at AREF pin) ADMUX = ADMUX | 0x20; // aktovace ADLAR: ADC Left Adjust Result ADCSRA = 0x00; // volba nejrychlejšího A/D převodu krystal/2 ADCSRA = ADCSRA | 0x80; // zapnutí A/D převodníku //Přečtení hodnoty z A/D převodníku --> ADCSRA = ADCSRA | 0x40; // start převodu while( (ADCSRA & 0x10) == 0); // počká až je připravená hodnota z A/D (pak se tato hodnota dostane do 0) a = ADCH; // převede se hodnota z A/D do proměnné a ADCSRA = ADCSRA | 0x10; // vymaže, že je hodnota připravená - pro další nové měření //--------------------------------------------- // podrprogram pro rozsvěcení led umístěn zde --> if (a <= b+0 ) { // 0 LED // spodní část LED PORTB=0b00010000; // všechny LED zhasnuty PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00100000; PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+1 ) { // 1 LED // spodní část LED PORTB=0b00010010; // první LED rozsvícena ve spodní části PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00100000; PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+2) { // 2 LED // spodní část LED // spodní část LED PORTB=0b00010010; // první LED rozsvícena ve spodní části PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00100010; // první LED rozsvícena ve spodní části PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+3) { // 3 LED // spodní část LED PORTB=0b00010011; // celková třetí LED rozsvícena PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00100010; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+4) { // 4 LED // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+5) { // // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b10000000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+6) { // // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b10000000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b10000000; cekani(); } else if (a <= b+7) { // // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11000000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b10000000; cekani(); } else if (a <= b+8) { // // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11000000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11000000; cekani(); } else if (a <= b+9) { // // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11000000; cekani(); } else if (a <= b+10) { // 10 LED // spodní část LED PORTB=0b00010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+12) { // // spodní část LED PORTB=0b10010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b00100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+14) { // // spodní část LED PORTB=0b10010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b10100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+16) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b10100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+18) { // PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+20) { // 15 LED // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11110000; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+23) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11110000; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11110000; cekani(); } else if (a <= b+26) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111000; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11110000; cekani(); } else if (a <= b+29) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111000; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111000; cekani(); } else if (a <= b+32) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111100; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111000; cekani(); } else if (a <= b+36) { // 20 LED // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111100; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111100; cekani(); } else if (a <= b+40) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111110; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111100; cekani(); } else if (a <= b+44) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111110; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111110; cekani(); } else if (a <= b+48) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111110; cekani(); } else if (a <= b+52) { // // spodní část LED PORTB=0b11010011; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+57) { // 25 LED // spodní část LED PORTB=0b11010011; PORTC=0b00100000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+62) { // // spodní část LED PORTB=0b11010011; PORTC=0b00100000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00100000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+67) { // // spodní část LED PORTB=0b11010011; PORTC=0b00110000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00100000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+73) { // // spodní část LED PORTB=0b11010011; PORTC=0b00110000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00110000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+79) { // // spodní část LED PORTB=0b11010011; PORTC=0b00111000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00110000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+86) { // 30 LED // spodní část LED PORTB=0b11010011; PORTC=0b00111000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00111000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+93) { // // spodní část LED PORTB=0b11010011; PORTC=0b00111100; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00111000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else { // 32 LED (2x 16 LED) // spodní část LED PORTB=0b11010011; PORTC=0b00111100; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11100011; // PORTC=0b00111100; // horní část LED aktivní PORTD=0b11111111; cekani(); } // Na konci nastavení nul, aby LED nesvítily v čase měření A/D převodníkem PORTB=0x00; // PORTC=0x00; // spodní část LED aktivní PORTD=0x00; // --------------------------------------------------------------- // --------------------------------------------------------------- // **************************************************** // Pravý kanál --> // Nastavení A/D převodníku --> ADMUX = 0x01; // ozkačení z kterého kanálu chceme brát (kanál 1) ADMUX = ADMUX | 0b11000000; // aktivace REFS0 a 1 //(Internal 2,56V reference with external capacitor at AREF pin) ADMUX = ADMUX | 0x20; // aktovace ADLAR: ADC Left Adjust Result ADCSRA = 0x00; // volba nejrychlejšího A/D převodu krystal/2 ADCSRA = ADCSRA | 0x80; // zapmutí A/D ppřevodníku //Přečtení hodnoty z A/D převodníku --> ADCSRA = ADCSRA | 0x40; // start převodu while( (ADCSRA & 0x10) == 0); // počká až je připravená hodnota z A/D (pak se tato hodnota dostane do 0) a = ADCH; // převede se hodnota z A/D do proměnné a ADCSRA = ADCSRA | 0x10; // vymaže, že je hodnota připravená - pro další nové měření //-------------------------------------------------------------- // podrprogram pro rozsvěcení led umístěn zde --> if (a <= b+0) { // 0 LED // spodní část LED PORTB=0b00000100; // všechny LED zhasnuty PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00001000; PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+1) { // 1 LED // spodní část LED PORTB=0b00000110; // první LED rozsvícena ve spodní části PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00001000; PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+2) { // 2 LED // spodní část LED // spodní část LED PORTB=0b00000110; // první LED rozsvícena ve spodní části PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00001010; // první LED rozsvícena ve spodní části PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+3) { // 3 LED // spodní část LED PORTB=0b00000111; // celková třetí LED rozsvícena PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00001010; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+4) { // 4 LED // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b00000000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+5) { // // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b10000000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b00000000; cekani(); } else if (a <= b+6) { // // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b10000000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b10000000; cekani(); } else if (a <= b+7) { // // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11000000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b10000000; cekani(); } else if (a <= b+8) { // // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11000000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11000000; cekani(); } else if (a <= b+9) { // // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11000000; cekani(); } else if (a <= b+10) { // 10 LED // spodní část LED PORTB=0b00000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+12) { // // spodní část LED PORTB=0b10000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b00001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+14) { // // spodní část LED PORTB=0b10000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b10001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+16) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b10001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+18) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11100000; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+20) { // 15 LED // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11110000; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11100000; cekani(); } else if (a <= b+23) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11110000; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11110000; cekani(); } else if (a <= b+26) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111000; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11110000; cekani(); } else if (a <= b+29) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111000; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111000; cekani(); } else if (a <= b+32) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111100; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111000; cekani(); } else if (a <= b+36) { // 20 LED // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111100; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111100; cekani(); } else if (a <= b+40) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111110; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111100; cekani(); } else if (a <= b+44) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111110; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111110; cekani(); } else if (a <= b+48) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111110; cekani(); } else if (a <= b+52) { // // spodní část LED PORTB=0b11000111; PORTC=0b00000000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+57) { // 25 LED // spodní část LED PORTB=0b11000111; PORTC=0b00100000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00000000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+62) { // // spodní část LED PORTB=0b11000111; PORTC=0b00100000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00100000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+67) { // // spodní část LED PORTB=0b11000111; PORTC=0b00110000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00100000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+73) { // // spodní část LED PORTB=0b11000111; PORTC=0b00110000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00110000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+79) { // // spodní část LED PORTB=0b11000111; PORTC=0b00111000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00110000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+86) { // 30 LED // spodní část LED PORTB=0b11000111; PORTC=0b00111000; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00111000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else if (a <= b+93) { // // spodní část LED PORTB=0b11000111; PORTC=0b00111100; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00111000; // horní část LED aktivní PORTD=0b11111111; cekani(); } else { // 32 LED (2x 16 LED) // spodní část LED PORTB=0b11000111; PORTC=0b00111100; // spodní část LED aktivní PORTD=0b11111111; cekani(); // horní část LED PORTB=0b11001011; // PORTC=0b00111100; // horní část LED aktivní PORTD=0b11111111; cekani(); } // Na konci nastavení nul, aby LED nesvítily v čase měření A/D převodníkem PORTB=0x00; // PORTC=0x00; // spodní část LED aktivní PORTD=0x00; } } // vypsaný podprogram cekani (dela bliknutí) void cekani() { _delay_us(2000); // délka čekání v mikrosekundách }
      Соединять я буду к ней выходной сигнал на усилитель магнитолы подскажите нужны ли стабилитроны? или можно их не ставить? (у меня их просто нет)
×
×
  • Create New...