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

Видеокурс по AVR-микроконтроллерам для начинающих


Рекомендуемые сообщения

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Литиевые аккумуляторы EVE Energy и решения для управления перезаряжаемыми источниками тока (материалы вебинара)

Опубликованы материалы вебинара Компэл, посвященного литиевым аккумуляторам EVE Energy и решениям для управления перезаряжаемыми источниками тока.

На вебинаре мы представили информацию не только по линейкам аккумуляторной продукции EVE, но и по решениям для управления ею, что поможет рассмотреть эти ХИТ в качестве дополнительной альтернативы для уже выпускающихся изделий. Также рассмотрели нюансы работы с производителем и сервисы, предоставляемые Компэл по данной продукции. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

дорогой учитель, сенсей, будет ли описана работа с датчиком DS18B20? уж очень хочется пригвоздить его к 5110. все праздники сижу по крохам вникаю в информацию, мамка на улицу выгоняет, а я ещё мало чего понял. может есть библиотека для студии 6.2 ? спасибо.

Ссылка на комментарий
Поделиться на другие сайты

Данный курс - предоставил вам более чем достаточно данных для того что бы начать программировать для АВР.

Если по окончанию курса вы не смогли самостоятельно найти готовую библиотеку для DS18B20 и вывести значение -----......

Либо пройдите курс еще раз(выполняя домашние задания)

либо найдите другой учебный материал :)

коплю на мечту - Днепр К750

Ссылка на комментарий
Поделиться на другие сайты

Всем привет. Кто подскажет, почему при повторении примера из урока 5 компилятор ругается на int в условии if? Все работает если сделать так:

int main(void)

{

preset();

int i=0;

while(1)

{

if (i<=7)

{

PORTB = (1<<i);

_delay_ms(500); i++;

}

else

{PORTB = 0x00; i=0;}

}

}

Я понимаю, что надо брать учебник и читать, но у автора то все работает.

Ссылка на комментарий
Поделиться на другие сайты

не совсем понятно как у вас работает и как - нет!

напишите оба кода с указанием строки с ошибкой!

и пожалуйста - код запихните в тег кода - что бы красиво было

коплю на мечту - Днепр К750

Ссылка на комментарий
Поделиться на другие сайты

Всем приветик

подскажите пож.,в варианте когда все светодиоды расположены на

выводах одного порта все понятно .А как корректно присвоить светодиодам

от 0 до 7 в варианте когда они подключены не по порядку одного

порта,например:

#define SEG_A PD2 0

#define SEG_B PD6 1

#define SEG_C PB7 2

#define SEG_D PB2 3 и т.д

извиняюсь за "тугое" написание .

Ссылка на комментарий
Поделиться на другие сайты

Вы задаете вопросы, понятны только вам. Несколько раз читал ваш вопрос, и каждый раз представлял иную картину. Вы просто иллюзионист!

Ссылка на комментарий
Поделиться на другие сайты

извиняюсь за изложение,

ну можно ли одновременно присвоить и номер порта

и порядковый номер от 0 до 7.

с таким вариантом присвоения понятно ,внутри одного порта

#define PORT_IND PORTB

#define DDR_IND DDRB

#define SEG_A 0

#define SEG_B 1

#define SEG_C 2 и т.д.,

а мой печальный случай , см. выше

если светодиоды не в поле одного порта,как их привязать и к порту и

к последовательности от 0 до 7 .

Просто есть в железе плата,но светодиоды в ней впаяны в разных портах,

ну на край порежу плату.

еще раз сори-))

Ссылка на комментарий
Поделиться на другие сайты

А как это интересно одной и той же величине можно присвоить два разных значения? Можно сделать так

#define SEG_A  PD0

или так

#define SEG_A  0

В обоих случаях эта запись эквивалентна тому, что в коде вместо SEG_A будет проставляться 0 - номер бита порта, к которому подключен сегмент А. А уж какому конкретно порту принадлежит этот бит, это вы должны определять в своем коде при выводе на индикацию. Если сегменты индикатора принадлежат разным портам, то об этом нужно было думать раньше, на этапе проектирования схемы и печатки. Сейчас конечно это несколько усложнит код, но в принципе вполне преодолимо. Я бы из-за этого кромсать печатку не стал.

Ссылка на комментарий
Поделиться на другие сайты

ммм...если так уж умен,что делаешь здесь,а наверно случайно-)))

Не порите чушь. Вычислить остаток от деления 22 на 7 сможет любой пятиклашка в уме и без труда.
Ссылка на комментарий
Поделиться на другие сайты

Определить в одном макросе и порт и его номер возможно, но неочевидно. Надо либо хорошо знать особенности препроцессора Си, либо использовать чужое бездумно. Первый вариант, очевидно, предпочтителен.

#define SEG_A B,0
#define _set_seg(a, PORT##a |= (1<<
#define _clr_seg(a, PORT##a &=~(1<<
#define set_seg(x) _set_seg(x)
#define clr_seg(x) _clr_seg(x)

set_port(SEG_A);

Примерно так. На самом деле, стоит сделать более универсальные макросы, эти только для примера годятся. Проверил, компилируется, дизассемблерный листинг тоже похож на правду.

Изменено пользователем COKPOWEHEU

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

На самом деле ничего сложного нет, но надо ПОНИМАТЬ принцип работы препроцессора и его команды. В данном случае используется в основном ## - объединение строк. Конструкция PORTB |= (1<<x) / PORTB &=~(1<<x) должна быть и так знакома, благо стандартная.

Ругался на отсутствие форматирования исходного кода (включая отсутствие осмысленных комментариев и наличие неубранного после конфигуратора мусора) не менее 15 раз.

Часть моих наработок.

Ссылка на комментарий
Поделиться на другие сайты

]Не порите чушь. Вычислить остаток от деления 22 на 7 сможет любой пятиклашка в уме и без труда.

А я не понимаю как происходит действие такого вычисления. Я не могу найти даже информацию об этом. Не будем говорить как я учился в школе

Ссылка на комментарий
Поделиться на другие сайты

а что тут понимать, в МК где нет аппаратного деления просто вычитается 7 от 22 столько раз, пока результат не станет меньше 7. вот это и есть отстаток.

Ссылка на комментарий
Поделиться на другие сайты

А я не понимаю как происходит действие такого вычисления.

А причём тут как вычисляется ? Вы об этом не спрашивали.

Вы показали вычисление и поставили вопросы, значит спросили правильный ли ответ.

А вычисляется для всех по-разному. Как захотите, так и будет вычисляться.

у меня другие вопросы
Ну и молчали бы тогда, раз другие вопросы. Нех на мои посты отвечать.
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...