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

stepper88

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

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

  • Посещение

Репутация

0 Обычный

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

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

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

1 769 просмотров профиля
  1. Насчет фиксированной скорости - большое спасибо - настрою. DTR во время инициализации подаю нуль и не снимаю - по крайней мере, осциллографом там логическую единицу не увидели. Плюс отправлял команду AT+CSCLK? - вернула нуль. Но еще глянем. Насчет конденсаторов - еще раз внимательно посмотрю схему Посмотрел: решили, что это для часов реального времени и нам не понадобится или же всегда надо? Огромное спасибо за помощь P.S. А из-за чего может упасть уровень сигнала, измеряемый по AT+CSQ?
  2. Схема включения А вот насчет версии прошивки - можете просветить темного, как ее можно глянуть? Сам модем SIM800C S2-10688-Z1L1J - прошивку родную не меняли
  3. Добрый день! Прошу прощения за такое долго молчание - переделали плату со схемой сопряжения из даташита. В том числе - вместо преобразователя уровня (а был именно он) на PowerKey посадили транзистор. Модем завелся, отвечает на команды, но возникла такая проблема - последнее время не всегда приходит Call Ready - на двух сим-картах Мегафон и Билайн, причем раньше проходило нормально. С третьей Билайн приходит Call Ready, но уровень сигнала в ответе на команду AT+CSQ нулевой. Еще одна проблема - после примерно трех-пяти секунд перерыва модем перестает отвечать на команды даже эхо. При этом на запрос настроек спящего режима AT+CSCLK? выдает нуль. Это нормальное поведение модема или где-то еще можно посмотреть среди настроек? Порядок настройки: После передергивания PowerKey МК: AT\r SIM800: AT\r\n RDY +CFUN: 1 +CPIN: READY Call Ready (не всегда, в чем и проблема) SMS Ready (тоже не всегда, даже, если от модема удалось получить Call Ready) МК: AT+CMGD=1 SIM800: OK МК: AT+CPIN=? SIM800: +CPIN: READY MK: AT+CSQ Вот тут в случае получения нулевого результата (+CSQ: 0,0) через 2-3 с ожидания отправляю AT, на которую не всегда откликается и не всегда выдает эхо P.S. С помощью этой симки и этого модема удавалось подключаться к серверу через встроенный TCP/IP стек. Плату передвигали, но не хватали..
  4. Добрый день! Возникла такая проблема - достаточно давно не делали никаких устройств с GSM/GPRS-модулями, а тут понадобилось снова. Решили взять SIM800C, как дешевый и экономичный. В статьях писали о приемственности с более ранними SIM900, так что, решили использовать старую обвзязку, проверенную еще во времена Quectel M10 (тем более, что было указано напряжение питания модуля примерно такое же) Собрали схему. Написал программу инициализации: GPIOA->ODR |=0x0802; //Power on for GSM and set POWERKEY os_dly_wait(500); GPIOA->ODR &=~0x1000; //Reset RTS GPIOB->ODR &=~0x0080; //Reset DTR GPIOA->ODR &=~(1<<11); //Reset POWERKEY os_dly_wait(1000); GPIOA->ODR |=(1<<11); //Set POWERKEY while (GPIOB->IDR &0x20); send_string_buff3("AT\r"); Реализуется такой алгоритм: 1. Включаем питание модема и устанавливаем на входе PowerKey логическую единицу 2. Ждем 500 мс 3. Сбрасываем PowerKey, DTR и RTS в нуль 4. Ждем 1с 5. Устанавливаем PowerKey в единицу 6. Ждем установку логической единицы на линии Status (на схеме стоит буферный инвертор на транзисторе, поэтому ждем, когда на нужном входе будет нуль) 7. Отправляем команду "AT" Модем устанавливает на выходе Status логическую единицу, но не откликается на команду AT - от модуля не поступает никаких сигналов и UART не принимает никаких байтов - даже мусора. Пробовал различные скорости - более-менее стандартные 115200 и 9600, так 19200 - до кучи - ответа нет. Может ли это быть связано с тем, что на модуль подаются сигналы без делителей - 3,3В? Может быть, UART модуля пожгли? Манипуляции с RTS и DTR, доставшиеся в наследство со времен SIM300 убирал, но разницы не было. Для управления используется микроконтроллер STM32F151C6 Модем: SIM800C S2-10688-Z1L1J Заранее спасибо за ответы.
  5. 2alexvu - увы, родной схемы нету. Видел, что есть некий БСПТ-10, который преобразует данный сигнал в токовую петлю 4..20mA или 0..5mA, но, к своему стыду, не догадался поискать его схему - увидел только предложение о продаже, посмотрел характеристики и пошел искать по картинкам похожий датчик. Увы, не увидел. 2khach - то есть, получается, если мы для каждой обмотки надо сделать такой блочок, как показан на приведенном Вами рисунке? Дурацкий вопрос, а есть ли готовое решение в виде микросхемы-измерителя?
  6. В качестве крайней меры решили сделать так, если красивого электронного решения с индуктивным датчиком не найдется.
  7. Добрый вечер, господа! Недавно стали обладателями сервопривода МЭО с индуктивным датчиком положения вала. Хочется этот датчик запустить "малой кровью". Я так понял, что он состоит из двух обмоток с отводом от средины - один вращается, относительно другого. Схему из документации прилагаю. Сперва думал, что получится подключить микросхемку для СКВТ/Резольвьеров, но там везде на рисунках три обмотки - т.е. еще одна обмотка возбуждения. Возможно ли использование таких микросхем - той же AD2S1200 для такого датчика? Или же есть какие-то другие похожие? Блок преобразования угла в 4..20mA попадался, но он питается от 220В - в нашем случае не подойдет, так как хотим уйти от этого напряжения (в том числе и с заменой двигателя) в сторону постоянного. Потому бы хотел услышать совет - можно ли поставить какую-нибудь микросхемку, которая будет преобразовывать сигнал с датчика и, в идеале, отправлять угол поворота по последовательному интерфейсу. С уважением Шаронов Андрей
  8. Спасибо - просто друг в свое время заказывал - сейчас отдал "Делай регулятор" вот и думал, как с помощью него регулировать. Спасибо за совет :-)
  9. Здравствуйте, господа! Недавно у меня появилось оптореле SRR-25 DA. Решил с его помощью сделать регулятор (диммер). Внутри встроена схема обнаружения через нуль, но я не понимаю, как с ней работать. Регулировать мощность хотелось следующим способом - после обнаружения прохождения переменного напряжения через нуль, запускается таймер микроконтроллера и отмеряется задержка, после чего подается сигнал на отключение (фактически ШИМ-регулирование), но как получать сведения о прохождении через нуль от соответствующего блока в реле? P.S. Прошу прощения, что так сумбурно, просто никогда до этого не сталкивался с этой областью
  10. Спасибо! Получилось запустить обоими способами - оставил включение прерываний чере SVC - показалось, что более корректно, хотя не знаю. Но пока будет так.
  11. Очень похоже, но проверить советы смогу только в понедельник.
  12. STM32F103, Keil RTX и USB

    Здравствуйте, господа! Недавно сделали плату с микроконтроллером STM32F103, подключив к нему USB и несколько светодиодов. Попробовал на нем запустить немного видоизмененный пример HID от Keil MCBSTM32 - убрал работу с LCD, изменил выводы подключения светодиодов и вывод, к которому подключен транзистор, подтягивающий D+ к плюсу питания. Пример нормально заработал. Захотелось запустить его под RTX. Код, работающий без RTX: int main (void) { /* configure Push Buttons */ RCC->APB2ENR |= ((1 << 2)); /* enable GPIOA clock */ GPIOA->CRL &= ~0x000000F0; /* PA1 clear */ GPIOA->CRL |= 0x00000080; /* PA1 is Floating Input */ GPIOA->ODR |= 0x02; /* PA1 pull-up */ /* configure LEDs */ RCC->APB2ENR |= (1 << 4); /* enable clock for GPIOC */ GPIOC->CRH &= ~0x000FF000; /* PC11, PC12 clear */ GPIOC->CRH |= 0x00033000; /* PC11, PC12 is output */ USB_Init(); /* USB Initialization */ USB_Connect(__TRUE); /* USB Connect */ while (1); /* Loop forever */ } Код с использованием RTX: void init_task (void) { /* configure Push Buttons */ RCC->APB2ENR |= ((1UL << 2) | (1UL << 4)); /* enable GPIOA, GPIOC clock*/ GPIOA->CRL &= ~0x000000F0; /* PA.1 clear */ GPIOA->CRL |= 0x00000040; /* PA.1 is Floating Input */ /* configure LEDs */ RCC->APB2ENR |= (1 << 4); /* enable clock for GPIOC */ GPIOC->CRH &= ~0x000FF000; /* PC11, PC12 clear */ GPIOC->CRH |= 0x00033000; /* PC11, PC12 is output */ USB_Init(); /* USB Initialization */ USB_Connect(__TRUE); /* USB Connect */ while(1); } /*---------------------------------------------------------------------------- MAIN function *----------------------------------------------------------------------------*/ int main (void) { os_sys_init(init_task); } После перевода примера на RTX при настройке прерывания USB контроллера, программа вываливает в HardFault. Увеличение объема стека задачи или heap не помогло. Кто-нибудь решал такую проблему или проще просто использовать RL-USB? Заранее благодарен
  13. Здравствуйте! Имеется проект скомпилированный Verilog-проект под Xilinx ISE Web 12.1. Подскажите, как его можно экспортировать в формат EDIF? Или каким-то другим способом перенести в Altium Designer. Заранее благодарен! Андрей
  14. Буферы действительно разные, но охота, чтоб задача, которая ожидает RING, не мешала получить ответы на комманды А если с помощью мьютекса не пускать задачу, ожидающую RING, когда идет набор номера или прием смс нормальным будет решением?
  15. to megajohn А как у вас построенна эта обработка асинхронных сообщений? Просто у самого была отдельная задача, которая постоянно опрашивала кольцевой буфер приема на наличие заветных сообщений о звонке или смске. Но при этом возникают проблемы, когда нужно модему самому или позвонить, или отправить смс. Как сделать так, чтоб в этот момент или задача, следящая за RING или смс вообще не лезла в буфер, или же ждала, пока не будет нормально сделан звонок или отправлена смска?
×
×
  • Создать...