Перейти к содержанию
    

Пришелец

Участник
  • Постов

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

  • Посещение

Весь контент Пришелец


  1. Хотел делать новую тему - но видимо мой вопрос из той же оперы. устройство работает с DS1990A. Всё было нормально, отлаживается обычно на стенде там запаян один тестовый ключ. Сегодня на ключи реакции сначала не было причём не у одгого устройства а у нескольких. Если потрогать плюсовой контакт ключа пальцами, то он начинает считываться. Подключение конденсатора 1 нФ помогает - ключ считывается. Могу отметить, что сегодня видимо повышенная влажность и чуть более холодно. Подключение другого ключа не тестового - работает и без конденсатора. (морозил в морозилке - всё равно работает). Что может быть с тестовым ключом :blink: ??? Подтяжка к +5 4,7К и последовательно 100 ом.
  2. TheMad :a14: Большое спасибо за помощь. Помогло следующее: всё что делал ранее по отдельности сделал всё вместе т.е.: 1. взял землю для ЦАП и выходного делителя с микрофонной земли модуля. 2. взял другое питание для ЦАП 5 вольт прямо со стабилизатора до ответвления на цифровые микросхемы. 3. последовательный резистор выходного делителя напаял непосредственно на ногу ЦАПА. результат удволетворительный
  3. разъём антенны на плате к нему подключается штырьковая антенна. Пробовал и выносную на достаточном растоянии ситуация та же. Да осцилографом видно на выходе ЦАПА приличные помехи соответствующие излучению передатчика. На земле и питании ЦАПА помех нет. Заметил что при касании выхода цапа иголкой - фон усиливается многократно, видимо наводка пролезает через излучение. или трансформатор звуковой или диф. усилитель на ОУ. были такие мысли но хочется обойтись без них и видимо это то же не поможет т.к. помеха формируется на выходе ЦАПА
  4. Попробовал - наводок совсем неслышно. Номиналы сейчас 470 Ом и 22 КОм Пробовал питание ЦАПа брать с другого источника не от того от которого питается модуль. Землю ЦАПа соединял толстым проводом со входом земли - не помогает ничего.
  5. Помогло - но не полностью :( всё-равно остаётся фон. (Причём зависит от мощности излучения когда GSMсигнал хороший мощность излучается низкая - и фона нет) И ещё вопрос "Все работало замечательно." - качество звука было по громкости и по чистоте такое же как например у служб оператора. фона от передатчика совсем небыло слышно?
  6. :) Спасибо - сегодня попробую (такой же совет получил от босса :) ) о результате напишу
  7. Посоветуйте пожалуйста: нужно подключить выход ЦАПа DAC7512 к микрофонному входу GSM модуля Motorolla G20 микрофонный вход имеет свою землю которую нельзя соединять с остальной землёй. если просто подключить через RC то проходит сильный шум от GSM. Спасибо всем кто ответит :)
  8. Неужели никто не подключал к GSM модемам ничего кроме микрофонов?
  9. Посоветуйте пожалуйста: нужно подключить выход ЦАПа DAC7512 к микрофонному входу GSM модуля Motorolla G20 микрофонный вход имеет свою землю которую нельзя соединять с остальной землёй. если просто подключить через RC то проходит сильный шум от GSM. Спасибо всем кто ответит. :)
  10. Большое спасибо! с примером всё понятно - очень удобно (у нас одна проблема - программа имеет больший размер чер половина флэша) а насчёт загрузчика если он линкуется не с нуля то как на него осущ переход при вкл питания или он изменяет на себя вектор сброса после загрузки приложения? В АВР есть fuses для изменения адреса старта (перехода на загрузчик) а в арме по-моему нет (или я не в курсе)
  11. Пусть bootloader тогда вопрос: он компилируется отдельной программой или является частью приложения? может есть ссылочка на пример загрузчика из внешнего датафлэша всё-равно заманчивой остаётся идея биоса - инкапсуляция ф-ций железа, обспечение разделения программы на аппаратнозависимую часть и аппаратнонезависимую
  12. В основном для того чтобы обеспечить дистанционную загрузку приложения. Во флэш должен всегда оставаться гарантированно рабочий загрузчик (т.е. он не должен перезаписываться). Размер программы превышает размер половины флэша.
  13. Добрый день! Всем. Хочу попросить совета у профессионалов. Задача такая: построить программу для АРМ (среда разработки ИАР), чтобы она состояла из двух частей: 1 часть BIOS - постоянно находится во FLASH 2 часть APPLICATION - загружается BIOSом во FLASH и запускается им же и при этом для взаимодействия с железом использует ф-ции BIOS У меня пока на уме такое решение: BIOS компилируется как обычная программа но расположенная в верхних адресах памяти и использующая верхние адреса RAM. Приложение компилируется с обычным расположением сегментов ограниченных сверху размером под BIOS и загружается BIOSом в нижние адреса (как обычно) после загрузки (или во время загрузки) первая инструкция подменяется на команду перехода на BIOS. Взаимодействие приложения с биосом через прерывание софтовое. Или может есть другой способ (правильный :unsure: ) ? Заранее спасибо за советы. Приложение включает в себя FreeRTOS. Или может лучше отнести её к BIOS ?
  14. Да что-то я не углядел сначала серию AT26DF она по описанию получше - а по деньгам то же самое как и 45. :w00t: надо место на плате и под неё зарезервировать параллельно 45-ой
  15. Спасибо. За столь развернутые ответы. :a14: Т.е. как я понял в принципе можно использовать для хранения некоего исполняемого кода. Стоит ли проверять его на правильность??? В котором содержатся так же некоторые настройки которые могут находиться в произвольном месте и иногда изменяться. Т.е. в одной странице может находиться и код и эти настройки. Настораживает только одно - пропадание питания во время записи или стирания страницы. Тогда и код будет попорчен. Наверное всё-таки лучше их разделять по разным страницам. И рефреш тогда уж наверное лучше не делать?? Ограничить ресурс перезаписей настроек 10000 (и хватит) а то во время рефреша пропадание питания если
  16. Кто-нибудь подскажет максимальное количество циклов перепрограммирования этой микросхемы. В интернете нашёл 50тыс (но источник информации непроверенный) так же интересует вообще надёжность хранения информации ;) (из практики может кто поделится). и напоследок непонятно зачем так реализована аппаратная защита от записи - только первые 256 страниц мне кажется логичнее защищать весь массив Заранее всем ответившим спасибо :)
  17. Спасибо Petka!!! Ты побудил меня прочитать ещё раз инструкцию на avreal там можно задавать lpt порт не только номером но и адресом поставил адрес и всё пошло!!! пришлось добавить ещё правда задержечки -3 и усё РАБОТАЕТ теберь буду под XP (а то начальник хотел уже новый комп покупать :) )
  18. Проблема с LPT портом

    Поставил WinXP на комп на котором до этого был WinME встроенный LPT давно сдох использовалась плата PCI на ней LPT и два COMа программировал AVR досовским AVREAL-ом сейчас поставил DLPortIO и хотел использовать avreal32 но он не может управлять этим LPT портом :unsure: , наверное из-за того что у него нестандартные адреса 0xD200 и 0xD300 и эти адреса никак похоже не изменяются не перемычками ни в настройках устройства Может кто сталкивался с такой проблемой. ?
  19. Всем большое спасибо!!! Ура !!! всё понятно!!! дело было вот в чём: проект состоит из файлов на C и на ассемблере, я как-то давно повелось, не задумываясь в ассемблерных файлах данные определял в сегмент NEAR_I. Отсюда у меня и получались разные размеры сегментов NEAR_I и NEAR_ID - терялось их соответствие данные копировались из flash в ram со сдвигом. Поменял сегменты для данных в ассемблерных файлах на NEAR_Z и всё заработало!!! РАЗМРЫ СЕГМЕНТОВ NEAR_I и NEAR_ID ДОЛЖНЫ БЫТЬ РАВНЫ ! ! !
  20. создал новый проект :( :( :( :( :( :( :( :( :( :( :( :( не помогло. __x_z void __flashcpy(DstPtr_Type dst, SrcPtr_Type src, Counter_Type size) { do { *dst++ = *src++; } while(--size != 0); } эта ф-ция в файле segment_init.c она неправильно работает - если поменять *dst++ = *src++; на *dst++ = 1; то все статические переменные инициализируются единицами т.е. видимо src не на нужную область указывает в файле кода смотрел структуры SegmentInitBlock (их всего две для near_i и near_z)сформированы правильно с нужными адресами инициализаторов. т.е. всё вроде правильно написано и должно работать - но не работает. только размер сегментов Near_i и near_id не совпадает первый больше и цикл копирования из flash в RAM выполняется по длине near_i __________но это наверное не страшно :blink:
  21. подключил оба файла avr\src\lib\low_level_init.c avr\src\lib\segment_init.c хоть ф-ции эти и не переопределяются. используются по умолчанию попробовал иаровским debugerom значение переменной не присваивается но вместо ff начальное значение = 0 В near_id я имел в виду записывается значение инициализатора. поставил галки как Вы сказали - то же самое :( ______________ что дальше делать? самому писать segment_init :) ???
  22. Во вкладке CODE пробовал все комбинации - не помогает Напишите пожалуйста как стоят галки в след опциях у кого всё работает: Place string literals and constants in initialized RAM ? Place aggregate initializers in flash memory ? Force generation of all global and static variables ? avr\src\lib\low_level_init.c попробую сегодня включить переменные вроде попадают в нужные сегменты Near_i и Near_id отладчиком не пользуюсь - прямо на железке.
×
×
  • Создать...