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

termik

Свой
  • Постов

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

  • Посещение

Весь контент termik


  1. STM32F030F4P6 - 222 штуки

    3 пенала по 74 штуки, куплены в Элитане пару лет назад, не пригодились. В свете текущего дефицита чипов считаю кощунством продолжать держать их в шкафу, надеюсь помочь кому-нибудь спасти производство =) Цена 666 американских долларов за всю партию, с продажей по частям заморачиваться не буду. Важно: товар находится в Польше, Краков - так что покупателям из Европы купить значительно проще, чем из России. Но и в Россию можно придумать как притащить. Пишите в телегу t.me/denis_yurev
  2. Всем привет! Ситуация такая: 1. Устройство через АЦП производит измерения, потом кое-как их обрабатывает, и в итоге получается штук 15 переменных с актуальными значениями. 2. К устройству периодически обращаются по уарту, чтобы забрать значения этих переменных. Проблема в том, что запрос из уарта может прилететь в процессе обновления переменных,и тогда половина значений уйдет актуальных, половина - неактуальных. Проблема стара как мир, и я конечно решил ее. Но мне кажется, что мое решение не самое лучшее, а сейчас появилось время задуматься о прекрасном, и хочется понять, как это решается правильнее всего. Я программирую stm32 под freertos. Вот как выглядит момент получения запроса по уарт: xSemaphoreTake(semphr_uart_received_new_command, portMAX_DELAY); while(measure_process) { taskYIELD(); } measure_process - это глобальная переменная, которую я выставляю в 1, пока обновляю данные, и выставляю там 0, когда обновления закончено. У меня как-то с универских времен сидит на подкорке, что глобальные переменные - это чаще всего плохо. Какое решение в данном случае наиболее "тру"?
  3. Хм, стабилитрон - это рудимент от прошлой версии схемы, где INA213 питалась от 12В. Убрал - действительно помогло, не увидел, как говорится, леса за деревьями))) Огромное вам спасибо за наблюдательность
  4. Всем привет. Вот такая схема: Референсное напряжение, как видите, подаю через повторитель на ОУ - 860мВ. Когда пропускаю через схему ток 20А, получаю на выходе 1540мВ, что, при моем шунте 1мОм, пересчитывается в (1540 - 860)/50 = 13,6А Проверил, напряжение питания стабильно 3,3В, референсное напряжение тоже стоит как вкопанное. Померял падение на шунте - правильные 20мВ. Микросхемы куплены в РФ у надежного и проверенного поставщика. Трассировка - нормальная, не в первый раз замужем Я сломал просто всю голову, такое ощущение, что у INA213 усиление не стабильные 50, а логарифмическая кривая) Есть какие-нибудь идеи?)
  5. Спасибо за наводку. Перечитал тщательно даташит и апноуты, и понял, что трассировка содержит кучу косяков, именно по выходной части. Сейчас переделываю, посмотрим, что получится.
  6. Всем привет. Яростно листал сайты TI, ST, AD, читал форумы, но нашел только TPA3116D2. Но с ней проблема - иногда "сами по себе" перестают работать каналы. Из примерно 30 использованных микросхем, этот отказ произошел у трех экземпляров. Покупал у белых поставщиков, electronshik и farnell. Может подкинете альтернатив?
  7. Привет. Собственно, сабж, греется. При этом сеть отлично работает. Питание приходит 3.26В, только что померял. Это вообще нормальное поведение? Может имеет смысл делать 1,8В сторонним преобразователем, не используя встроенный в микросхему? Подключаю вот по такой схеме А еще, может посоветуете какую-то более распространенную проверенную микросхему usb2.0-lan100Mbit? я взял эту, потому что она стоит в дешевых usb-lan свистках от dlink, но сейчас вижу, что ее не так-то и легко купить у европейских поставщиков. Что скажете насчет LAN9514, которая используется в raspberry pi?
  8. Почитал, там написано, что осциллограф умеет сохранять осциллограммы на флешку, то что надо, спасибо) Буду теперь отталкиваться от это функции при выборе конкретной модели.
  9. Не знаю, дорого ли, вот и спрашиваю. С удовольствием рассмотрю другие модели. Я прекрасно понимаю, что для большинства нужд полноценный осциллограф удобнее, но он наверное не сможет записывать осциллограммы минутами, ну или будет стоить как два самолета, не?
  10. Всем привет. Возникла необходимость отлаживать питание устройства, а именно - на протяжении нескольких минут работы анализировать, как ведет себя напряжение в зависимости от меняющейся нагрузки. Я подумал, что можно наверное купить USB-осциллогграф, и для его софта не будет проблемой запись сколь угодно длинной осциллограммы, пока есть место в оперативке/на винте. Начал выбирать, например рассматриваю PICOSCOPE 2206B - http://uk.farnell.com/pico-technology/pico...msps/dp/2535474 . Я вот только не могу понять, что означает такая характеристика как MEMORY, которая у него 32 msamples. Зачем вообще usb осциллографу встроенная память, если можно осциллограмму хранить на стороне компьютера? Есть еще младшая модель PICOSCOPE 2204 в два с половиной раза дешевле, и я бы ее купил, т.к. пропускной способности для моих задач хватает, но опасаюсь, что с ее мизерным количеством памяти не удастся ничего записать.
  11. В общем наша небольшая фирма решила еще на шаг приблизиться к samsung и apple, и впервые заказала ручной монтаж в Резоните) А они взяли и запаяли SMD электролиты неправильной полярностью) Потом конечно предложили переделать бесплатно и даже скидочку дали на следующий заказ. Мы совсем не злимся и продолжаем любить Резонит, ибо это первый их косяк на моей памяти с 2012 года, но просто забавная ситуация - перепутать полярность электролитов при монтаже это, я не знаю, все равно что гонщик формулы 1 на парковке зацепил бы столбик бампером))))
  12. Имхо, в современном мире вообще потеряли всякий смысл слов "наши", "не наши". Интернет стер все границы, а полет на самолете в другие страны стал рутиной, как поездка на маршрутке.
  13. А мне нравится чисто тактильно-визуально, платы теперь выглядят в стиле стритрейсерских всяких карбоново-матовых навороченных машин)
  14. Для автомонтажа в "Резоните" есть ряд правил-рекомендаций, одно из них - чтобы компоненты были не слишком близко расположены, не ближе 0,63мм между smd падами. Я сделал правило для двух [isPad AND (OnBottomLayer OR OnTopLayer) ], но оно также затрагивает те пады, которые входят в состав компонента, например у stm32 в lqfp корпусе с шагом 0,5 все становится зеленым. Я с этим мирился, но сейчас стал использовать конденсаторы 0603, и они все повально зеленые, это уже раздражает. Очень внимательно не раз проштудировал все доступные "методы" для построения правил, но так и не смог ничего поделать. Подскажите пожалуйста как решить эту проблему)
  15. эти? https://www.eltech.spb.ru/catalog/razemi_rj...formatorami_trj вот например подходящий вариант, в разы дешевле https://www.eltech.spb.ru/item/trj0011abnl
  16. hsoft, большое спасибо! Я пользуюсь той же референсной схемой, выдержку из которой вы привели, но не догадался открыть даташит на использованный там трансформатор, и при помощи него сопоставить правильно ножки, а теперь все понятно. И совет с резиками тоже отличный. Поискал повнимательнее, нашел http://ru.farnell.com/amphenol/rjmg1631181...ohs5/dp/1357436
  17. Привет. Если вкратце, я делаю USB сетевую карту на AX88772B. Это мой первый опыт работы с сетью, но я дьявольски тщательно проштудировал все апноуты, и сделал все в соответствии с ними, надеюсь заработает. Вот только трансформаторные входы сетевого разъема меня напрочь сбивают с толку, просьба опытным товарищам посмотреть, правильно ли я подключаю? И заодно еще вопрос, я хороший разъем выбрал? https://www.chipdip.ru/product/sk02-111015nl Мне не нравится его производитель "Китай", но за 15 минут гугления не нашел в наличии в компеле/чипдипе/фарнеле ничего от приличных производителей со встроенными трансформаторами и диодиками.
  18. Привет. Я использую сс1101 в режиме фиксированной длины пакета. Опрашиваю GDO0 в режиме 0х07(вверх при получении корректного пакета, вниз при чтении из RXFIFO) Значит, наблюдения такие. Опыт 1. Настраиваю модуль на автоматический переход в IDLE после приема пакета, и опрашиваю его вот так. Сори за магические числа, пока нет времени все задефайнить нормально, ну я думаю для тех, кто работал с модулем, всё более-менее наглядно и так. while(1) { while(!(GDO_GPIO->IDR & GDO0_Pin)); cc1101_read_burst_fifo(dat, WIRELESS_DATA_BYTES_PER_PARCEL); cc1101_command_strobe(CC1100_SFRX); cc1101_command_strobe(CC1100_SRX); while((cc1101_read_status_register(CC1100_MARCSTATE) & 0x1F) != 0x0D); } ... и сталкиваюсь с тем, что если два передатчика синхронно шлют пакет, прием "зависает". Подключаюсь отладчиком, смотрю - висит в цикле опроса GDO0. Ломал два часа голову, пока не догадался посмотреть статус cc1101 в бесконечном цикле, а она - в IDLE. Какого-то черта после того, как она уже гарантированно переключилась в RX, в конце большого цикла, опять оказывается в IDLE, причем без дерганья GDO. Опыт 2. Ставлю костыль while(1) { while(!(GDO_GPIO->IDR & GDO0_Pin)) { if((cc1101_read_status_register(CC1100_MARCSTATE) & 0x1F) != 0x0D) { cc1101_command_strobe(CC1100_SRX); while((cc1101_read_status_register(CC1100_MARCSTATE) & 0x1F) != 0x0D); } vTaskDelay(5); } cc1101_read_burst_fifo(dat, WIRELESS_DATA_BYTES_PER_PARCEL); cc1101_command_strobe(CC1100_SFRX); cc1101_command_strobe(CC1100_SRX); while((cc1101_read_status_register(CC1100_MARCSTATE) & 0x1F) != 0x0D); } ... и "все работает", не считая того, что я чешу репу в недоумении, а по spi идет мусорный обмен каждые 5мс, плюс на 5мс уменьшилась отзывчивость. Опыт 3. Отключаю автоматический переход в idle после приема пакета, и делаю это ручками. while(1) { while(!(GDO_GPIO->IDR & GDO0_Pin)); cc1101_command_strobe(CC1100_SIDLE); while((cc1101_read_status_register(CC1100_MARCSTATE) & 0x1F) != 0x01); cc1101_read_burst_fifo(dat, WIRELESS_DATA_BYTES_PER_PARCEL); cc1101_command_strobe(CC1100_SFRX); cc1101_command_strobe(CC1100_SRX); while((cc1101_read_status_register(CC1100_MARCSTATE) & 0x1F) != 0x0D); } ... и всё работает отлично. Не пойму такое поведение сс1101, это баг или фича?
  19. Всё же, прежде чем рубить с плеча и обзывать чужую точку зрения бредом, было бы неплохо разобраться в терминологии. Что значит "проектировать электронику"? Под этим можно понимать две совершенно разные вещи - либо делать процессоры и солнечные батареи из песка, либо на готовых процессорах и микросхемах делать прикладные устройства. Для первого наверное не обойтись без фундаментальной университетской подготовки, а вот второму вполне можно самому научиться по вечерам, обладая интеллектом чуть выше среднего. Как надо будет диодиками моргать - разведет как попало плату, и все будет работать. Как надо будет моторчик покрутить - разберется в эффекте Миллера и правильной трассировке. Сейчас новое время, весь интернет завален обучающими видосами, статьями, куча форумов, так что университеты особо-то и не нужны стали, при условии, что человек реально хочет чему-то научиться. Кстати, насчет процессоров из песка. Есть мысль, что даже таким вещам лучше учиться не в университете, а пойти на реальное предприятия работать за еду на самую стажерскую должность, браться за реальные задачи, и выгрызать нужные знания в процессе решения. Таким образом автоматически произойдет максимально эффективное и быстрое обучение только нужным вещам. Конечно, повторюсь, человек должен хотеть научиться, а не выполнять свою работу кое-как. А если не хочет, то и в универ бесполезно ходить 5 лет.
  20. Хм, 20 баксов это совсем какой-то адский демпинг. На всякий случай сделаю такое предложение: Мне тут надо заказать в резоните пару прототипов для своих нужд, тысяч на 4-5 рублей. Могу разработать ваше устройство, и докинуть в тот же заказ. С вас - оплата заказа, с меня - готовое устройство на заводской плате, без всяких макетных соплей, делающее ровно то, что от него нужно. Срок - 20 января, учитывая, что резонит 10-го открывается. Ах да, территориально - Москва. Пишите если что djurievГABgmail.com, могу накидать некое портфолио, чтобы не страшно было связываться с совсем незнакомым человеком
  21. Ух ты, интересно, где я проглядел, сейчас пробегусь по платам. Большое спасибо!
  22. А вы представитель компании? Думаю, в любом случае ничего криминального нельзя сделать с этой информацией)) 826025 и 846028. Ну и вы это, сильно-то не ругайте технологов, вообще обычно они молодцы)))
  23. Второй раз подряд сталкиваюсь, что мои платы технологи переводят на 5 класс точности из-за того, что при толщине платы 2мм минимальный диаметр отверстия - 0.3, при том, что на сайте указан 5 класс только начиная с 1:7. В первый раз, месяца три назад, когда я позвонил и начал уточнять, технолог вежливо извинился и объяснил, что эти нормы у них недавно и он еще не привык, но сейчас снова то же самое. Я не могу понять, это такая новая политика компании в кризис, в надежде, что заказывающему инженеру пофиг на деньги, которые платит его фирма, и он не станет ничего спрашивать, ну типа подумаешь, была 21 тыща, стало 29? Или все-таки действительно досадные недоразумения и совпадение? Уже далеко не первый год работаю с Резонитом, и всегда был очень доволен - не было ни единого нарекания на качество продукции, сроки, и четкость обслуживания.
  24. Спасибо) Пользуясь случаем - выражаю вам также благодарность за видеоуроки по альтиуму, мне они очень помогли)
  25. Привет, такая проблема: у меня несколько проектов содержат в себе device sheet entry, но каждый раз альтиум запускается с пустым списком путей до них, и приходится указывать заново. Проверил, путь не содержит кириллицы, и прям даже не знаю, что думать, раздражает изрядно) Кто-нибудь знает решение?
×
×
  • Создать...