andrusha152

Members
  • Публикации

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

  • Посещение

Репутация

8 Обычный

О andrusha152

  • Звание
    Новенький

Информация

  • Город
    Нежин

Электроника

  • Стаж в электронике
    Более 20 лет
  • Сфера радиоэлектроники
    микроконтроллеры
  • Оборудование
    паяльная станция, китайский тестер., компьютер.
  1. Приемник на RDA5807 и семисегментнике

    А фоторезист не пробовали? Чуть дороже ЛУТа, но платы, как заводские. По поводу питания, мне кажется, что модулю на это абсолютно наплевать. Играюсь с настройками, лежа на диване на макетной плате. Питание от программатора, куча проводов - прием нормальный. За столом, подключаю к самодельному импульсному источнику питания, сделанному из балласта энерносберегайки и трансформатора дежурки ATX - прием нормальный. В часах, куда я поставил этот модуль вместо штатного приемника, обычный трансформатор, один диод и емкость, тоже работает чисто. Дошло до того, что вместо стабилизатора 3,3В поставил стабилитрон с резистором , тоже чисто играет. На антенном входе стоит конденсатор, так я антенну подпаял к общему проводу наушников. И, честно говоря, все эти хрипы, трески у людей мне не понятны.
  2. Приемник на RDA5807 и семисегментнике

    @bulat943 , а фьюзы правильно? В прошлом форуме Вы писали: ставьте HIGH FUSE=D9 LOV FUSE=C3
  3. Сто процентов не в прошивке. Вы вспомните, что это за модули. Самый дешевый китайский ширпотреб. Как и из чего их штампуют, одному богу известно. Может быть нормальные микросхемы ставят в магнитолы, приемники, а из отбраковки делают такие модули. Но мне это помогло. И сейчас проверил на макетке. Прошиваю без задержки - играет, отключаю программатор, через некоторое время включаю - частота правильная, а в наушниках треск. Прошиваю с задержкой - работает четко. Кстати, контроллеры брал разные(Mega8).
  4. Я не утверждаю ставить электролиты, или нет. Просто рассказываю о своих граблях. Кому нибудь эта информация будет полезной.
  5. При инициализации RDA5807, поставьте задержку. Все вылечится. У меня тоже такое было. Rda5807_init: I2cinit I2cstart I2cwbyte Adress Waitms 500 И еще один нюанс. В Datasheet есть параметр, не помню, как он правильно называется. Типа, скорость поднятия питающего напряжения. При подключении после 1117-3,3 конденсатора 100 мкф модуль отказывался работать. Без конденсатора заводился прекрасно. Сейчас ставлю только керамику 0,1 мкф.
  6. А тут чисто играет. Может все дело в RC цепочке на входе?
  7. @bulat943 , если будете прикручивать пульт RC5, посмотрите здесь. У людей уже есть наработки. Что бы войти нужна регистрация.
  8. Все правильно, так и будет. Снимаю шляпу и преклоняю голову. Сколько памяти занял код?
  9. Извините, забыл конфигурацию портов. Здесь все по индикации. 008_LCDtemp .bas Да, это я давно видел. У Саши там все очень наворочено.
  10. Для Вас, все что в моих силах Pulse: Stop Timer0 If T = 0 Then 'индикация частоты _print = Fr For I = 4 To 1 Step - 1 ' разбиваем число на четыре цифры . Chislo(i) = _print Mod 10 _print = _print / 10 Next If Fr < 1000 Then Chislo(1) = 10 ' если частота меньше 100 гасим первый ноль Else Chislo(1) = 11 : Chislo(2) = 12 : Chislo(3) = Volume / 10 : Chislo(4) = Volume Mod 10 ' индикация громкости If Volume < 10 Then Chislo(3) = 10 End If Set Dig1 : Set Dig2 : Set Dig3 : Set Dig4 Incr W : If W > 4 Then W = 1 ' выбираем какую цифру сейчас включать Y = 0 Gosub Look : A = Z ' переходим к подпрограмме Look, которая определяет нужно ли сейчас загорется сегменту А Gosub Look : B = Z Gosub Look : C = Z Gosub Look : D = Z Gosub Look : E = Z Gosub Look : F = Z Gosub Look : G = Z Select Case W ' включаем цифру которую выбрали (w). Подаем плюс на общий провод конкретной цифры Case 1 : Reset Dig1 Reset H Case 2 : Reset Dig2 Reset H Case 3 : Reset Dig3 If T = 0 Then : Set H : Else : Reset H : End If Case 4 : Reset Dig4 Reset H End Select Start Timer0 ' запускаем таймер0 Return ' возвращаемся к выполнению основной программы Look: ' подпрограмма которая определяет нужно ли сейчас гореть сегменту, который вызвал эту подпрограмму Z = Chislo(w) * 7 : Z = Y + Z ' определяем порядковый номер числа из таблици DATA. W - это цифра которую будем выводить 0..1..2..3.......9, Y это номер сегмента (A=0 B=1 C=2...G=7) Z = Lookup(z , Cifri) ' выбираем из таблици включить или выключить нужный сегмент Incr Y 'Y это номер сегмента (A=0 B=1 C=2...) Return 'возвращаемся на место откуда сюда прислали Cifri: ' таблица сегментов с общим минусом |Chislo(i)| Символ | Data 1 , 1 , 1 , 1 , 1 , 1 , 0 '0 Data 0 , 1 , 1 , 0 , 0 , 0 , 0 '1 Data 1 , 1 , 0 , 1 , 1 , 0 , 1 '2 Data 1 , 1 , 1 , 1 , 0 , 0 , 1 '3 Data 0 , 1 , 1 , 0 , 0 , 1 , 1 '4 Data 1 , 0 , 1 , 1 , 0 , 1 , 1 '5 Data 1 , 0 , 1 , 1 , 1 , 1 , 1 '6 Data 1 , 1 , 1 , 0 , 0 , 0 , 0 '7 Data 1 , 1 , 1 , 1 , 1 , 1 , 1 '8 Data 1 , 1 , 1 , 1 , 0 , 1 , 1 '9 Data 0 , 0 , 0 , 0 , 0 , 0 , 0 '10 "" пусто Data 1 , 0 , 0 , 0 , 1 , 1 , 0 '11 Г Data 1 , 1 , 0 , 0 , 1 , 1 , 1 '12 Р Как то странно код отобразился. Вот вложение 008_LCDtemp .bas
  11. В моем коде так. И так удобнее. Я сначала развожу плату, а потом прописываю порты. По поводу энкодера, для переносного приемника, по моему, не самое лучшее решение. Подразумевается, что приемник будет носиться в кармане (сумке). Возможны случайные повороты, нажатия и т. д. Помню, когда теще купили первый мобильник, очень часто были звонки от нее, и тишина. Просто забывала блокировать клавиатуру. Возможно нужно сделать выход из сна по долгому нажатию на энкодер.
  12. Вот поэтому я и ругался в свое время. Познаний - ноль, желания учиться - ноль, зато хотелок выше крыши.