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

User_1

Members
  • Постов

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

  • Посещение

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

  1. Ищется специалист для монтажа несложных устройств в г. Казани. Плата: STM32F10x, немного развесухи (резики, транзюки), нарезать и припаять проводки, намотать катушки (небольшие), собрать в корпуса. Все схемы и руководства будут предоставлены. Если будет желание - можно будет также оттестировать изделие. Обсуждение условий по номеру: +7 - девять - шесть - шесть - 2609660. Можно и в личку писать.
  2. Спасибо за корректировку по городу. Однако прошу вас убрать сообщение про "мне предлагали...", ибо ... (думаю понимаете) Спасибо за понимание.
  3. В сервисный центр (г. Казань) по ремонту автоэлектроники требуется специалист по ремонту блоков управления автомобилей. Обязанности: диагностика блоков управления и ремонт, программирование автомобильной электроники, кодирование, редактирование прошивок, дампов. Требования - умение владеть паяльником, базовые основы радиоэлектроники. Опыт работы с микроконтроллерами будет хорошим плюсом. Многому научим, для нас главное не большой опыт, а порядочность, желание развиваться и доводить начатое до конца ЗП - 50000 - 80000 р С тенденцией к дальнейшему росту. Зависит от первичных навыков. Для связи: +7 -девять - восемь - семь -два - 971087 (есть телега, ватсап, можно просто звонить) либо сюда
  4. Существует готовое решение: наушники костной проводимости. Они беспроводные, бывают и водонепроницаемые
  5. Правильно советуют, берите NRF24L01 и будет вам счастье) Можно установить сколько угодно приёмников и срабатывать будет только нужный
  6. Периодически (два-три раза в год) нужен разработчик для реализации проектов, обязательно в Казани. Желательные навыки: работа в CAD (у нас используется KiCAD) - разработка схемы, трассировка; опыт работы с STM32; опыт разработки устройств для передачи данных по радиоканалу При необходимости обеспечим рабочим местом, но можете работать у себя Все вопросы на почту 111970@mail.ru (тема письма - "Разработчик") или телефон +7-987-297-10-87
  7. Всем спасибо за участие, решением задачи стало применение комплекта микросхем MAX1472 и MAX1473)
  8. Посмотрите в сторону датчиков MLX90614 и подобных (статья с примером использования, а вот тут даташит) Если не десятки метров - можно и без оптики, просто ограничить угол обзора
  9. Всем привет Появилась задача сделать радиоудлинитель UART-подобного интерфейса. Расстояние - пара метров, но передача пакетами не подходит, нужно передавать тупо каждый фронт. Пробовал обычные RF-модули (как здесь). Скорость, если сравнивать с UART - хотя бы 19200 (эти модули уверенно тянут только до 2400). Может бывают аналогичные, но более быстрые модули? Или на рассыпухе можно собрать, но в радиопередаче опыта мало => схему сам разработать не смогу. Так что если кто поделится схемой - буду рад)
  10. Сам разобрался. Оказалось, мало просто включить приёмник и разрешить приём на нужных каналах, необходимо ещё в регистрах 0x11-0x16 задать длину принимаемого пакета для, соответственно, каналов 0-5. Если в регистре записан 0, то приёмник работать будет, будет генерировать прерывание IRQ по приёму, но сами данные принимать не будет. Если что - вот непричёсанная инициализация: void Init_nRF24L01(void) { Write_nRF24L01_register(0x11, 1); // data length Write_nRF24L01_register(0x01, 0x00); // CRC disable Write_nRF24L01_register(0x02, 0x07); // All RX channels Write_nRF24L01_register(0x04, 0x00); // Auto retry disable Write_nRF24L01_register(0x05, 0x02); // Radio channel Write_nRF24L01_register(0x06, 0x08); // Speed, power Write_nRF24L01_register(0x11, 0x01); // Channel 0 data length Write_nRF24L01_register(0x12, 0x01); // Channel 1 data length Write_nRF24L01_register(0x13, 0x01); // Channel 2 data length Write_nRF24L01_register(0x14, 0x01); // Channel 3 data length Write_nRF24L01_register(0x15, 0x01); // Channel 4 data length Write_nRF24L01_register(0x16, 0x01); // Channel 5 data length Write_nRF24L01_register(0x1D, 0x01); // Nack enable Write_nRF24L01_5b_register(0x0A, master_addr); // Channel 0 addr Write_nRF24L01_5b_register(0x0B, slave_addr); // Channel 1 addr Write_nRF24L01_5b_register(0x10, master_addr); // Remote addr Write_nRF24L01_register(0x00, 0b00000010); // config. Power up, mode: transmitter Delay_ms(2); Write_nRF24L01_register(0x00, 0b00000011); // config. Power up, mode: receiver CE_ON(); Delay_ms(4); }
  11. Всем привет Столкнулся со странным поведением модуля: когда посылаю ему байт, он генерирует прерывание на линии IRQ, в регистре STATUS (0x07) выставляет байт RX_DR (байт принят), но при этом все три байта RX_P_NO == 1 (ничего не принято), очередь FIFO пуста (при попытке считать модуль посылает в SPI 0x00), в регистре FIFO_STATUS (0x17) байт RX_EMPTY выставлен в единичку. То есть прерывание срабатывает, а самого байта как будто и не было. Никто с таким не сталкивался? В настройках отправка без подтверждения и без CRC
  12. Всем доброго времени суток. В небольшую организацию требуется инженер-электронщик. Задачи: ремонт блоков управления автопромышленности, участие в разработке различных устройств для автомобилей, написание ПО для микроконтроллеров и ПК. Требования к базовым навыкам небольшие: основы программирования, микроконтроллеров, базовый уровень знаний в радиоэлетронике. Должность предусматривает обучение. Однако люди, не имеющие опыта в радиоэлектронике совсем - не рассматриваются. Заработная плата - от 25 до 90 тр. Будет зависеть от производительности, навыков и загруженности. Работа в офисе, удаленная не рассматривается. Однако, если у кого-то будет желание предложить свою помощь в виде "удаленного разработчика" на будущее - просьба писать в личку, по телефону не звонить. Всем заранее спасибо за внимание Мой телефон: +78432971087. Ильдар.
  13. У меня опыта маловато, потому при любом косяке в первую очередь думаю, что это я коряво написал А код сгенерированный кубом, как вы могли заметить, стараюсь не использовать - только SPL либо напрямую с регистрами
  14. Так и я о том, с точки зрения языка код абсолютно рабочий Ну серьёзно, единственное отличие которое вижу - в while((*data)) {...} двойные скобки. Разве это что-то даёт? Всё остальное есть в примерах выше, я их даже не переписывал, а тупо копировал и проверял - не работало. Сейчас, увы, проверить не могу, ибо всё снёс и установил заново
  15. Код в точности как мой только читать сложнее) С моими версиями компилятора и среды такой код работает только если включить оптимизацию. С выключенной не работает
  16. Чтобы не плодить темы спрошу здесь. Здравствуйте) Подскажите пожалуйста, как в KiCAD сделать вырез в полигоне в форме текста? И вообще возможно ли это?
  17. У нас с вами разные представления о серьёзных проектах)
  18. Понятное дело Если уж говорить об альтернативах - на мой взгляд, прощё сесть и один раз настроить Eclipse. Хорошо настроенный он ничуть не уступает ни Keil ни IAR, а по многим параметрам и превосходит их ещё раз, давайте не будем устраивать спор на тему лучшей IDE
  19. Это первый коммерческий проект на F0, в основном использую F105 (там два модуля CAN) и присматриваюсь к F40х. 32кб хватит чтобы попробовать среду, для серьёзных проектов этого мало
  20. Keil стоит неоправданно дорого, а пользоваться пиратским софтом совесть не позволяет давайте не будем разводить дискуссии на тему какая среда лучше
  21. В общем получить ассемблерный листинг прямо из CoIDE мне не удалось, однако, сравнивая получаемые в результате компиляции бинарники (приложил) увидел кое-какие отличия. Я сравнивал варианты когда в функцию передаю массив (вариант 1) и строку (вариант 2). Единственным существенным отличием оказалась команда по адресу 0х724. В варианте с массивом там была команда C4 0D 00 08, а в варианте со строкой - D1 0D 00 08. Что это за команды и что они делают я не знаю, но если в мк залить прошивку с передачей в функцию строки, а потом с помощью ST-Link Utility изменить один этот байт - мк оживает, отладка работает нормально, "Hello World!" передаётся. Выходит, проблема в компиляторе (у меня версия 5.4 2016q2) или в самом кококсе (у меня версия 1.7.8). Возможно, само ядро микроконтроллера некорректно обрабатывает эту команду. Проект тоже приложил в архиве, если кому интересно - попробуйте. Вдруг у вас другая версия CoIDE при той же версии компилятора или наоборот. Файлы в приложении: В архиве сам проект Array.bin - файл, полученный при компиляции версии, где в функцию передаётся массив String.bin - файл, полученный при компиляции версии, где в функцию передаётся строка (непосредственно то, что выдаёт компилятор) String_ok.bin - файл String.bin, но в нём я вручную заменил команду D1 0D 00 08 на C4 0D 00 08. Каждый из этих файлов можно залить в мк и увидеть, что первый и третий работают, второй - нет. Так же легко увидеть, что второй и третий отличаются всего на один байт (как раз та команда). Юарт здесь настроен на скорость 19200 Напомню, проект для камня STM32F030F4P6 String_ok.bin Array.bin String.bin STM32F030_USART.rar
  22. Вот содержимое памяти когда передаю строку (Send_to_UART("Hello World!");): А вот содержимое памяти, когда передаю в функцию массив (char hello[] = {"Hello World!"}; Send_to_UART(hello);): Верхний вариант не работает, нижний - работает
  23. Спасибо) А есть способ это обойти средствами SPL или вручную?
  24. Просто насколько я понимаю, строка в Си - это тот же массив символов и когда я вот так передаю строку - передаётся указатель на первый элемент этого массива. Для строк определённой длины ((4xN)+3) работает же. Если дело в кратности длины строки четырём байтам - звучит убедительно Всё несколько иначе: он не успевает ничего передать просто потому что даже инициализацию не проходит. То есть я ставлю breakpoint на самом входе в main(), даже до инициализации, включаю отладку - и он зависает не дойдя до этой точки. И, повторюсь: если передать "Hello World!" - ничего не работает, а если "HelloWorld!" (то есть без пробела) - всё работает, а содержимое памяти мк отличается ровно на один байт - как раз этот пробел (но дело не именно в пробеле, если написать Hello_World! или HelloWWorld! - тоже не работает) В хале всё работает, но код ровно вдвое больше)
×
×
  • Создать...