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

Dmitrich

Участник
  • Публикаций

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

  • Посещение

Репутация

0 Обычный

Информация о Dmitrich

  • Звание
    Участник

Посетители профиля

1 374 просмотра профиля
  1. Проблема решена. Моя ошибка была в том, что я полагал, что задав адрес узла в регистре PKTCFG1D, я задал его для приёмника, и для передатчика. Это не так. Здесь адрес узла задаётся только для приёмника. При передаче адрес узла надо запихивать в FIFO.
  2. Добрый день! Пытаюсь сделать небольшой радио-линк на мс. TRC105. Частота 433.92MHz, модуляция FSK, битовая скорость 100кбит/сек. В потоковом режиме всё получается, все битики на выходе приёмника видны, приём хороший, без шума и дрожания фронтов. Но запустить пакетный режим не получается. Сетевой адрес распознаётся, а вот адрес узла - уже нет. Не говоря уже про CRC. Такое ощущение, что скремблер передатчика и приёмника не синхронизируются. Но выключение скремблера результат не изменяет. Переключение на манчестер - тоже. Отклнитесь, пожалуйста, прошедшие этот путь! С уважением, Ефанов Сергей.
  3. Lwip: netconn TCP app

    Цитата(DeNi @ Oct 28 2017, 14:08) А в чем проблема вызвать из другой задачи netconn_write? Функции netconn сделаны для работы в многозадачной среде. Не знаю ( ума не хватает). Я пытался. Неизменно получаю ошибку. Делал вот так: Кодvoid transfer_ip( char *rep, uint16_t len ) {     err = netconn_write(newconn, (const unsigned char*)rep, len, NETCONN_COPY);     if( err == ERR_OK )     {         printf("\rSend OK %d \r",len);     }     else     {         printf("\rSend BAD:%d\r", (int)err );     } } Ошибку всегда возвращает -6 (ERR_VAL). Очевидно, я неправильно это делаю. С уважением, Ефанов Сергей.
  4. Lwip: netconn TCP app

    А можно, и я свой вопросик втисну? Первый раз пытаюсь использовать Lwip, вот какую проблемку пытаюсь решить: Попробовал пример с эхо - всё хорошо работает: Код                while (1)                 {                     accept_err = netconn_accept(conn, &newconn);                     if (accept_err == ERR_OK)                     {                         while ((netconn_recv(newconn, &buf)) == ERR_OK)                         {                             do                             {                                 netbuf_data(buf, &data, &len);                                 netconn_write(newconn, data, len, NETCONN_COPY);                             } while (netbuf_next(buf) >= 0);                             netbuf_delete(buf);                         }                         netconn_close(newconn);                         netconn_delete(newconn);                     }                 } ( этот цикл крутится в отдельной задаче FreeRTOS) Теперь мне нужно отправить пакет через стек в в произвольный момент времени, то есть - в то время, когда выполняется netconn_recv. Как это можно сделать? С уважением, Ефанов Сергей
  5. USB HOST CDC from CubeMx

    Цитата(Genadi Zawidowski @ Jun 6 2017, 22:35) А вы уверены в этом EFM32? Где строчки вроде: ... Ни в чём я не уверен. Хотя, в том EFM32 я сам CDC "поднимал", и это именно CDC. И с компом оно работает. Но вот подключаю ещё одно устройство: USB Device Attached PID: 5h VID: 2912h Address (#1) assigned. Manufacturer : ATOL Group Product : ATOL USB device Serial Number : 00040100 Enumeration done. This device has only 1 configuration. Default configuration set. Switching to Interface (#0) Class : 2h SubClass : 2h Protocol : 1h DEBUG : Cannot Find the interface for Data Interface Class. Device not supporting CDC class.
  6. USB HOST CDC from CubeMx

    Цитата(Genadi Zawidowski @ Jun 6 2017, 20:55) Ftdl переходник ни разу не CDC, о чем вам любезно лог и сообщает. Для тестирования можете на любой плате от st поднять CDC и посмотреть на результат енумерации. Вот на плате "поднят" CDC: USB Device Attached PID: 3h VID: 10c4h Address (#1) assigned. Manufacturer : Silicon Laboratories Inc. Product : EFM32 USB CDC serial port device Serial Number : N/A Enumeration done. This device has only 1 configuration. Default configuration set. DEBUG : Cannot Find the interface for Communication Interface Class. Device not supporting CDC class. Вывод несколько иной, но суть та-же - не работает.... А вот, например. подключение флешки: USB Device Attached PID: 3e00h VID: 13feh Address (#1) assigned. Manufacturer : UFD 2.0 Product : Silicon-Power16G Serial Number : 12020813017E6C214004E780086 Enumeration done. This device has only 1 configuration. Default configuration set. Switching to Interface (#0) Class : 8h SubClass : 6h Protocol : 50h MSC class started. Number of supported LUN: 1 LUN #0: Inquiry Vendor : UFD 2.0 Inquiry Product : Silicon-Power16G Inquiry Version : PMAP MSC Device ready MSC Device capacity : 2619997696 Bytes Block number : 30283007 Block Size : 512
  7. USB HOST CDC from CubeMx

    Дано: микроконтроллер STM32F207VET. Нужно: подключить к нему USB-устройство CDC. Сделано: при помощи STM32CubeMx сгенерирован проект c HOST USB и поддержкой CDC. Итог: USB вроде-бы как работает. Но не совсем. Вот что выводит DEBUG при подключении переходника USB-COM: USB Device Attached PID: 6001h VID: 403h Address (#1) assigned. Manufacturer : FTDI Product : USB <-> Serial Serial Number : N/A Enumeration done. This device has only 1 configuration. Default configuration set. No registered class for this device. Для пробы, попробовал поддержать HID, тут всё хорошо: USB Device Attached PID: c00eh VID: 46dh Address (#1) assigned. Manufacturer : Logitech Product : USB-PS/2 Optical Mouse Serial Number : N/A Enumeration done. This device has only 1 configuration. Default configuration set. Switching to Interface (#0) Class : 3h SubClass : 1h Protocol : 2h Mouse device found! HID class started. Библиотека что-то ещё от меня хочет при подключении CDC. Как её "допилить", никто не подскажет? С уважением, Dmitrich.
  8. Здравствуйте, дорогие форумчане! Кто занимается микроконтроллерами STM8...??? Ищу программиста для написания программы под этот контроллер за разумные деньги... Суть технического задания в крадце в следующем: Микроконтролер должен вырабатывать на одном из выходов меандр определённой частоты. Один из выводов микроконтроллера организовывается как вход. При поступлении этого сигнала на входе, микроконтроллер должен зажечь светодиод... При проподании потушить... Важное условие: тестирование готового кода только на реальном микроконтроллере без всяких протеусов... Написание программы желательно на Си. Для профессионала работы на один день... Для заинтересовавшихся лиц прошу написать мне на почту: timyr333@fromru.com С указанием вашей цены.
  9. FAT and NAND FLASH

    Цитата(aaarrr @ Apr 6 2016, 22:40) Погуглите "flash translation layer". Спасибо, погуглил. Сижу, икаю...
  10. FAT and NAND FLASH

    Нужно сделать FAT на микросхеме NAND-FLASH. Писать можно только в предварительно стёртую область, а стереть можно минимум 256килобайт. Не могу сообразить, как это обойти. Но ведь существует-же решение! Только я его не знаю. Подскажите, пожалуйста! С уважением, Dmitrich.
  11. USB HID+MASS STORAGE

    Всё, тема закрыта. Исполнитель нашёлся, работа сделана. И - да, оно работает. С уважением, Dmitrich.
  12. USB HID+MASS STORAGE

    Нужна помощь в разработке. На процессоре STM32F103RCT требуется сделать USB HID + MASS STORAGE. Основываясь на примерах от ST мне удаётся сделать либо одно, либо другое. Вместе пока не получается. Заплачу 15000руб за работающий пример ( в исходниках ) USB композитного устройства HID + MASS STORAGE. efanov@lipetsk.ru skype: efanov48 С уважением, Dmitrich
  13. Цитата(Vladimir-B @ Jan 27 2016, 10:32) Извините меня, а в ваших изделиях, которые вы разрабатываете, производите, поддерживаете, все хорошо? Нет никаких допущений и компромиссов? Я могу делать 4 ошибки в слове "мама", с кем бы меня сравнить из мировых писателей? Цитата(CADiLO @ Jan 27 2016, 14:22) Безглючных изделий не бывает в принципе. Согласен, но тут "размер имеет значение". Цитата(CADiLO @ Jan 27 2016, 14:22) Если вы не нарвались на глюки, значит просто эта функция вам еще не нужна Вот уж не думал, что PCM настолько экзотичен, что можно выпустить изделие с напрочь неработающим интерфейсом. При этом в документации он описан на правах живого. Цитата(CADiLO @ Jan 27 2016, 14:22) Ну и как говорил Жеглов "Правопорядок в стране определяется не наличием воров, а умением властей их обезвреживать!"Если перефразировать, то получим что надежность определяется не редкостью прошивок, а оперативностью устранения выявленого и реакцией техподдержки. А вот тут - не соглашусь. Я имел неосторожность применить SIM300, потом SIM900 в своих изделиях. Сейчас я это время вспоминаю как 3 года непрерывного кошмара! Только и занимался тем, что "оперативно устранял". Потом перевёл те-же изделия на CINTERION, и забыл про них. Насколько знаю, у CINTRIONA так и не было новых прошивок.
  14. PCM в SIM800h

    Сразу скажу, что SIM800 даже в руках не держал. Но как раз пару дней назад сильно мучился с PCM (Quectel M66), поэтому тема меня затронула. Думаю, что PCM у SIM800 должен быть таким-же, - стандарт всё таки, ну или сильно похожим, так-что информация может оказаться полезной. Теперь, собственно, ответы на Ваши вопросы: 1). Модуль управляет сигналом PCMSYNC. Частота сигнала - 8кГц. 2). Он и есть "дополнительный бит синхросигнала". 3). PCMSYNC "лупит" при активном соединении после подачи команд для включения интерфейса PCM. Добавлю, что при частоте тактового сигнала 256кГц и PCMSYNC 8кГц, приходится 32 такта на фрейм. В одном фрейме передаются 2 канала по 16 бит - "левый" и "правый". Использоваться будет, естественно, только 1. То есть, Вы настраиваете свой SPI интерфейс в режим SLAVE с длиной посылки 16 бит, PSMSYNC заводите на вывод NSS процессора, по опустошению регистра передатчика пихаете туда очередной сэмпл, и должно всё получиться. Ну и ещё немножко поделюсь свои опытом - когда я у себя всё так сделал, не заработало ничего. Несколько дней потерял впустую. Потом перепрошил модуль на свежую версию, и случилось чудо. С уважением, Dmitrich.
  15. Не удаётся подать звук на вход модуля ( в режиме соединения GSM ) через цифровой интерфейс PCM. На команду "AT+QPCMON=1,0,1,0,0" модуль реагирует: выключает аналоговый аудио вход, появляются импульсы на выходах PCM. Мой процессор подаёт данные на вход PCM_IN в точности, как на картинке "Figure 31. Short Synchronization & Zero Padding Diagram" на странице 47 документа "Rev. M66_Hardware_Design_V1.1". А в ответ - тишина! Команду "AT+QPCMVOL=vol_pcm_in, vol_pcm_out" подавать тоже пробовал, с разными значениями. Разницы никакой. Вообще, перепробовал уже все варианты, которые в голову пришли, удивительно стабильно работает модуль: ни малейшего намёка на звук в канале! Помогите, люди добрые! Любым советом. Проблема решилась перепрошивкой модуля. Я разочарован. Дальше, будет, видимо, как с СИМкомом, по миллиону новых прошивок в год, бесконечное латание дыр. С уважением, Dmitrich.