А разве не так? (поправьте, если что, я не разбираюсь). Если нагрузка в 100w подключена к напряжению 10v, то будет потреблять 10a, а если к 12, то 8.3. Иначе подключив питание 18v или 38v ток питания усилителя будет одинаков?
Добрый день всем. Не корректно работает парсер строк. Кто сталкивался с подобной задачей - подскажите пожалуйста.
Здесь я принимаю данные:
static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len)
{
/* USER CODE BEGIN 6 */
strncpy(data, (char*)Buf, *Len);
USBD_CDC_ReceivePacket(&hUsbDeviceFS);
flags=1;
return (USBD_OK);
/* USER CODE END 6 */
}
А здесь их уже пытаюсь парсить:
while(1)
{
if(flags)
{
LED_ON;
if(strstr(data,"ON_WRK"))
{
CDC_Transmit_FS((uint8_t*)at_okk, strlen((char*)at_okk));
Usart1_Send_Data((char*)at_okk, strlen((char*)at_okk));
}
else if(strstr(data,"OFF_WRK"))
{
CDC_Transmit_FS((uint8_t*)at_okk, strlen((char*)at_okk));
Usart1_Send_Data((char*)at_okk, strlen((char*)at_okk));
}
}
}
Так вот проблема в том что данные из колбека как-то странно копируются в массив. При парсинге , всегда не находится совпадение в строке.
Пробовал всевозможные варианты strcmp(), strstr(), и самописные - ничего не работает...
Как правильно использовать колбек?
static int8_t CDC_Receive_FS(uint8_t* Buf, uint32_t *Len)
Рекомендуемые сообщения