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

Вопросы от начинающих по МК


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

Не , это мной не задумывалось , а стырено . Но там в функции сохраняется регистр статусов , флаг разрешения прерываний просто возвращается вместе с регистром .

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

  • Ответов 8,9т
  • Создана
  • Последний ответ

Топ авторов темы

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

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

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

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

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

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

2 часа назад, DmitryS сказал:

создано виртуальное устройство в Протеусе 7.10

Отлаживать за вас проект чего-то лень... Но по-моему, что-то действительно  напутано в "упоре" в 255 при вычислении числа для OCR2. По вашей формуле переполнение получается при 223 с АЦП. А 223 и соответствует где-то 50 с чем-то градусам...

В

2 часа назад, DmitryS сказал:

if (v > 254) {v = 255;}

какие типы сравниваются? Может переполнение уже до этого сравнения?

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

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

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

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

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

13 минуты назад, Lexter сказал:

что за числа в регистрах при 51, 52

а они тут причем? у него данные АЦП в регистре ADCL увеличиваются только до 200 при 0,5в на входе,  при увеличении напряжения выше 0,5в в регистре остается значение 200. регистр ADCН вообще всегда равен 0.

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

7 часов назад, Lexter сказал:

какие типы сравниваются? Может переполнение уже до этого сравнения?

    

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

 

#define MIN_PWM 50  // вентиляторы должны всегда вращаться , значение соответствующее примерно 20% шим
     #define MIN_ADC 120  //минимальное значение AЦП , соответствующее 30 градусам
    
     unsigned int v = MIN_PWM;
     unsigned int temperature;

     temperature = ADC_GetBuf(); //читаем програмный буфер АЦП
    
     if (temperature < MIN_ADC) {temperature = MIN_ADC;}
        
     v = MIN_PWM+((temperature - MIN_ADC)*2);
    
     if (v > 254) {v = 255;}
            
     if (temperature < MIN_ADC ) {v = MIN_PWM;}
        
     OCR2 = (unsigned char)v;

 

 

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

Почему питание на AVCC не подается?

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

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

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

@COKPOWEHEU  , Спасибо !  Дело все было в не подключенном питании AVCC  в протеусе . Что то проморгал дурень старый . Но я сегодня вечером хотел собрать все в железе на макетке , там то я бы подключил питание по любому  . 

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

  • 2 недели спустя...
19 часов назад, snn_krs сказал:

...И есть делитель на 8 - CKDIV8...

Это только один из вариантов установки предделителя тактовой частоты (System Clock Prescaler) в регистре SLKPR, который никто не запрещает устанавливать программно в 1, 2, 4, 8, 16, 32, 64, 128 и 256.

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

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

Есть оболочки с ручным выбором частоты програмирования? Случайно выставил работу attiny2313 от внутреннего генератора на частоту 16 kHz (int RC 128 kHz + DIV8). Программа работает, но программатор (USBASP) не видит чип, джампер slow не помогает, я так понимаю нужно снизить скорость до 2-4 kHz , но как?

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

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

...программатор (USBASP) не видит чип, джампер slow не помогает, я так понимаю нужно снизить скорость до 2-4 kHz , но как?

"Пересесть" на другой программатор.

avrisp.jpg.41e427014be614611063fe1474e8f864.jpg

 

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

Эхх, опять програматор собирать, хотя может обойдусь каким нибудь fuse bit doctor' ом. Мне всегда свистка usbasp хватало, собирать очередной програматор...

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

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

Подскажите,пожалуйста.

Если я сделаю так 

uint32_t col=15;

for (uint8_t i=0  ;   i < col  ;  i++)

{

      const uint8_t index=(i*col)+7 ;

после каждого прохода (i=0, i=1, i=2 и тд) цикла,index будет увеличиваться(как я понимаю переинициализироваться  ) или пока цикл не закончится, index будет иметь значение (0*15)+7=7

Конечно я понимаю,что глупость спрашиваю,ибо тогда всегда будет значение индекса 7,но всё же для успокоения души прошу подсказки.

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

Ребят может кто поможет. Нашел схемку RGB контролера для внедрения в приборную панель автомобиля, вот и я решил её внедрить (исходники и схема в зипе). Траванув и собрав плату, оттестив её на RGB ленте, но не приняв во внимание имеющиеся ЗИП в процессе переделки столкнулся с проблемой. По 3 каналу в силу обстоятельств, мне нужно использовать имеющиеся у меня мини светодиоды с общим КАТОДОМ. Варианта в этом случае я так понимаю два, или поменять в прошивке 

  
if (tick < red_pwm_3)
    PORTC |= (1 << LED_RED_3);
  else
    PORTC &= ~(1 << LED_RED_3);

  if (tick < green_pwm_3)
    PORTC |= (1 << LED_GREEN_3);
  else
    PORTC &= ~(1 << LED_GREEN_3);

  if (tick < blue_pwm_3)
    PORTC |= (1 << LED_BLUE_3);
  else
    PORTC &= ~(1 << LED_BLUE_3);

на 

if (tick < red_pwm_3)
    PORTC &= ~(1 << LED_RED_3);
  else
    PORTC |= (1 << LED_RED_3);

  if (tick < green_pwm_3)
    PORTC &= ~(1 << LED_GREEN_3);
  else
    PORTC |= (1 << LED_GREEN_3);    

  if (tick < blue_pwm_3)
    PORTC &= ~(1 << LED_BLUE_3);
  else
     PORTC |= (1 << LED_BLUE_3);

естественно в место N - канального,  нужно поставить P- канальный полевик. Или же воспользоваться инвертором к примеру на биполярнике и полевике, что я тоже испробовал. Но в силу обстоятельств по крывож.. ости рук и крывезны мозга, умудрился спалить мегу пока пробовал инвертировать канал. В общем, с начала я не смог переделать прошивку ибо в AVR Studio 7 выдавал две ошибки @echo Building file: $< и #include "hsv_to_rgb.h" и вроде когда, что-то стало получаться, спалил выход меги в процессе экспериментирования с P-канальным полевиком (ибо протеус эмуляцию отказывается запускать)! В общем, испробовал такие вариации схема в PDF на 3 канал - верхняя правая это штатная, верхняя левая это я пробовал без изменения прошивки, а нижняя правая это для переделанной прошивки. Но чет я далее экспериментировать очку.. боюсь в общем, ибо МК по третьему каналу "испустил сизый дым". В общем выручайте, афтомобил без приборки, может кто соберёт прошивку и нарисует схему с правильным конечным ключом. Плизз. Выручайте парни.

rgb_atmega8_v1_2.rar

New Project.PDF

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

ответ на вопрос найдешь в этой теме http://forum.cxem.net/index.php?/topic/115588-555й-таймер-не-знаю-как-правильно-подключить-устройство/&tab=comments#comment-1356203

ЗЫ и прошивку оставь в покое

 

 

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

Всем день наидобрейший. Вопрос знатокам. Делаю небольшой проект на SSD1306. Заказал в китае c SPI интерфейсом.В инете нашел что его можно смоделировать в протеусе и вот это UG-2864HSWEG01 вроде как подходит. Так вот подключил в протеусе этот экранчик, заставку с начальными координатами выводит без нареканий, нот вот дальше одна каша. В железе все даже очень хорошо.Фото прилагаю. Ну и вопрос как это победить, всё таки в протеусе отлаживать программу удобнее. 

IMG_20180920_131241.jpg

2018-09-20_13-21-58.png

2018-09-20_13-20-30.png

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

2 часа назад, Demonrostov сказал:

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

Одна из возможных причин - несоответствие временной диаграммы управляющих сигналов даташиту на модуль. Реальное "железо" всегда имеет разброс параметров и некоторый запас, поэтому может работать и при небольших несоответствиях. А вот модель такого не допускает.

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

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

Странные какие то люди, в железе всё работает отлично, но жалуются на какой-то протеус... :wacko:
Да пусть он лесом идёт, если на нём ничего не работает...

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

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

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

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

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

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

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

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

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

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

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

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