Azerhud Опубликовано 26 февраля, 2018 Поделиться Опубликовано 26 февраля, 2018 Здравствуйте уважаемые. Помогите пожалуйста. Необходимо считать символы из регистра SPDR передаваемые с одного МК в другой через интерфейс SPI и сравнить с имевшейся строкой на соответствие. Делаю так, ISR(SPI_STC_vect) { char str1[6]; *str1 = SPDR; char str2[6] = "ABC"; //Образец строки для сравнения if (strncmp (str1, str2,6)==0) //Если strncmp выдаст ноль { PORTC=0xFF; // то включаем светодиоды } else { PORTC=0x00; //иначе светодиоды выключены } return; } но не получается. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Alex Опубликовано 26 февраля, 2018 Поделиться Опубликовано 26 февраля, 2018 А что это за регистр такой, в котором целая строка вмещается ? 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Реле, вентиляторы, корпуса, разъемы, а так же любые электронные компоненты в нашем каталоге! Бесплатная доставка + 15% кэшбэк + скидки!Перейти на сайт ТМ Электроникс Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849
ruhi Опубликовано 26 февраля, 2018 Поделиться Опубликовано 26 февраля, 2018 (изменено) 1 час назад, Azerhud сказал: *str1 = SPDR; вы читаете и сохраняете один символ здесь, а вам надо дождаться и сохранить 6-символов что бы так сравнить строки: if (strncmp (str1, str2,6)==0) а глядя сюда: char str2[6] = "ABC"; и это не будет работать, потому что здесь заданы только 3-символа или 4-ре элемента массива с чем будут сравниваться остальные непонятно! Изменено 26 февраля, 2018 пользователем ruhi дописал 0 Можно сделать все! Но чем больше можно, тем больше нельзя! Ссылка на комментарий Поделиться на другие сайты Поделиться
Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Azerhud Опубликовано 26 февраля, 2018 Автор Поделиться Опубликовано 26 февраля, 2018 1 час назад, ruhi сказал: вы читаете и сохраняете один символ здесь, а вам надо дождаться и сохранить 6-символов что бы так сравнить строки: if (strncmp (str1, str2,6)==0) а глядя сюда: char str2[6] = "ABC"; и это не будет работать, потому что здесь заданы только 3-символа или 4-ре элемента массива с чем будут сравниваться остальные непонятно! Вот и не могу понять как правильно сделать что б мне прочитать и сравнить то что пришло с образцом 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке. Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
dosikus Опубликовано 27 февраля, 2018 Поделиться Опубликовано 27 февраля, 2018 Очевидно же - инкрементировать указатель на буфер в каждой итерации, контролируя выходы за предел . При достижении необходимой длины посылки - проверять на содержимое. Как вариант маркер конца передачи. Одно но , на авр это пошло и уныло ... 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Литиевые батарейки и аккумуляторы от мирового лидера EVE в КомпэлКомпания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>> Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161
Azerhud Опубликовано 27 февраля, 2018 Автор Поделиться Опубликовано 27 февраля, 2018 5 часов назад, dosikus сказал: Очевидно же - инкрементировать указатель на буфер в каждой итерации, контролируя выходы за предел . При достижении необходимой длины посылки - проверять на содержимое. Как вариант маркер конца передачи. Одно но , на авр это пошло и уныло ... Спасибо за помощь. Пойду читать про строки, разбираться что такое статический буфер, и учить сначала работать с интерфейсом. 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.