Заголовок сообщения: Re: Прием данных по UART и их отображение на дисплее
Добавлено: Пн май 20, 2019 15:34:07
Встал на лапы
Карма: -2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 14, 2016 15:38:50 Сообщений: 149 Откуда: Питер
Рейтинг сообщения:0
Тут дело в том, что данная программа - не первая программа с народстрима, которая у меня не заработала сразу. Так, предыдущая программа, которая также связана с LCD-дисплеем и выводит на него буквы/цифры, потребовала доработки (изначально она не выводила более одной буквы/цифры) из-за того, что в авторском коде (в том числе на его видео, что выглядит очень странно) фактически не был включен сдвиг курсора (хотя и заявлено, что включен). Я серьезно. Согласен, что все эти вопросы корректнее задавать на народстриме, но там автор не любит такие вопросы.
А вот здесь тоже наверняка проблема решается одной строчкой).
Цифры - это цифры. Я отправляю 8-мизначные цифры, как делает автор народстрима
Именно поэтому я отправляю к книжкам и азам. Чтобы не было 8-мизначных цифр. Я так понимают, проект нужен чисто для обучения. Так вот, обучение без знания основ даже вредно.
Цифры - это цифры. Я отправляю 8-мизначные цифры, как делает автор народстрима
Именно поэтому я отправляю к книжкам и азам. Чтобы не было 8-мизначных цифр. Я так понимают, проект нужен чисто для обучения. Так вот, обучение без знания основ даже вредно.
Считайте так, но от моих знаний сделанный кем-то код, выдаваемый автором за яко бы рабочий, не заработает, если он таковым не является и если его не допиливать.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Тут дело в том, что данная программа - не первая программа с народстрима, которая у меня не заработала сразу.
Если третий муж бьет по морде, разве дело в муже?
kotarnold писал(а):
Считайте так, но от моих знаний сделанный кем-то код, выдаваемый автором за яко бы рабочий, не заработает
Имея знания, вы сможете найти ошибку (если она есть) и исправить. Без знаний вы этого не сделайте. Решать вам. Вопросы действительно элементарные. Как можно было не понять что LCD_String выводит строку на дисплей? Это же элементарно и при сомнении, можно посмотреть код функции чтобы это понять.
kotarnold писал(а):
А как мне попасть в обработчик прерываний? Я стою на коде
Код:
HAL_UART_Receive_IT(&huart4, (uint8_t*)&str, 8);
и отсылаю с компа в UART цифры, но в Атоллике ничего не происходит.
Почему вы решили что вызов функции HAL_UART_Receive_IT это обработчик прерывания? Я бы не рекомендовал на данном этапе использовать куб. Он только запутывает. Если не хочется работать с регистрами, используйте SPL. Отличие будет в том что код напишите сами, а не куб сгенерирует и вы будете знать где находится обработчик прерывания и как код работает.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
Заголовок сообщения: Re: Прием данных по UART и их отображение на дисплее
Добавлено: Вт май 21, 2019 12:58:36
Встал на лапы
Карма: -2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 14, 2016 15:38:50 Сообщений: 149 Откуда: Питер
Рейтинг сообщения:0
Таким образом я прихожу к выводу, что чужой код, выдаваемый за рабочий, не работает у меня не потому что в нем есть ошибки, не потому, что, возможно, я не учел чего-то в железе, а, оказывается, потому что я просто чего-то не знаю. Т.е. по логике большинства тут написавших, если я что-то знаю, то код будет работать, даже если я к нему не притронусь. А, если я чего-то не знаю, то код у меня не заработает, пусть он хоть сто раз рабочий и проверенный всеми и вся. Ну, что ж...
Адмиралы дорогие, вот чесслово, если вы действительно знаете, в чем косяк того авторского кода - то так и укажите на этот косяк. Если Вы готовы помочь, но за деньги и с гарантиями, то укажите сумму, поговорим, как культурные люди. Не хотите помочь человеку - не нужно писать тут то, что очевидно, ибо такие сообщения не несут пользы и решения проблемы. Коммент "Учи теорию" - это не помощь, это очевидная необходимость, такая же очевидная, как необходимость дышать воздухом в процессе изучения, так зачем писать очевидные вещи? Если вы не можете или не желаете помочь (даже возмездно), то почему вы не проходите мимо?
судя по тому огрызку кода, что был здесь приведен, приемник USART пишет в str, уменьшая счетчик байтов, и, как только счетчик обнулится, эта самая str выводитс на дисплей. кода, который получает из USART байт и помещает его в str показано не было - о чем можно говорить? предполагаю, что делается это по прерваниям, но в указанном ошметке кода ничего похожего на разрешение прерываний не увидел... делается оно где-то иди не делается вообще - не известно. обработчика прерываний тоже не видно. что такое huart2 и где оно определено, тоже загадка.
поэтому вам надо либо найти ответы на все вопросы самостоятельно, либо, как минимум, выложить весь код целиком, и просить спецов в нем разобраться.
_________________ если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе при взгляде на многих сверху ничего не меняется...
Заголовок сообщения: Re: Прием данных по UART и их отображение на дисплее
Добавлено: Вт май 21, 2019 13:42:01
Встал на лапы
Карма: -2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 14, 2016 15:38:50 Сообщений: 149 Откуда: Питер
Рейтинг сообщения:0
Я поступил, как автор того урока: в Кубе сгенерил код, разрешив прерывания в 4-ом уарте. Далее - все по авторскому видео за исключением того, что у меня LCD подключен на другие пины, но строки, набранные ручками в самом коде, отображает.
Заголовок сообщения: Re: Прием данных по UART и их отображение на дисплее
Добавлено: Вт май 21, 2019 13:49:41
Встал на лапы
Карма: -2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 14, 2016 15:38:50 Сообщений: 149 Откуда: Питер
Рейтинг сообщения:0
Это очень замечательно, что Вы процитировали народстрим, но я работаю именно с 4-ым UARTом, а не со вторым. Более того - у меня плата не совсем Дискавери, но рабочая и другие коды, в том числе - с этим четвертым уартом, на ней работают.
Последний раз редактировалось kotarnold Вт май 21, 2019 13:52:38, всего редактировалось 1 раз.
Таким образом я прихожу к выводу, что чужой код, выдаваемый за рабочий, не работает у меня не потому что в нем есть ошибки, не потому, что, возможно, я не учел чего-то в железе
Вы можете однозначно сказать что в коде есть ошибки? Если да, то где? Если нет, то либо в коде нет ошибок, либо у вас недостаточно знаний ЯП чтобы их обнаружить.
kotarnold писал(а):
Если Вы готовы помочь, но за деньги и с гарантиями, то укажите сумму, поговорим, как культурные люди.
С таким подходом как у вас только почасовая оплата и без гарантий, потому что нельзя гарантировать что вы сможете понять то чему вас будут пытаться обучить.
kotarnold писал(а):
Коммент "Учи теорию" - это не помощь, это очевидная необходимость
Тогда почему не учите? Если не в состоянии понять почему не работает учебный код и теорию учить не хотите, зачем вообще взялись за программирование?
kotarnold писал(а):
Могли бы Вы привести пример строки символов, который подойдет для обсуждаемой программы?
что такое huart2 и где оно определено, тоже загадка.
Прерывания находяться в отдельном файле сгенерированом кубом. Выше я писал что лучше отказаться от куба на этапе обучения поскольку он многое скрывает и не все очевидно.
ARV писал(а):
что такое huart2 и где оно определено, тоже загадка.
Заголовок сообщения: Re: Прием данных по UART и их отображение на дисплее
Добавлено: Вт май 21, 2019 13:54:56
Встал на лапы
Карма: -2
Рейтинг сообщений: 1
Зарегистрирован: Пн мар 14, 2016 15:38:50 Сообщений: 149 Откуда: Питер
Рейтинг сообщения:0
Да, Вы правы. Это я, после того, как в сотый раз переделал код, стер всё, что сам наделал, скопировал с сайта и, забыв подправить, написал сюда. UART4, конечно же.
Вы можете однозначно сказать что в коде есть ошибки? Если да, то где? Если нет, то либо в коде нет ошибок, либо у вас недостаточно знаний ЯП чтобы их обнаружить.
В коде есть ошибки, так как он не работает на заведомо рабочей плате.
С таким подходом как у вас только почасовая оплата и без гарантий, потому что нельзя гарантировать что вы сможете понять то чему вас будут пытаться обучить.
Я не прошу обучить, я прошу указать на конкретные ошибки в коде и на варианты их исправления.
В коде есть ошибки, так как он не работает на заведомо рабочей плате.
Повторюсь. Если утверждаете что в коде есть ошибки, укажите где они. Если не знаете, то в коде либо их нет или у вас нет знаний ЯП чтобы их обнаружить. Выводы делайте сами.
kotarnold писал(а):
Я не прошу обучить, я прошу указать на конкретные ошибки в коде и на варианты их исправления.
Сложно найти черную кошку в темной комнате, особенно если ее там нет... Не думали о том что в коде на сайте автора ошибок нет, а это вы их где-то допустили?
kotarnold писал(а):
О, тут всё просто: я считаю, что учебный код должен работать на заведомо рабочих платах.
Попробуйте запустить код ничего в нем не меняя и на той же плате что у автора. Наверняка он окажется рабочим.
kotarnold писал(а):
Спасибо, но я просил пример, а не теорию.
Пример строки в формате ASCII? Скопируйте с форума через буфер обмена любую строку и будет пример.
kotarnold писал(а):
Тогда почему код, сгенерированный точно также тем же кубом у автора народстрима работает, а у меня - нет?
Версия куба и библиотек точно такая же? Настройки проекта такие же как у автора примеров? Иначе вы могли допустить ошибку в конфигурации проекта или что-то не исправить в коде (про ошибку UART2 и UART4 выше написали) или столкнутся с различиями версий и т. д. Причин может быть много. Прежде чем утверждать что код на сайте нерабочий, нужно убедится что вы все правильно сделали.
Повторюсь. Если утверждаете что в коде есть ошибки, укажите где они. Если не знаете, то в коде либо их нет или у вас нет знаний ЯП чтобы их обнаружить. Выводы делайте сами.
Повторюсь, если бы ошибок не было, то всё бы работало.
Сложно найти черную кошку в темной комнате, особенно если ее там нет... Не думали о том что в коде на сайте автора ошибок нет, а это вы их где-то допустили?
Нет, потому что я следовал строго в соответствии с инструкциями в переносе на свой контроллер.
Версия куба и библиотек точно такая же? Настройки проекта такие же как у автора примеров? Иначе вы могли допустить ошибку в конфигурации проекта или что-то не исправить в коде (про ошибку UART2 и UART4 выше написали) или столкнутся с различиями версий и т. д. Причин может быть много. Прежде чем утверждать что код на сайте нерабочий, нужно убедится что вы все правильно сделали.
На основании того, что я сделал всё то же, что сделал автор, я предполагаю, что он кое-что скрыл. Как уже и оказалось в случае с процедурой вывода строки на дисплей из другого урока, о чем я писал ранее.
Сейчас этот форум просматривают: mab72 и гости: 22
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения