Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 11.03.2012, 23:03  
SAHA_T
Прописка
 
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
SAHA_T на пути к лучшему
По умолчанию Re: И снова ШИМ

МЕГА16А это ведь ни на что не влияет ?
Реклама:
SAHA_T вне форума  
Непрочитано 11.03.2012, 23:05  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: И снова ШИМ

Сообщение от SAHA_T Посмотреть сообщение
ни на что не влияет
Счас и на А , чтоб не думалось .
Вложения:
Тип файла: rar pwm_16_v02A.flash.rar (847 байт, 50 просмотров)
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 11.03.2012, 23:27  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: И снова ШИМ

Нашел несколько неприятных очепяток ...
Вот как без проверки делать .

Пробуй .
Вложения:
Тип файла: rar pwm_16_v03A.flash.rar (849 байт, 74 просмотров)
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 12.03.2012, 15:04  
SAHA_T
Прописка
 
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
SAHA_T на пути к лучшему
По умолчанию Re: И снова ШИМ

Сегодня проверил pwm_16_v02A.flash.rar и pwm_16_v03A.flash.rar
pwm_16_v02A.flash.rar доходит до 8-ми букв при этом когда доходит до 4-й буквы она начинает моргать и исчезает все остальные продолжат гореть когда зажигается 8-я буква то 2-я и 4-я буква гаснут и цикл останавливается. иногда бывает что доходит до 7-ми букв но при это 1-я и 2-я гаснут, короче глючит

pwm_16_v03A.flash.rar все 15-ть букв зажигаются по очереди, как и должно быть, но иногда бывает что одновременно зажигаются 6-я и 9-я буква и иногда 8-я-9-я буква, также как только 4-я буква зажигается начинают моргать 12-13-14-я буквы. Работает не чисто но хоть до конца буквы зажигаются. Также цикл не повторяется без while(1){

я не понимаю в чем дело, но начинаю уже грешить на мегу16, я когда то ее поджарил(забыл поставить диод и спутал + -) это было давно и в результате 4 пина не работают, мож мега глючить начала ? хотя на предыдущем исходнике работала идеально и без глюков !

Сейчас попробую еще раз записать предыдущий исходник.
SAHA_T вне форума  
Непрочитано 12.03.2012, 15:09  
SAHA_T
Прописка
 
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
SAHA_T на пути к лучшему
По умолчанию Re: И снова ШИМ

Предыдущий код работает идеально и без глюков

Я не понимаю почему не хочет массив с пинами работать по отдельности каждый пин отлично работает а вот в массиве глючит не доходит до 15 буквы

Последний раз редактировалось SAHA_T; 12.03.2012 в 16:48.
SAHA_T вне форума  
Непрочитано 12.03.2012, 18:14  
SAHA_T
Прописка
 
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
SAHA_T на пути к лучшему
По умолчанию Re: И снова ШИМ

Млин перепробовал все и решил слепить из 2-х 1
и сделал вот так
теперь все работает
ISR(SIG_OVERFLOW1)
{
TCNT1 = TMR; //начальное значение таймера
// Канал 0
if (Tic ‹ Ch_0) sbi(PORTA,0);
else cbi(PORTA,0);
// Канал 1
if (Tic ‹ Ch_1) sbi(PORTA,1);
else cbi(PORTA,1);
// Канал 2
if (Tic ‹ Ch_2) sbi(PORTA,2);
else cbi(PORTA,2);
// Канал 3
if (Tic ‹ Ch_3) sbi(PORTA,3);
else cbi(PORTA,3);
// Канал 4
if (Tic ‹ Ch_4) sbi(PORTA,4);
else cbi(PORTA,4);
// Канал 5
if (Tic ‹ Ch_5) sbi(PORTA,5);
else cbi(PORTA,5);
// Канал 6
if (Tic ‹ Ch_6) sbi(PORTA,6);
else cbi(PORTA,6);
// Канал 7
if (Tic ‹ Ch_7) sbi(PORTA,7);
else cbi(PORTA,7);
// Канал 8 - здесь переходим к следующему порту
if (Tic ‹ Ch_ sbi(PORTC,7);
else cbi(PORTC,7);
// Канал 9
if (Tic ‹ Ch_9) sbi(PORTC,6);
else cbi(PORTC,6);
// Канал 10
if (Tic ‹ Ch_10) sbi(PORTC,0);
else cbi(PORTC,0);
// Канал 11
if (Tic ‹ Ch_11) sbi(PORTD,7);
else cbi(PORTD,7);
// Канал 12
if (Tic ‹ Ch_12) sbi(PORTD,5);
else cbi(PORTD,5);
// Канал 13
if (Tic ‹ Ch_13) sbi(PORTD,6);
else cbi(PORTD,6);
// Канал 14
if (Tic ‹ Ch_14) sbi(PORTC,1);
else cbi(PORTC,1);


Tic++; //увеличиваем счетчик тиков
if(Tic==12 {
Tic=0; //начинаем все сначала
//и только теперь переходим к новым значениям яркости
Ch_0=PWM_buffer[0];
Ch_1=PWM_buffer[1];
Ch_2=PWM_buffer[2];
Ch_3=PWM_buffer[3];
Ch_4=PWM_buffer[4];
Ch_5=PWM_buffer[5];
Ch_6=PWM_buffer[6];
Ch_7=PWM_buffer[7];
Ch_8=PWM_buffer[8];
Ch_9=PWM_buffer[9];
Ch_10=PWM_buffer[10];
Ch_11=PWM_buffer[11];
Ch_12=PWM_buffer[12];
Ch_13=PWM_buffer[13];
Ch_14=PWM_buffer[14];
}
}

//************************************************** *
// Начало программы
//************************************************** *
int main(void)
{
unsigned char Counter_chanel=0;
unsigned char PWM_value=0;
DDRA=0xFF; //порты - на выход
DDRC=0xFF;
DDRD=0xFF;

PORTA=0x00;
PORTC=0x00;
PORTD=0x00;
delay_ms(1000);

TCNT1 = TMR; //начальное значение счетчика
TIMSK &= ~(1‹‹TOIE1); //запрещаем Ovf1
cli(); //запрещаем прерывания
TIMSK |= 1‹‹TOIE1; //Разрешить Ovf1
TCCR1B |= 0x2; //включить таймер 1 с делителем 8
sei(); //разрешить прерывания


while(1)
{
for(Counter_chanel=0;Counter_chanel‹15;Counter_cha nel++)
{
for(PWM_value=0;PWM_value‹128;PWM_value++)
{
PWM_buffer[Counter_chanel]=PWM_value;
delay_ms(3);
}
delay_ms(1);
}


}}
SAHA_T вне форума  
Непрочитано 12.03.2012, 19:17  
SAHA_T
Прописка
 
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
SAHA_T на пути к лучшему
По умолчанию Re: И снова ШИМ

Теперь у меня снова возник вопрос как мне сделать рандом, что бы все 15 букв появлялись в случайном порядке и что бы не повторялись ?
SAHA_T вне форума  
Непрочитано 12.03.2012, 20:40  
_zag_
Частый гость
 
Регистрация: 06.12.2007
Адрес: Украина г.Луганск
Сообщений: 17
Сказал спасибо: 3
Сказали Спасибо 4 раз(а) в 4 сообщении(ях)
_zag_ на пути к лучшему
По умолчанию Re: И снова ШИМ

Если еще актуально, накидал софтовый 8bit ШИМ ($00..FF) на 16 каналов, правда написан в.... AlgorithmBuilder, но ведь дело не в языке, а в идее/алгоритме, так что если не лень можно попробовать переписать на Си.
Если уходить в ПП PWM_Process постоянно из основного бесконечного цикла, то симулятор показывает 149Гц, т.е. если сделать по прерыванию таймера на 100Гц, то еще остается немного времени для своих нужд.
В таблице описания констант (кнопка F12) можно изменить MIN/MAX значения ШИМ и кол-во каналов. И занимает это все дело всего 106 слов.... задницей чувствую, что можно оптимизировать/ускорить но думать мешает 3х недельная дочка... если получится уложить спать, подумаю еще.
Вложения:
Тип файла: rar SOFT_PWM.rar (29.5 Кб, 51 просмотров)
__________________
Поле бывает 2-х видов: русское и электромагнитное...
проф. Яковенко
_zag_ вне форума  
Непрочитано 12.03.2012, 20:49  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: И снова ШИМ

Сообщение от SAHA_T Посмотреть сообщение
Также цикл не повторяется без while(1){
Цикл в этой прошивке сделан специально один .


Сообщение от SAHA_T Посмотреть сообщение
я когда то ее поджарил(забыл поставить диод и спутал + -) это было давно и в результате 4 пина не работают,
Мда , так можно до бесконечности тр....ся .
Другую срочно ставь , эту в мусорку срочно.
После этого продолжим .
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 12.03.2012 в 20:53.
dosikus вне форума  
Непрочитано 12.03.2012, 20:52  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: И снова ШИМ

Сообщение от _zag_ Посмотреть сообщение
AlgorithmBuilder, но ведь дело не в языке,
Вы знаете , как то равнодушен к этому чуду природы .
Совершенно нет желания изучать вещь которая сама в себе .
__________________
Осторожно , злой кот
dosikus вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Снова о коллекционировании. Roshens Делимся опытом 0 13.12.2010 19:43
СНОВА ЖКИ Gladkih Микроконтроллеры, АЦП, память и т.д 0 27.12.2009 23:48
И снова блютуз! Haulpak Ремонт оргтехники 0 10.03.2009 05:06
Снова DNA1001 R666 Информация по радиокомпонентам 0 25.01.2008 16:39
И снова температура ua_gruzin Поиск схем. Делимся схемами 0 14.02.2007 01:18


Часовой пояс GMT +4, время: 08:48.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot