Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
09.03.2012, 11:28
|
#141
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: И снова ШИМ
Пробуй ... .
Код:
|
//Прерывание по переполнению таймера 1
ISR(SIG_OVERFLOW1)
{
static unsigned char Tic;
static unsigned char Data_port_a;
static unsigned char Data_port_c;
TCNT1 = TMR; //начальное значение таймера
PORTA=Data_port_a;
PORTC=Data_port_c;
Data_port_a=0;
Data_port_c=0;
Tic++;
Tic &= 0x7f;
// Канал 0
if (Tic ‹ Ch_0) Data_port_a|=0x01;
// Канал 1
if (Tic ‹ Ch_1) Data_port_a|=0x02;
// Канал 2
if (Tic ‹ Ch_2) Data_port_a|=0x04;
// Канал 3
if (Tic ‹ Ch_3) Data_port_a|=0x08;
// и т.д.
//-------------------
//
if (Tic ‹ Ch_8) Data_port_c|=0x01;
// Канал 9
if (Tic ‹ Ch_9) Data_port_c|=0x02;
// Канал 10
if (Tic ‹ Ch_10) Data_port_c|=0x04;
// Канал 11
if (Tic ‹ Ch_11) Data_port_c|=0x08;
// и т.д.
//-------------------
// |
__________________
Осторожно , злой кот
Последний раз редактировалось dosikus; 09.03.2012 в 11:51.
|
|
|
|
09.03.2012, 12:20
|
#142
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: И снова ШИМ
Сообщение от Alex9797
|
А какие у него шансы засветиться?
|
Ах, ну да.
Tic просто никогда не будет равным "0".
|
|
|
|
09.03.2012, 12:42
|
#143
|
Почётный гражданин KAZUS.RU
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,565
Сказал спасибо: 5,041
Сказали Спасибо 10,615 раз(а) в 3,604 сообщении(ях)
|
Re: И снова ШИМ
Сообщение от omercury
|
Будет.
Последовательность команд учитывайте.
Сначала включится порт, а на следующем тике уже выключится...
|
Удивляюсь Вам. Обычно Вы более внимательны. Впрочем, я делаю поправку на то, что вчера было 8 марта.
Порт вообще не включится, потому что нулевое значение счетчика тиков существует лишь в течении двух-трех машинных инструкций. Единственная возможность порту быть включенным - это если значение параметра яркости равно счетчику. Но ведь нулевое значение счетчика в процедуре сравнения не участвует!
P.S. Блин, инет глючит. Полчаса ждал, пока отправится это сообщение. А за это время уже все устаканилось!
Последний раз редактировалось Alex9797; 09.03.2012 в 12:45.
|
|
|
|
09.03.2012, 12:53
|
#144
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: И снова ШИМ
Сообщение от Alex9797
|
P.S. Блин, инет глючит.
|
Это здесь тормоза. В других местах нормально.
|
|
|
|
09.03.2012, 13:28
|
#145
|
Прописка
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
|
Re: И снова ШИМ
Люди вы так заумно говорите, что мне нужно много раз прочитать что бы понять
|
|
|
|
09.03.2012, 13:41
|
#146
|
Прописка
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
|
Re: И снова ШИМ
Сейчас займусь выпаиванием полевиков и сборкой платы, а к вечеру попробую сделать как написал наш супер-модератор
А что это за прерывание Tic &= 0x7f; и вообще где почитать об этих прерываниях и какие они еще бывают и их применение, а то я смотрю на эти цифры с буквами
|
|
|
|
09.03.2012, 13:57
|
#147
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 10,015
Сказал спасибо: 936
Сказали Спасибо 2,269 раз(а) в 1,563 сообщении(ях)
|
Re: И снова ШИМ
Сообщение от SAHA_T
|
А что это за прерывание Tic &= 0x7f;
|
Какое еще прерывание ???
Это тупой циклический счетчик 0-127-0 и т.д. твоих прерываний по таймеру.
Просто без проверок.
==
Код:
|
If((Tic++)›=128)Tic=0; |
__________________
Осторожно , злой кот
|
|
|
|
09.03.2012, 17:15
|
#148
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: И снова ШИМ
Сообщение от SAHA_T
|
А что это за прерывание Tic &= 0x7f
|
Сообщение от dosikus
|
Это тупой циклический счетчик 0-127-0
|
Точно. Наш "супер" просто отсекает старший бит и счётчик получается до 127.
|
|
|
|
09.03.2012, 23:12
|
#149
|
Прописка
Регистрация: 23.07.2007
Сообщений: 209
Сказал спасибо: 109
Сказали Спасибо 1 раз в 1 сообщении
|
Re: И снова ШИМ
Пока только собрал панель, намудохался страх и ужас.
dosikus пока не пробовал твой вариант, я губу раскатал а возникла новая проблема
а именно когда я ставлю 15 циклов на каждый канал что бы по очереди появлялись буквы то у меня исходник уже весит 60кв и я его не могу всунуть в флеш МК, млин так что же это получается все зря
Я тут раскатал губу что поставлю много эффектов а тут поочередное появление 15 букв уже не возможно
КАК БЫТЬ ?
|
|
|
|
10.03.2012, 00:21
|
#150
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: И снова ШИМ
Сообщение от SAHA_T
|
у меня исходник уже весит 60кв и я его не могу всунуть в флеш МК
КАК БЫТЬ ?
|
Не всовывать во флеш исходник!
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 14:15.
|
|