Например TDA7294

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

Текущее время: Вт сен 09, 2025 09:59:07

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


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



Начать новую тему Ответить на тему  [ Сообщений: 8297 ]     ... , , , 168, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Вт дек 27, 2011 11:13:13 
Собутыльник Кота
Аватар пользователя

Карма: 11
Рейтинг сообщений: 47
Зарегистрирован: Пн апр 06, 2009 19:33:29
Сообщений: 2512
Откуда: Молдова, Кишинев
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Мастер Ломастер писал(а):
TCCR1B.WGM12 = 1;
кодвижн эту запись понимает?

Не могу знать, ибо это есть изврат, даже не пробовал никогда.
А вот с портами удобненько работать так )


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Вт дек 27, 2011 11:15:21 
Поставщик валерьянки для Кота

Карма: 1
Рейтинг сообщений: 5
Зарегистрирован: Ср май 11, 2011 21:37:45
Сообщений: 1995
Откуда: Цветочный город
Рейтинг сообщения: 0
BerZerK-ku писал(а):
Зачем пересказывать своими словами, если есть возможность дать ссылку на стандарт-первоисточник?
зачем спрашивать то, что легко найти в интернете? нет стандарта на правила поведения, нигде не написано "человек обязан называть незнакомца на ВЫ", однако есть неписанные правила хорошего тона, которых цивилизованные люди придерживаются... хотите, чтобы ваша программа была написана в стиле "эй, ты, придурок, куда прешь, коровья морда?" - пожалуйста. я стараюсь писать в стиле "будьте любезны, отойдите в сторону: вы мне мешаете". где я этому научился? а сам такой умный :)))

_________________
битва с дураками проиграна, победители торжествуют. слава победителям!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Вт дек 27, 2011 11:21:52 
Мучитель микросхем

Зарегистрирован: Вт июл 22, 2008 08:10:54
Сообщений: 492
Рейтинг сообщения: 0
Если бы я знал, откуда вы взяли эти правила :dont_know: Это форум куда обращаются за советом/помощью, не уж-то так трудно вставить одну ссылку?!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Вт дек 27, 2011 12:05:29 
Собутыльник Кота
Аватар пользователя

Карма: 11
Рейтинг сообщений: 47
Зарегистрирован: Пн апр 06, 2009 19:33:29
Сообщений: 2512
Откуда: Молдова, Кишинев
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Мастер Ломастер, имхо это непробиваемо :))))
BerZerK-ku писал(а):
не уж-то так трудно вставить одну ссылку?!

Мастер Ломастер писал(а):
однако есть неписанные правила хорошего тона, которых цивилизованные люди придерживаются

ключевое слово НЕПИСАНЫЕ

---

Варианты PORTB.2=1 удобно использовать если нужно дернуть ногу. Одну.
Если надо записать по битам регистр, гораздо лучше и удобнее это делать так, как предлагает Мастер Ломастер


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Ср дек 28, 2011 00:15:31 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 12
Рейтинг сообщений: 67
Зарегистрирован: Пт авг 27, 2010 05:57:06
Сообщений: 2482
Откуда: Тюмень
Рейтинг сообщения: 0
totty писал(а):
Добрый вечер, форумчане, помогите пожалуйста найти ошибку,
контроллер мега8, 4х 7сегментных индикатора, должны выводить число 4 разрядное, на индикаторе при тестировании в протеусе творится нечто не понятное, 2 разряда только выводит

Протестил ваш кекс действительно только два младших разряда моргают.
Подправил.
Там с if путанница
Перенёс counter в прерывание

Код:
interrupt [TIM0_OVF] Timer0_ovf(void) 
// прерывание по переполнению Т0 для индикации 7-seg
{
static unsigned int counter=0;
 if (counter==0)
 {
  PORTD.0=1;
  PORTD.1=0;
  PORTD.2=0;
  PORTD.3=0;}
    else if (counter==1)
        {
        PORTD.0=0;
        PORTD.1=1;
        PORTD.2=0;
        PORTD.3=0;}
        else if (counter==2)
            {
            PORTD.0=0;
            PORTD.1=0;
            PORTD.2=1;
            PORTD.3=0;}
            else
                {
                PORTD.0=0;
                PORTD.1=0;
                PORTD.2=0;
                PORTD.3=1;
}
                   PORTB=data[counter];
                   counter++;
                   if (counter>=4)
                             {
                              counter=0;
                             }
                             
}

Так залил все четыре заморгали.

Лучше было как в исходнике оставить SWITCH

interrupt [TIM0_OVF] Timer0_ovf(void)
// прерывание по переполнению Т0 для индикации 7-seg
{PORTD&=0xF0;
switch(counter)
{
case 0: PORTB=data[counter]; PORTD.3=1; break;
case 1: PORTB=data[counter]; PORTD.2=1; break;
case 2: PORTB=data[counter]; PORTD.1=1; break;
case 3: PORTB=data[counter]; PORTD.0=1; break;
}
counter++;
if (counter>=4)
{
counter=0;
}
}

конверт дата тоже наоборот работает поменяйте числа в
коде:
temp=x;
res=temp/1000; //Calculate 1000-s
data[
3]=codes[res];
temp=temp-res*1000;

_________________
В поисках истины человек развивается.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Ср дек 28, 2011 03:35:50 
Первый раз сказал Мяу!
Аватар пользователя

Карма: 2
Рейтинг сообщений: 0
Зарегистрирован: Ср авг 03, 2011 22:26:02
Сообщений: 39
Откуда: Севастополь
Рейтинг сообщения: 0
vitalik_1984, спасибо большое :)
а вот еще нюанс, протеус при тестировании схемы с этим кодом на 90% загружает ЦП у мк тоже будет высокая степень загрузки? или это не показатель для подобных доводов?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Ср дек 28, 2011 06:41:24 
Мучитель микросхем

Зарегистрирован: Вт июл 22, 2008 08:10:54
Сообщений: 492
Рейтинг сообщения: 0
Протеус показывает загрузку ЦП вашего ПК при моделировании схемы.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Пт дек 30, 2011 20:34:11 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
Код:
#include <mega8.h>
#include <delay.h> // подключаем библиотеку задержки

скажите пожалуйста, а как новичку узнать какие готовые функции есть вообще, для чего они предназначены и где их взять ? :dont_know:

_________________
Tell Me The Truth


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Пт дек 30, 2011 21:51:40 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 12
Рейтинг сообщений: 67
Зарегистрирован: Пт авг 27, 2010 05:57:06
Сообщений: 2482
Откуда: Тюмень
Рейтинг сообщения: 0
totty писал(а):
vitalik_1984, спасибо большое :)
а вот еще нюанс, протеус при тестировании схемы с этим кодом на 90% загружает ЦП у мк тоже будет высокая степень загрузки? или это не показатель для подобных доводов?

Ваш процессор не рассчитан на выполнение таких опкодов, тем более со всякими там наворотами в виде темы и прочей дребедени оболочки.Процессор АВР выполняет большинство команд за один цикл такта.Так что не беспокойтесь.Ваш процессор большую часть времени проведет возле While(1) {} :)

_________________
В поисках истины человек развивается.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Пт дек 30, 2011 22:02:15 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 12
Рейтинг сообщений: 67
Зарегистрирован: Пт авг 27, 2010 05:57:06
Сообщений: 2482
Откуда: Тюмень
Рейтинг сообщения: 0
FreshMan писал(а):
Код:
#include <mega8.h>
#include <delay.h> // подключаем библиотеку задержки

скажите пожалуйста, а как новичку узнать какие готовые функции есть вообще, для чего они предназначены и где их взять ? :dont_know:

наверно в спецификациях для компилятора, в справочных файлах студии.Или просто в интернете.
Вот например тут поглядеть...

_________________
В поисках истины человек развивается.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 12:24:59 
Первый раз сказал Мяу!
Аватар пользователя

Карма: 2
Рейтинг сообщений: 0
Зарегистрирован: Ср авг 03, 2011 22:26:02
Сообщений: 39
Откуда: Севастополь
Рейтинг сообщения: 0
Еще вопрос, допустим в коде есть работа АЦП и прерывания таймера для индикации на 7-сегментные индикаторы, при каждом прерывании происходит пауза работы ацп или он как и работал так и работает? т е параллельно с выполняющимся кодом написанном в прерывании?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 12:29:33 
Держит паяльник хвостом
Аватар пользователя

Карма: 11
Рейтинг сообщений: 43
Зарегистрирован: Вс май 23, 2010 13:55:42
Сообщений: 908
Откуда: Украина, Александрия
Рейтинг сообщения: 0
totty писал(а):
Еще вопрос, допустим в коде есть работа АЦП и прерывания таймера для индикации на 7-сегментные индикаторы, при каждом прерывании происходит пауза работы ацп или он как и работал так и работает? т е параллельно с выполняющимся кодом написанном в прерывании?

Нет не паралельно! По этому не рекомендуется "засиживатся" в обработчике прерывания.

_________________
«И всё-таки она вертится!»


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 13:26:13 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
Код:
PORTB.3=1
PINB.3=1

равнозначны ли по смыслу и по силе действия вышеуказанные команды ?

_________________
Tell Me The Truth


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 13:33:27 
Держит паяльник хвостом
Аватар пользователя

Карма: 11
Рейтинг сообщений: 43
Зарегистрирован: Вс май 23, 2010 13:55:42
Сообщений: 908
Откуда: Украина, Александрия
Рейтинг сообщения: 0
FreshMan писал(а):
Код:
PORTB.3=1
PINB.3=1

равнозначны ли по смыслу и по силе действия вышеуказанные команды ?

Нет. Вот почитайте раздел "Порт в МК"

_________________
«И всё-таки она вертится!»


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 13:47:01 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
ага............, это подтяжка :))
ох у не люблю я же рекомендованный тобой сайт.............,преподают как то там инфу не толково :)

_________________
Tell Me The Truth


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 14:09:44 
Сверлит текстолит когтями
Аватар пользователя

Карма: 4
Рейтинг сообщений: 30
Зарегистрирован: Ср янв 05, 2011 16:25:15
Сообщений: 1163
Рейтинг сообщения: 0
FreshMan вместо того чтобы "озадачивать" всех подобными вопросами достаточно прочесть всего пару книжек (благо найти их можно не только в магазине). В качестве справочника по AVR лучшее ИМХО книги Евстифеева, а по CV AVR есть книга Лебедева.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 14:13:33 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
Код:
#include <mega8.h>
#include <delay.h>
#include <stdio.h>

void main(void)
{
UCSRA=0x02;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x67;
 
PORTB=0x00;
DDRB=0x01; 

while (1)
      {
            PORTB.0=1; //Включаем светодиод на 0 выходе порта D
            printf("On"); //Передаем ПК слово включен
            delay_ms(1000); // Делаем задержку в 1с
            PORTB.0=0; 
            printf("Off");
            delay_ms(1000);         
      };
}

есть вот такая програмка.................., мне здесь непонятен смысл команды printf("Off");..........., где должнен печатать это слово ПК ??? :dont_know:

_________________
Tell Me The Truth


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 14:14:41 
Друг Кота
Аватар пользователя

Карма: 27
Рейтинг сообщений: 33
Зарегистрирован: Пн ноя 22, 2010 00:57:15
Сообщений: 6296
Откуда: Ukraine
Рейтинг сообщения: 0
ChipKiller, приведи полное название книжек, плиз :)

_________________
Tell Me The Truth


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 14:24:42 
Сверлит текстолит когтями
Аватар пользователя

Карма: 4
Рейтинг сообщений: 30
Зарегистрирован: Ср янв 05, 2011 16:25:15
Сообщений: 1163
Рейтинг сообщения: 0
FreshMan писал(а):
приведи полное название книжек, плиз :)
..а погуглить тяжело?
Евстифеев AVR, Лебедев AVR и сразу море ссылок....


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: CodeVision AVR в вопросах и ответах
СообщениеДобавлено: Сб дек 31, 2011 14:33:03 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 12
Рейтинг сообщений: 67
Зарегистрирован: Пт авг 27, 2010 05:57:06
Сообщений: 2482
Откуда: Тюмень
Рейтинг сообщения: 0
FreshMan писал(а):
Код:
PORTB.3=1
PINB.3=1

равнозначны ли по смыслу и по силе действия вышеуказанные команды ?

Это не одно и то же.Дело в том,что порты мк управляются тремя регистрами :
1-DDRx-определяет направление порта
высокий уровень(логическая единица)
тут означает,что порт используется для вывода данных.
2-PORTx-включает подтяжку ноги порта при DDRx=0 или переключает ногу порта с низкого уровня на высокий при DDRx=1
3-PINx-меняет свое значение в соответствии с состоянием реальной ноги при DDRx =0
запись значения в регистр PINx практического смысла не имеет

_________________
В поисках истины человек развивается.


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

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


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

Сейчас этот форум просматривают: codenamehawk и гости: 354


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

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


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