Гражданская радиосвязь в России (CB, LPD, PMR) Вход     Регистрация

18+ Данный раздел сайта запрещён для просмотра детьми!  

Данный раздел запрещён для просмотра детьми

Материалы данного раздела могут содержать информацию, запрещенную для детей, согласно нормам установленным Федеральным законом "О защите детей от информации, причиняющей вред их здоровью и развитию".
Гражданская радиосвязь / Всё на форуме / Аппаратура самодельная - показываем, обсуждаем, восхищаемся
Эхо репитер на ATmega8 + SD карта 1...2Гб - схема, прошивка, исходный код, печатная плата
250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
 
фьюзы (fuse bit) для прошивки Эхо репитер на ATmega8 + SD карта - версия 2

Я прописал состояние битов, внизу там есть коммент чему 1 или 0 соответствует установленая галка, думаю разберётесь.

На счёт делителя на 8, да я путаю наверно мегу88 и мегу8, они братья близнецы, но один хромой, другой косой и не всегда их сразу отличия вспоминаю.
Приложены файлы: f9885-0.gif
 
Записано: 3773 дн 20 час 15 мин 20 сек назад (19.12.2013, 15:44:08)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Хотя... Что-то здесь не то.
Если верить окну программы, где написано:
галка = bit=0
нет галки = bit=1
и если на экране была представлена раскладка фузов для контроллера который с завода, то фигня выходит.

В общем задача сделать так:
CKSEL3 = 0
CKSEL2 = 1
CKSEL1 = 0
CKSEL0 = 0
это будет соответствовать 8МГц тактовой, встроенный генератор.

если сделать так:
CKSEL3 = 0
CKSEL2 = 0
CKSEL1 = 0
CKSEL0 = 1
это будет соответствовать 1МГц тактовой, встроенный генератор.
Думаю на скриншоте изначально была эта комбинация, но тогда выходит, что сереньким под галками написали создатели программы чепуху.
 
Записано: 3773 дн 20 час 4 мин 49 сек назад (19.12.2013, 15:54:39)

 
ur4m без регистрации
  Спасибо большое все понял. а еще скажите дураку) Atmega8 dip можно смело использовать прошивка не поменяется?)
 
Записано: 3773 дн 18 час 35 мин 26 сек назад (19.12.2013, 17:24:02)

 
ur4m без регистрации
  А еще хорошо работает более дешевый операционник mcp 6022 только распиновка другая
 
Записано: 3773 дн 16 час 51 мин 7 сек назад (19.12.2013, 19:08:21)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Нет, в DIP корпусе ATmega8 не подойдёт без изменений прошивки.
Причина:
В DIP корпусе у меги8 нет ноги ADC6.
То есть потребуется изменить в прошивке ADC6 на любой из ADC0 ... ADC5.

Соответственно в исходнике это строка:
ADMUX=6 | (ADC_VREF_TYPE & 0xff); // 6 вход используем

Соответственно для ADC0 меняем на:
ADMUX=0 | (ADC_VREF_TYPE & 0xff); // 0 вход используем

Исходники доработанные не выкладываю, так как вышу уже указал что и на что заменить в исходнике, да и вообще у меня там всё с комментариями на русском языке, так что разобраться с каждым моментом довольно просто.

На счёт операционника, то подойдёт и MCP6021 (один операционник в корпусе) если отказаться от ФНЧ по выходу, если в радиостанции уже есть сколь ни будь нормальный ФНЧ (различные Motorola, Vertex (особенно переносные) и даже Megajet имеют его по микрофонному входу).

Я уже где-то писал, что можно обойтись и вообще без операционника, если на ногу ADC подать половину опоры ADC, скажем впилив 2 резистора на 47ком ... 100ком, один с AREF, другой на землю, и подать на ногу ADC через конденсатор сигнал достаточного уровня, скажем с выхода УНЧ радиостанции.
Просто я обычно предусматриваю широкие возможности для вот таких поделий и вношу некий запас прочности в поделие, что бы его можно было подключать к самому разному оборудованию не переживая, что нечто будет работать в критических режимах как в поделии так и в оборудовании.
Пример такой "лишней" детали, внесённой в схему лишь для повышения совместимости - транзистор VT1 призванный в случае чего спасти микроконтроллер и согласовать почти любой входной уровень с уровнями микроконтроллера, хотя на деле, если есть сигнал SQL с уровнем 2 вольта или более, то его можно просто через резистор на 2...10 ком подать прямо на ногу микроконтроллера, если уровень будет выше чем +Vпит микроконтроллера, то в контроллере откроется защитный диод и стравит лишнее на +Vпит, а резистор на 2...10 ком ограничит втекающий ток.
 
Записано: 3773 дн 8 час 56 мин 26 сек назад (20.12.2013, 03:03:02)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  И ещё момент - детали для своих конструкций выбираю не по цене, а по наличию у меня. Всё же нужно понимать, что для меня это хобби, а не работа, и было бы странно, если бы я нашел самую дешевую по прайсам, детальку для того или иного узла, а потом ждал месяц её с Москвы откладывая сборку устройства, лишь потому что эта деталька дешевле.
Здесь достаточно знать одно: я никогда не применяю детали в критических режимах (усиления близкие к максимально возможным, токи на пределе и напряжения на грани).
В общем, есть огромное поле для творчества, исключения лишних деталей и замены их при повторении (естественно с доработками схемы и печатки).
Например, для данной конструкции, можно:
- выполнить входной усилитель звука на 1 транзисторе или вообще от него отказаться;
- отказаться от транзистора по входу SQL;
- заменить 78L33 на обычный параметрический стабилизатор на 1 транзисторе и стабилитроне или же где-то из радиостанции сразу взять 3 вольта, например с Li-Ion аккумулятора;
- можно свести 2 светодиода статуса работы в один двухцветный;
- отказаться от выходного ФНЧ или тоже собрать его на 1 транзисторе.
В конце концов можно запитать микроконтроллер и операционник от 5 вольт и навесить делителей из резисторов по шинам SS, MOSI, SCK - с ноги микроконтроллера 1,8ком на землю от ноги карты 3.3ком (как показано здесь) и питания 3 вольта подать только на карточку, при этом будет возможность поднять тактовую частоту микроконтроллера и следовательно и тактовую частоту ADC, а значит запись более качественной.
 
Записано: 3773 дн 8 час 34 мин 52 сек назад (20.12.2013, 03:24:36)

 
ur4muk без регистрации
  все заработало.)) огромное спасибор вам за проэкт. внес свои модификации. теперь работает на укв 434мгц. все прекрасно)
 
Записано: 3770 дн 15 час 50 мин 14 сек назад (22.12.2013, 20:09:14)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Пожалуйста. Рад был помочь.
Рассказали бы о модификациях, наверняка людям было бы интересно, может кто захочет повторить.

На счёт модификаций: если всё же поставить CodeVisionAVR V2.04.4 или более свежую версию, то появиться возможность собирая проект из исходников изменять множество параметров - таймауты, задержки между выключением и включением, а дописав немного кода, мржно сделать открытие репитера по тональнику 1750Гц (у нас в Новосибирске на 446.04375 работает подобная прошивка и открывается именно тональником).
 
Записано: 3770 дн 15 час 15 мин 45 сек назад (22.12.2013, 20:43:43)

 
ur4muk без регистрации
  ну для начала микруха стоит mcp 6022
обвязана так-же толькоо фнч пересчитал. время записи увеличено в коде. вместо smd атмеги стоит dip
с сответствующими изменениями в коде о которых вы писали.
по всем входам и выходам стоят маленькие фиритовые дроселя (щелчки при воспроизведении таким образом свелись до нуля)
отдельно сделано питание с помощью резистивных делителей на флеш карту (теперь на атмегу идет 5 вольт)
ну еще выкинул транзистор sql но это потому что в станции на открытии шумоподавителя стоит светодиод и от него я брал сигнал. вообщем то не много но работает просто перкрасно.
 
Записано: 3770 дн 11 час 14 мин 25 сек назад (23.12.2013, 00:45:03)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  ur4muk, спасибо за информацию!
О треске - треск рождается так: импульсная помеха по питанию, создаваемая SD карточкой (а при записи она жрёт хорошо ток), пролазит на среднюю точку питания в входном усилителе, затем усиливается самим усилителем, так как она противофазна основному сигналу и усиленная воспринимается как треск.
Лечение:
1) Хорошие блокировочные ёмкости по питанию SD карточки (желательно микрофарад 470 или даже 1000).
2) Хорошая блокировочная ёмкость в средней точке ОУ (конденсатор который в парралель R2 стоит), его ёмкость желательно тоже микрофарад на 100 минимум (будет медленнее устанавливаться напряжение при включении устройства, но это зло не так большой руки).

Раздельное питание ОУ+Микроконтроллер (более высокое напряжение) и SD карточки (свой понижающий преобразователь) тоже решает проблему очень хорошо.
 
Записано: 3769 дн 5 час 10 мин 14 сек назад (24.12.2013, 06:49:14)

 
1911 без регистрации
  а на ардуино можно перенести проект?
там есть типовой sd-шилд
 
Записано: 3769 дн 4 час 31 мин 39 сек назад (24.12.2013, 07:27:49)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Наверно можно, только я ардуино не располагаю и не знаю на каком языке пишется софт для ардуино.
Если в ардуине есть возможность исполнять код написанный на СИ или Ассемблер (хотя бы вставками в основной код), то да, работать будет, если Бэйсик или подобный язык высокого уровня, то не получиться сделать, так как код критичен к времени исполнения (всё же не забываем что это работа со звуком и SD картой, а значит мы должны в некоторых местах укладываться в ограниченное количество тактов (для этого собственно мне и пришлось допиливать код работы с SD картой написанный господином Jesper Hansen)).
 
Записано: 3769 дн 3 час 56 мин 32 сек назад (24.12.2013, 08:02:56)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Но технически, естественно всё можно сделать, только прошивку в микроконтроллер придётся влить не через загрузчики и его софтом (или как там она ещё вливается в ардуино), а подключившись к SPI прямо микроконтроллера.
Потребуется схема ардуино (что бы знать какие там входы/выходы к чему именно подключены).
 
Записано: 3769 дн 3 час 54 мин 27 сек назад (24.12.2013, 08:05:01)

 
1911 без регистрации
  в среде разработки используется си++-подобный язык, программы- скетчи.
среда разработки компилирует и загружает скетчи в контроллер.
Фишка, чтобы программа была стандартным скетчем, вероятно, там можно использовать ассемблерные вставки.
 
Записано: 3769 дн 3 час 37 мин 44 сек назад (24.12.2013, 08:21:44)

4 из Новосибирск - Новосибирская обл
4 из Новосибирск - Новосибирская обл
  В ардуино есть своя среда разработки, которая код скетча компилирует при помощи такого же компилятора что и другие среды. Просто помимо собственно кода скетча, среда может добавлять ещё кучу кода.
Например ШИМ, на ардуино это через таймеры. И не факт, что если не использовать analogWrite(), то среда не добавит этот код. Хотя это можно проверить, ибо среда сначало преобразует код скетча в код си, а потом уже его кормит компилятору.

Что касается ног:
Приложены файлы: f10027-0.jpg
 
Записано: 3769 дн 3 час 18 мин 45 сек назад (24.12.2013, 08:40:43)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Я привык работать с железом на низком уровне, то есть видеть порты как значения в регистрах, таймеры как счётчики с Переменным Коэффицентом Деления, ШИМ как счётчик так же с ПКД.
Практики у меня много на языках СИ, Ассемблер, PHP, perl, другие языки я хоть и знаю, но это было давно и сейчас я не могу сказать, что я быстро и хорошо что-то смогу на них написать (придётся одним глазом всё время в документацию смотреть).
Для 328 меги написать код на сях или асме для меня будет на порядок (в 10-20 раз) быстрее, чем раскурить язык ардуино до достаточного уровня, что бы можно было гарантировать результат.
Учитывая низкую ценность знания для меня ардуино, наверно я этим заниматься не буду (это что-то вроде осваивать управление лошадью и её содержание, если уже имеешь летающую антигравитационную тарелочку и знания по управлению ей).

По-моему разумнее будет, если владельцы ардуин изучат си, прочитают даташит на мегу328, соберут нормальный программатор и научатся затравливать ЛУТ. Нельзя же всю жизнь ходить на костылях, лишь потому, что не хочется учиться ходить своими ногами и страшно упасть сделав первый шаг без костылей.
 
Записано: 3769 дн 3 час 1 мин 50 сек назад (24.12.2013, 08:57:38)

4 из Новосибирск - Новосибирская обл
4 из Новосибирск - Новосибирская обл
  А кто сказал, что полученный бинарник нельзя влить в ардуино?
 
Записано: 3769 дн 2 час 49 мин 5 сек назад (24.12.2013, 09:10:23)

 
1911 без регистрации
  3d принтеры работают на ардуинах, "костыли" не мешают
 
Записано: 3769 дн 2 час 47 мин 29 сек назад (24.12.2013, 09:11:59)

250 из Новосибирск - Новосибирская обл
250 из Новосибирск - Новосибирская обл
  Костыли это костыли, но я не говорю, что на костылях нельзя бегать, потому что своими глазами (когда ещё работал в большице) видел как цыганёнок лет 11 на костылях бегал по больничному коридору.

4, ты ведь обладатель ардуины, может возьмёшься перепилить проект, я бы помог чем мог. Просто у меня ни железа ни среды разработки.
 
Записано: 3769 дн 2 час 41 мин 6 сек назад (24.12.2013, 09:18:22)

4 из Новосибирск - Новосибирская обл
4 из Новосибирск - Новосибирская обл
  Лично я, заядлый ардуинщик не вижу смысла в портировании проэкта на ардуино:
помимо самой ардуины и шилда с разъёмом sd карты, надо довешивать ещё некислую горстку деталей.
Не проще закупить мегу8 в dip корпусе, макетку и смонтировать проводками.
Так же прошить мегу 8 никаких проблем, хоть скетч, хоть битбанг...
 
Записано: 3769 дн 2 час 36 мин 54 сек назад (24.12.2013, 09:22:34)

    Страницы в теме:
 1   2   3   4   5   6   7   8 


 
Ник:

Пароль к нику:

Число изображённое крупным шрифтом:


Написать комментарий:
[B] [I] [S] [WWW] [YouTube]

Бросить друзьям ссылку на тему:
Если это интересная тема, дайте людям на неё ссылку:
http://27kb.ru/zou.php?f=901&message=7244


О сайте
Правила сайта
  Обратная связь Рекламодателям
  Сотрудничество   Яндекс.Метрика