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

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


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

8 часов назад, gogaze сказал:

Это кому?

Вам, конечно, кому же еще

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

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

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

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

18 часов назад, gogaze сказал:

Будет время - настрою таймер на 0,5 сек. и проверю, так сказать, с удвоенной частотой. Посмотрю на результат.

Проверил, получилось  то же самое.

Мир не без добрых людей!

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

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

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

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

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

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

Я бы для начинающих рекомендовал программу flowcode. Она позволяет быстро получить первые результаты, понять возможности МК, а затем уже можно делать вставки на Си или асемблере. 

уроки : https://www.youtube.com/c/RADIOSOFT1

ps: для профессионального использования рекомендовал бы 5 версию, а не более старшие.

 

 

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

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

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

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

И чем этот ужас для дошкольников лучше Ардуины? Для профессионального использования он подходит намного хуже, из-за нестандартности, ненаглядности и других недостатков "программирования мышкой".

Оно еще и неполноценное что ли? В смысле это не самостоятельный язык, а обертка для нормальных языков вроде Си и Асма?

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

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

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

Мне не интересно спорить с такой жесткой и неадекватной критикой. 

Цитата

Оно еще и неполноценное что ли? В смысле это не самостоятельный язык, а обертка для нормальных языков вроде Си и Асма?

оно позволяет делать вставки на языках для расширения возможностей.

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

То есть ситуации, когда своих возможностей не хватает, достаточно часты.

И все-таки, есть ли у этой программы хотя бы пара преимуществ перед Ардуиной?

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

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

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

Ее плюс - графический язык программирования. Пользователь рисует блок схему, программа "сама" компилирует код. Пользователь грубо говоря рисует алгоритм программы. Для начинающего считаю это очень полезно.

Лично для меня если бы не эта программа, то я за микроконтроллеры наверно так и не взялся бы, а теперь - использую ее уже лет 7, применяю вставки на Си по необходимости. И у меня почему то ардуино вызывает негативные эмоции, все там "готовенькое". в общем каждому на свой вкус.

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

Вот только графический язык программирования это не плюс, а минус. Он более громоздок - на экране помещается меньше информации. Его нельзя (в лучшем случае - крайне сложно) смотреть без специальной программы. Возюканье мышкой это меньшая скорость работы.

6 часов назад, andrewproffi сказал:

И у меня почему то ардуино вызывает негативные эмоции, все там "готовенькое".

Никто не мешает писать без ардуинских библиотек, на чистом С/С++. Собственно, сравнение с Ардуиной я выбрал именно из-за кучи встроенных библиотек, которые могут пригодится при прототипировании, но не в финальном коде. Точно также как и "этажерки" из плат расширения неплохи для отладки, но никуда не годятся в конечном изделии.

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

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

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

Здравствуйте .  Столкнулся вот с такой проблемой .  Не получается написать вот такой код:

Если на входе порта  “C” вывод 0 =1 , а на вывод 1=0, то  выход порта В0 = 1.

При однократном применении оператора  if  ни как не получается. По логике вроде все просто, но проблема из-за синтаксиса.  

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

snn_krs . Извиняюсь. Не до конца изложил свою мысль (торопился), но прочитав ваше сообщение похоже что-то прояснилось. Вечерком займусь.

зы. Изучаю Atmel studio 6.2.

 

 

Изменено пользователем RA3DTI
уточнение
Ссылка на комментарий
Поделиться на другие сайты

Вот что хочу получить от МК. Порт С0 и С1 назначены как входы, порт В0 и В1 назначены выходами.

В железе эта схема работает, собрана на D-тригерах.

AVR 1.png

AVR 2.png

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

int main(void)
{
DDRB |= (1<<PB0);
PORTC |= (1<<PC0)|(1<<PC1);// или закоментируем и внешн. резисторами к земле
	
    while(1)
    {
		if(PINC&(1<<PC0) && !(PINC&(1<<PC1))){PORTB |= (1<<PB0);}//если РС0 лог 1 и РС1 НЕ лог 1
	//	if((PINC & 0x03 ) == 0x01 ){PORTB |= (1<<PB0);}// или так, но выполняется дольше
		else{PORTB &=~(1<<PB0);}
    }
}

 

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

Berg, спасибо за ответ. Вечером просимулирую.  Строчка:  "if((PINC & 0x03 ) == 0x01 ){PORTB |= (1<<PB0);}  else{PORTB &=~(1<<PB0);}"  вполне понятна, как сам не додумался, видимо маловато опыта. Предыдущая строка непонятна, особенно ЭТО   " && !" , но интересно!  Похоже надо более тщательно изучать битовые операции.

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

7 минут назад, RA3DTI сказал:

Предыдущая строка непонятна, особенно ЭТО   " && !" , но интересно!  Похоже надо более тщательно изучать битовые операции.

И не только битовые, но и логические, потому как && ! не битовые операции.

Если забанить всех, кто набрался смелости думать независимо, здорово будет на форуме - как на кладбище: тишина, птички поют...

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

В 27 Декабрь 2017 г. в 21:03, RA3DTI сказал:

Ну почти получилось

судя по картинке нихреначего  не получилось :)

Скрытый текст

int main(void)
{unsigned char 	tempPIN;
DDRB |= (1<<PB0);
PORTC |= (1<<PC0)|(1<<PC1);// или закоментируем и внешн. резисторами к зем
  tempPIN=PINC&((1<<PC0)|(1<<PC1));// ;
  tempPIN<<=2;
 while(1)
  {
   tempPIN |=PINC&((1<<PC0)|(1<<PC1));//
    switch (tempPIN) 
    {
     case 0b0001:
       PORTB &=~(1<<PB0);              
       PORTB |= (1<<PB1);
       break;
     case 0b0010:
       PORTB &=~(1<<PB1);
       PORTB |= (1<<PB0);
       break;            
     case 0b0101:
     case 0b1010:
       break;  
     default:
       PORTB &=~((1<<PB1)|(1<<PB0));
     break;
    }
   tempPIN<<=2;
   tempPIN&=0x0F;    
  }

}

 

 

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

IMXO,  Спасибо за код. Заработало. Код тупо скопировал с незначительными добавлениями, но буду детально разбираться с каждой строчкой.

Screenshot_4.thumb.png.f7039e58df22c6b610f75433606e5208.png

Screenshot_5.thumb.png.a67d00e148d37e1660838dfddf17949c.png

Пока что на дискретой логике схемы мне делать намного проще.

С Новым Годом.:D

 

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

1 час назад, IMXO сказал:

и как это вы реализовали на логике?

Вот фрагмент схемы, который будет реализован на МК. Собран на КМОП (HC4013 (К561ТМ2)). на ТТЛ обвязка другая.

Чувствительность на изменение фазы зависит от быстродействия тригеров. Планируется еще загнать пару примитивных модулей в МК.

Вообще планирую всю логику собирать на МК. Ну и аналоговую часть по возможности.

Screenshot_6.png

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

IMXO. Разработанная мной схема (громко сказано:)) в составе устройства, называемого  - пинпоентер, добросовестно отработала в полях и лесах три сезона. В прошедшем сезоне был потерян где-то в лесу. Фазовый дискриминатор (так я его называю) был просимулирован в Multisim 10.1, потом перенесен на железо, где отлично себя зарекомендовал.  Назначение входов - условно. На картинке от 26. 12. 2017. реальные осцилограммы немного подредактированные.

P.S. На чем собрана схема на вашей картинке?

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

  • 3 недели спустя...

Уважаемые читатели темы по видеоурокам, "чайники" и гуру! Неоднократно перечитал страницы 71-77 и добросовестно пытался разобраться с библиотеками 5110.
Но не все получилось и не все понятно (наверное масла в голове мало). Поскольку венцом этих видеоуроков является создание вольтметра,
 амперметра и термометра, я решил обратится с огромной просьбой к создателям улучшенных версий библиотек  COKPOWEHEU и  Alex. 
 А именно: какие версии они считают  самыми подходящими для использования. Дабы не тратить драгоценное время COKPOWEHEU и  Alex,
 на основе библиотеки Alex используя  самую тяжелую функцию float я склепал "тестилку" для библиотек. Так же нарисовал
 в Proteus (8.6 SP2)схему.
Ну и самое главное: УВАЖАЕМЫЕ COKPOWEHEU и  Alex! Не сочтите за труд, переделайте то, что я наваял, с использованием наиболее подходящих
на Ваш взгляд библиотек. Для программистов вашего уровня это дело 15-ти минут, а для "чайников" типа меня будет огромная польза.
P.S. Обратите внимание, что происходит при достижении нижнего потенциометра нулевой отметки. 

Alex.rar

В 25.12.2017 в 20:17, COKPOWEHEU сказал:

То есть ситуации, когда своих возможностей не хватает, достаточно часты.

 

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

Мир не без добрых людей!

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

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

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

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

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

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

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

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

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

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

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

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