Например TDA7294

Форум РадиоКот • Просмотр темы - Нескольно простых вопросов о программировании AVR на Си.
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт мар 28, 2024 11:18:30

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 1459 ]     ... , , , 52, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Чт июн 04, 2020 13:46:17 
Поставщик валерьянки для Кота

Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1978
Рейтинг сообщения: 0
Yarikkasl, смотрите прошлый ответ. Если в одном байте вам можно сразу посылать несколько бит команд, то можно делать так, как я написал выше. Но всё зависит от протокола - можно ли там сразу в одном байте посылать несколько разных битов команд. Или же как-то пакетно, или вообще по-байтно запрашивать. Всё зависит от отвечающего ус-ва и его протокола.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Чт июн 04, 2020 13:49:54 
Первый раз сказал Мяу!

Зарегистрирован: Чт май 23, 2019 07:59:45
Сообщений: 24
Откуда: Екатеринбург
Рейтинг сообщения: 0
NStorm, понял понял, будут пытаться дальше спасибо!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Сб авг 01, 2020 18:53:32 
Открыл глаза

Зарегистрирован: Пт май 29, 2009 09:38:45
Сообщений: 41
Рейтинг сообщения: 0
Приветствую!
В статье непонятно чем руководствовался человек чтобы занести данные в регистр в дополнительном коде (-128; +127)
В функции
Код:
void setAgingOffset(int offset)
{
    if (offset < 0) offset += 256;
 
    Wire.beginTransmission(DS3232_I2C_ADDRESS);
    Wire.write(0x10);
    Wire.write(offset);
    Wire.endTransmission();
}

зачем прибавлять 256 если переменная offset (как и все прочие) уже и так представлена в дополнительном коде (проверено в симуляторе Atmel Studio)
От прибавления 256 младший байт (который и пойдет в регистр) битовое представление не меняется. Смысл этого не понятен, хочется разобраться

Если сделать так
Код:
void setAgingOffset(char offset)
{
    Wire.beginTransmission(DS3232_I2C_ADDRESS);
    Wire.write(0x10);
    Wire.write(offset);
    Wire.endTransmission();
}

то результат тот-же (если например отправляем десятичное (-128) offset будет 0x80 или 0b10000000 т.е. что и требуется)


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Ср авг 19, 2020 23:43:26 
Открыл глаза
Аватар пользователя

Зарегистрирован: Чт июл 23, 2020 20:59:01
Сообщений: 40
Откуда: СевКавТВ
Рейтинг сообщения: 0
Скажите, была ли тема про эффекты анимации на семисегментном LED индикаторе?


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Чт авг 27, 2020 13:29:48 
Первый раз сказал Мяу!

Зарегистрирован: Чт май 23, 2019 07:59:45
Сообщений: 24
Откуда: Екатеринбург
Рейтинг сообщения: 0
Здравствуйте! Создал проект опроса матричной клавиатуры, все прекрасно компилируется, но вот не задача, в протеусе программа как то странно себя ведет: зависает нажимаю на кнопки а она реагрирует будто я нажал на другую кнопку, я понимаю если не работает. Вобщем что то я застрял. Про прерывания читал, но реализовал так как смог

Добавлено after 3 hours 44 minutes 4 seconds:
Добавление диода на 56 ноге (pf6) вопрос решило, но если я правильно понимаю то все должно работать и без диодов


Вложения:
Proteus.rar [30.73 KiB]
Скачиваний: 242
Новый документ(10).txt [1.83 KiB]
Скачиваний: 241
Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Пт сен 11, 2020 23:47:28 
Потрогал лапой паяльник

Зарегистрирован: Ср янв 26, 2011 17:00:30
Сообщений: 396
Рейтинг сообщения: 0
Вопрос:
Нужно чтобы после выполнения процедуры вызваной внешним прерыванием основная программа выполнялась с начала, а не с места где ее прервали. Это можно как-то реализовать? Или только общим сбросом ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Сб сен 12, 2020 02:02:32 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1382
Рейтинг сообщения: 0
Как вариант, включить watchdog, в прерывании уйти в глухой цикл. Но, само решение не ахти.
Когда задаёте подобные вопросы, указывайте, что за устройство, что выполняет программа.
Думаю, что ответ на ваш вопрос - это конечный автомат.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Сб сен 12, 2020 09:03:17 
Держит паяльник хвостом

Карма: 10
Рейтинг сообщений: 99
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 934
Рейтинг сообщения: 0
Или рестартонуть с 0 в конце прерывания. В зависимости от того что хотите получить в итоге.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Сб сен 12, 2020 09:47:39 
Собутыльник Кота
Аватар пользователя

Карма: 29
Рейтинг сообщений: 645
Зарегистрирован: Сб май 14, 2011 21:16:04
Сообщений: 2687
Откуда: г. Чайковский
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
В стеке исправить адрес возврата ...

_________________
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Сб сен 12, 2020 10:21:26 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1382
Рейтинг сообщения: 0
Весь вопрос в том, что на куа такой метод? Я тоже такой херней страдал поначалу. Вернуться в начало, как у ТС, либо уйти куда мне надо.
Это говорит о том, что человек не имеет понятия, что он хочет сделать. Также не имеет понятия о реакции системы. Организации программ. Это болезнь начинающих. Быстрее, попроще. Хотя на самом деле, времени вагон и маленькая тележка. Как и способов решить вопрос ТС другими методами.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Вт окт 20, 2020 16:27:09 
Прорезались зубы

Зарегистрирован: Чт май 23, 2013 18:31:58
Сообщений: 201
Рейтинг сообщения: 0
Добрый день! Возможно ли что сгорел пин атмеги8? В цикле отправлял с юарта в м/с max485 один символ, около мин 10. После пелетел шум, и иефроглифы ascii. Частота 8МГц. max485 перегревался, стаб lm7805 тоже.

while(1){
USART_Transmit('R');
_delay_us(100);
}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Вт окт 20, 2020 16:34:31 
Родился
Аватар пользователя

Зарегистрирован: Чт авг 27, 2020 13:15:49
Сообщений: 16
Рейтинг сообщения: 0
Если max485 греется, так может быть она то и сдохла, а не мега8.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Вт окт 20, 2020 16:42:53 
Прорезались зубы

Зарегистрирован: Чт май 23, 2013 18:31:58
Сообщений: 201
Рейтинг сообщения: 0
max485 уже поменял 2 штуки, потом лог анализатором посмотрел с tx шум летел


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Вт окт 20, 2020 16:48:14 
Родился
Аватар пользователя

Зарегистрирован: Чт авг 27, 2020 13:15:49
Сообщений: 16
Рейтинг сообщения: 0
Ну значит только заменой меги8 можно понять где проблема.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Вт окт 20, 2020 16:54:36 
Прорезались зубы

Зарегистрирован: Чт май 23, 2013 18:31:58
Сообщений: 201
Рейтинг сообщения: 0
Ну значит только заменой меги8 можно понять где проблема.

Все разобрался, сопля была возле tx на дорожку 5 вольт, 3 часа ушло на поиски ((


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Вт окт 20, 2020 17:07:37 
Это не хвост, это антенна

Карма: 4
Рейтинг сообщений: 141
Зарегистрирован: Ср июн 25, 2008 15:19:44
Сообщений: 1382
Рейтинг сообщения: 1
Бывает. Есть два типа ошибок. Программный. Аппаратный. Опыт - сын ошибок трудных....


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Ср янв 27, 2021 23:59:28 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -30
Зарегистрирован: Пн окт 04, 2010 11:55:41
Сообщений: 218
Рейтинг сообщения: 0
Добрый вечер! Пытаюсь постигать как передавать по UART в терминал. Как вывести числа додумался, а вот как чтобы с новой строки каждое шло, нет... или через запятую, но одной строкой... помоги, че т прям буксую)))

Код:
#include <stdio.h>
#include <stdlib.h>
char buffer [16];     //Буфер UART
***
ftoa(adc, 2 ,buffer);  //ftoa(float n,unsigned char decimals,char *str);     
puts(buffer);                     //puts(char *str);
itoa(PERIOD_ON,buffer);   //void itoa(int n,char *str);
puts(buffer);


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Чт янв 28, 2021 01:24:20 
Друг Кота
Аватар пользователя

Карма: 86
Рейтинг сообщений: 1018
Зарегистрирован: Чт апр 11, 2013 11:19:59
Сообщений: 4871
Откуда: Минск
Рейтинг сообщения: 0
Передавать символы перехода на новую строку и возврата каретки или запятой.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Чт янв 28, 2021 08:43:09 
Прорезались зубы

Карма: -10
Рейтинг сообщений: -30
Зарегистрирован: Пн окт 04, 2010 11:55:41
Сообщений: 218
Рейтинг сообщения: 0
Передавать символы перехода на новую строку и возврата каретки или запятой.

:))) Теорию мы оспаривать не будем! Хотя и теория не помешала бы, методы в уроках расписаны так себе. Нам практика нужна, как это делается и чем! Printf() ; - не катит... Код можете привести наглядно показать?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Нескольно простых вопросов о программировании AVR на Си.
СообщениеДобавлено: Чт янв 28, 2021 08:48:16 
Поставщик валерьянки для Кота

Карма: 12
Рейтинг сообщений: 532
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1978
Рейтинг сообщения: 0
Код:
***
ftoa(adc, 2 ,buffer);  //ftoa(float n,unsigned char decimals,char *str);     
puts(buffer);                     //puts(char *str);
puts(", ");
itoa(PERIOD_ON,buffer);   //void itoa(int n,char *str);
puts(buffer);
puts("\n");


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 1459 ]     ... , , , 52, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 26


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y