AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
23.03.2013, 18:03
|
|
Прохожий
Регистрация: 29.11.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Атмега32 ацп
ест код. работает нормально. на выводе пб3 треугольный сигнал получается. на вывод пб3 включен светодиод.он повышает-уменшает яркост циклически и бесконечно. сам код выглядет так.
#include ‹avr/io.h›//библиотека ввода/вывода
#include ‹util/delay.h›//Библиотека функций
#define PORT_PWM DDRB // порт МК
#define PIN_PWM 3 // вывод порта B - PB3
unsigned char i = 0; //
//Программа инициализации ШИМ
void init_pwm (void)
{
/* Настраиваем 8-ми битный таймер*/
TCCR0 = 1‹‹WGM00|1‹‹COM01|1‹‹WGM01|1‹‹CS02;// предделитель 256
// Начальные значения ШИМ на выводах МК
OCR0=0x00;
}
/*--Основная программа-----------------------------------------------*/
int main(void)
{
PORT_PWM |= (1‹‹PIN_PWM);
init_pwm();
// бесконечный цикл
while (1) {
// увеличиваем яркость (скважность PWM)
for (i=0;i‹255;i++) {
OCR0++;
_delay_ms(5);
}
// уменьшаем яркость (скважность PWM)
for (i=0;i‹255;i++) {
OCR0--;
_delay_ms(5);
}
}
return 1;
}
нужно изменить код находяшиеся выше так ; шим сигнал начается от некоторого конкретного значение а не от нуля и закончивается на конкретно определенном значении а не в 256 и после этого закончивается программа.
не знаю как изменит этот код для этой цели.
не знаю какие переменные отвечает на эти параметры.
пишите пожалуйста этот код заново чтобы шим сигнал начался от некоторого конкретного значение а не от нуля и закончивается на конкретно определенном значении а не в 256 и после этого закончивается программа. спасибо.
|
|
|
|
23.03.2013, 18:14
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: атмега32 ацп
Сообщение от fahri1
|
// Начальные значения ШИМ на выводах МК
OCR0=0x00;
|
Сюда запиши свое "определенное значение" начала
Сообщение от fahri1
|
i‹255
|
Сюда - количество увеличений/уменьшений (от 1 до 255)
|
|
|
|
23.03.2013, 19:26
|
|
Прохожий
Регистрация: 29.11.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Атмега32 ацп
i‹255
Сюда - количество увеличений/уменьшений (от 1 до 255)
ошибочное утверждение,количество увеличений/уменьшений бесконечно,прибор работает бесконечно до выключение питании.
допустим писал
OCR0=0x25; изменится период или скважност?
|
|
|
|
23.03.2013, 20:34
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2009
Адрес: Украина, Харьков
Сообщений: 762
Сказал спасибо: 108
Сказали Спасибо 67 раз(а) в 67 сообщении(ях)
|
Re: Атмега32 ацп
fahri1, у Вас в программе написано, что происходит изменение скважности при изменении значения в регистре OCR0.
Что значит что бы программа заканчивалась? Если я вас правильно понял, то убираете цикл WHILE (1) и ставите его после цикла увеличения яркости. А ограничение т.к. сказал niXto.
|
|
|
|
23.03.2013, 20:59
|
|
Прохожий
Регистрация: 29.11.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Атмега32 ацп
Что значит что бы программа заканчивалась?
это значит что прибор завершает свою работу полностю
|
|
|
|
23.03.2013, 21:01
|
|
Прохожий
Регистрация: 29.11.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Атмега32 ацп
как убрат while полностю?
|
|
|
|
23.03.2013, 21:09
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2009
Адрес: Украина, Харьков
Сообщений: 762
Сказал спасибо: 108
Сказали Спасибо 67 раз(а) в 67 сообщении(ях)
|
Re: Атмега32 ацп
fahri1, как цикл выглядет в С?
While (1)
{
}
Вот такое и убирайте...
|
|
|
|
24.03.2013, 10:17
|
|
Прохожий
Регистрация: 29.11.2011
Сообщений: 8
Сказал спасибо: 1
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Атмега32 ацп
fahri1, как цикл выглядет в С?
While (1)
{
}
Вот такое и убирайте...
нет.тогда убю вес цикл.
необходимо чтобы увеличение яркости всего 1 раз осталос.
|
|
|
|
24.03.2013, 12:30
|
|
Гражданин KAZUS.RU
Регистрация: 16.03.2009
Адрес: Украина, Харьков
Сообщений: 762
Сказал спасибо: 108
Сказали Спасибо 67 раз(а) в 67 сообщении(ях)
|
Re: Атмега32 ацп
fahri1, яркость у вас в чем увеличивается? Я же написал убираете вайл и ставит после первого цикла с увеличением...
|
|
|
|
24.03.2013, 13:16
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,841
Сказал спасибо: 2,531
Сказали Спасибо 11,764 раз(а) в 5,895 сообщении(ях)
|
Re: Атмега32 ацп
Сообщение от fahri1
|
fahri1, как цикл выглядет в С?
While (1)
{
}
Вот такое и убирайте...
нет.тогда убю вес цикл.
необходимо чтобы увеличение яркости всего 1 раз осталос.
|
Цикл - это повторение. Если не нужно повторение - не нужен и цикл. Просто включается последовательность необходимых команд, которая не циклится.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
Атмега32 Компаратор
|
fahri1 |
AVR |
5 |
23.03.2013 20:56 |
АЦП
|
papa_n |
Песочница (вопросы новичков) |
10 |
15.10.2012 22:39 |
АЦП
|
IZEVS |
Измерительное оборудование |
4 |
12.05.2008 10:33 |
АЦП
|
yariki |
Микроконтроллеры, АЦП, память и т.д |
0 |
21.12.2006 00:26 |
АЦП на МК без АЦП
|
zelanez |
Микроконтроллеры, АЦП, память и т.д |
7 |
29.07.2006 09:59 |
Часовой пояс GMT +4, время: 00:32.
|
|