Jump to content

    

man1

Участник
  • Content Count

    67
  • Joined

  • Last visited

Community Reputation

0 Обычный

About man1

  • Rank
    Участник

Recent Profile Visitors

2024 profile views
  1. Он же под винду, мне нужно под Андройд
  2. Господа , подскажите плз. Идея в том чтобы мозги брать от андройда , и циплять к ним управление силовой частью через USB. Я глянул оказываетяс есть TVbox ценой в 30$ c вайфай , HDMI, USB, и частотой в гигагерц. Я за такую цену с аналогичными хар-ми девайс никогда не сделаю, осталось только писать проги под андройд и прицепить к нему простой контроллер для управления периферией. Для этого и понадобился этот чип переходник. Давайте, пожалуйста, темам краткий и понятный заголовок. Всё остальное - в сообщении. Модератор.
  3. Спасибо по мойму это то что надо, break я пошлю как вы посоветовали, а как быть с высоким уровнем после break? Заработало я убрал запрет и разрешение UART т.е. эту строку USART_Init(USART1, &USART_InitStructure); USART_Cmd(USART1, DISABLE); и эту USART_Init(USART1, &USART_InitStructure); USART_Cmd(USART1, ENABLE); И стало передаваться и break и MaB и сами байты
  4. Пин работает , а UART нет. Процессор STM32f100 на плате Discovery. Уберу Enable Disable попробую.
  5. поставили задачу необходимо задействовать ногу PA9, (на ней висит TX USART1) в двух вариантах, это обычный GPIO сконфигурированный на выход и выход UART. Сначало я должен ногу PA9 опустить в низкий уровень на 200us, потом поднять до единицы на 100us, а дальше посылать через TX данные по USART, и это все в цикле. По отдельности у меня все работает нога управляется , по UART передается, но когда пытаюсь совместить , т.е. сначало нога сконфигурирована как GPIO, а потом как UART, то не работает. Вот инициализация UART вызывается один раз перед вызовом процедуры arraysend(); RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitTypeDef gpio; GPIO_StructInit(&gpio); // TX: выход push-pull // gpio.GPIO_Mode = GPIO_Mode_AF_PP; gpio.GPIO_Pin = GPIO_Pin_9; GPIO_Init(GPIOA, &gpio); // RX: высокоимпендансный вход gpio.GPIO_Mode = GPIO_Mode_IN_FLOATING; gpio.GPIO_Pin = GPIO_Pin_10; GPIO_Init(GPIOA, &gpio); RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE); USART_InitTypeDef USART_InitStructure; // Параметры по умолчанию: 9600 бод, 8 бит данных, 1 стоп-бит //--------------------------------------- USART_InitStructure.USART_BaudRate = 250000; USART_InitStructure.USART_WordLength = USART_WordLength_8b; USART_InitStructure.USART_StopBits = USART_StopBits_1; USART_InitStructure.USART_Parity = USART_Parity_No ; USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None; USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //---------------------------------------- USART_Init(USART1, &USART_InitStructure); USART_Cmd(USART1, ENABLE); Теперь процедура которая вызывается переодически в цикле сначало дрыгает ногой потом шлет 50 байт по UART void arraysend (void) {//0 unsigned int i,d; unsigned char startcode; //unsigned char temp; GPIO_InitTypeDef gpio; USART_InitTypeDef USART_InitStructure; amount_channels=50; startcode=0; //-----запретил UART---------- USART_Init(USART1, &USART_InitStructure); USART_Cmd(USART1, DISABLE); // дрыгаю ногой PA9 перед посылкой по UART //----Cконфигурировал пин PA9 как GPIO------------------ gpio.GPIO_Pin = (GPIO_Pin_9 );// LED gpio.GPIO_Speed = GPIO_Speed_50MHz; gpio.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_Init( GPIOA, &gpio); GPIO_ResetBits( GPIOA, GPIO_Pin_9); delay(4); //низкий уровень 200us GPIO_SetBits( GPIOA, GPIO_Pin_9); delay(1); //высокий уровень 100us //--------------------------------------------- // переконфигурировал ногу на посылку по UART // TX: выход push-pull // gpio.GPIO_Mode = GPIO_Mode_AF_PP; gpio.GPIO_Pin = GPIO_Pin_9; GPIO_Init(GPIOA, &gpio); //--------------Разрешил UART------------------------ USART_Init(USART1, &USART_InitStructure); USART_Cmd(USART1, ENABLE); //---------------------------------------------- // -----------Сама посылка по UART------------------ putchar_UART1(startcode); for (i=0; i<amount_channels; i++) //+2 becouse +curtime, +curwait {//2 putchar_UART1(DATA_BUFFER_SEND[i]); }//2 }//end regime 1 Проблема в том что не хочет работать, по отдельности все работает GPIO, UART, а когда приходится переконфигурировать ногу PA9 , то на GPIO , то на UART ,тогда не работает. В чем может быть причина?
  6. Добрый день , посоветуйте плз импульсный LED драйвер со следующими хар-ми 1). Ток до 2 А , возможно внешний мосфет. 2). Возможность параллельного включения драйверов. 3). Возможность диммирования ШИМ от 2 кГц 4). Напряжение питания от 7.5 до 50В 5). минимум обвески и ног у драйвера
  7. Спасибо всем ответившим! дошли руки до тестирования, протестировал схему в первом сообщении и в 7. Тестирование проводил при помощи сварочного аппарата постоянного тока . Кнопка на проводе длиной 30м, провод свернут в бухту. Также провод к которому подсоединен сварочный электрод свернут в бухту , длина провода примерно 10м толщина с указательный палец. Одну бухту провода вложил в другую и начал сваривать на максимальной мощности , сбоев в работе кнопки не заметил , никаких ложных срабатываний, обои схемы работают нормально. Посоветуйте как еще можно протестировать?
  8. Не совсем понял кнопка key_1 и key_2 замыкаются на GND?
  9. Да , только у меня значения параметров переменные т.е имя ChValues , а параметры 128,64,32,255 в процессе работы программы считаются
  10. Добрый день подскажите плз как можно в СИ , а конкретно IAR ARM 6.30 вывести в UART вот такую строку? {"Name": "001","ChValues": [128,64,32,255],"OnOff": 1}
  11. У меня к кнопке питание тянуть нет возможности , вся помехозащищенная часть должна быть со стороны устройства на плате. Провода уже все проложены. На расстоянии ~100м только два провода которые можно замыкать. За схему большое спасибо!
  12. В каком режиме планируете работу wi-fi модулей infrastructure,ad-hoc, limited AP ? Их IP вручную будете прописывать? точку доступа планируете использовать?
  13. Спасибо за ваши мысли. Идея такая управление через android , девайсом с модулем wizfi220 , через точку доступа. Причем IP адреса раздает точка доступа. Если жеско прописывать IP в телефоне или девайсе это неудобно. поэтому и был придуман протокол общения через широковещательный пакет UDP , из которого потом можно вытащить IP нужного девайса идентифицировав его по командам. При подключение девайс шлет один бродкаст пакет с индентификатором и мобильник получая этот пакет знает что подключилось новое устройство и уже в своем меню отображает его и знает его IP вытаскивая и пакета , мобильник это сделает легко. Далее мобильник шлет уже на известный ему IP модуля сообщения , типа ОК. Таким образом модуль может узнать IP телефона. Как вытаскивать IP из пакета пришедшего на модуль я не могу понять. А ему бы тоже хорошо знать IP телефона чтобы в следующий раз слать пакет на IP телефона а не бродкаст.
  14. Идея в том чтобы клиент не мучился с настройками точки доступа. Включили модуль он получил IP от точки, послал на широковещательный IP команду, все устройства в сети знают что появился новый и к нему обращаются по его IP который вытаскивают из его широковещательной посылки. Остальные устройства не знают какой у девайса мак. идея в этом.
  15. Да wizfi220 поддерживает DHCP , а мой контроллер по UART связывается с этим модулем и может посылать ему команды. IP адреса я получил от точки доступа без проблем , мне нужно чтобы комп знал ip адрес модуля , а модуль IP адрес приемника. Когда руками это прописываю то все нормально, а когда автоматически , то я не знаю как мне определить эти адреса?