ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
- Ghost in shell
- Держит паяльник хвостом
- Сообщения: 931
- Зарегистрирован: Пн июн 15, 2009 06:01:38
- Откуда: USSR
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
smd я не использую. Вот те, которые нормально работают. Дорожки к МК должны быть минимальной длинны.
- Вложения
-
- P7300004.JPG
- (247.86 КБ) 366 скачиваний
Кот гуляет сам по себе, но вблизи холодильника.
- edm2007
- Поставщик валерьянки для Кота
- Сообщения: 2255
- Зарегистрирован: Вт апр 21, 2009 22:24:10
- Откуда: Иркутск
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Да прекрасно работают и SMD, какая разница-то...
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
- Ghost in shell
- Держит паяльник хвостом
- Сообщения: 931
- Зарегистрирован: Пн июн 15, 2009 06:01:38
- Откуда: USSR
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
А я не говорил, что cmd не работает. Просто я по ряду причин их не использую.
Вопрос по С для 2313, правильно ли я понимаю:
как включить для некоторых линий порта подтягивающие резисторы?
Вопрос по С для 2313, правильно ли я понимаю:
Код: Выделить всё
DDRA = 0b00000000 // все линии порта А - выходы, а TRICA = 0b00000000 будет работать?
int main (void) // главная функция, а void main () будет работать?
как включить для некоторых линий порта подтягивающие резисторы?
Кот гуляет сам по себе, но вблизи холодильника.
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Просто - в PORTX записать 1 в этот бит. ( Х - имя порта А...D)
MOV R16,0
OUT DDRA,R16
MOV R16,3
OUT PORTA,R16 - у порта А, настроенного на вход, 2 младших бита с подтяжкой.
MOV R16,0
OUT DDRA,R16
MOV R16,3
OUT PORTA,R16 - у порта А, настроенного на вход, 2 младших бита с подтяжкой.
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Ув. коты, подскажите пожалуйста, как правильно выставить фюзы для данной схемки (лучше в картинке для пони или CVAVR)?
B меняется ли в этой схемке на прямую AT90S2313 на ATTiny2313 без изменений в программе?
B меняется ли в этой схемке на прямую AT90S2313 на ATTiny2313 без изменений в программе?
- Вложения
-
- схема.pdf
- (26.76 КБ) 257 скачиваний
Ковчег сделал обычный человек, а "Титаник" - учёные...
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Здравствуйте, у меня проблема с фьюзами attiny231320-pu, после удачной записи прошивки мк прочитал фьюзы и выставил sut0 и spien но после нажатия write сразу выбило окно с 24 ошибкой, в результате ponyprog не видит мк, програматор "5 проводков", повредил уже 2 тиньки
- edm2007
- Поставщик валерьянки для Кота
- Сообщения: 2255
- Зарегистрирован: Вт апр 21, 2009 22:24:10
- Откуда: Иркутск
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Димон писал(а):как правильно выставить фюзы для данной схемки
Как правило, одной схемки недостаточно, фьюзы автор указывает.
ShymaN писал(а):прочитал фьюзы и выставил sut0 и spien
SPIEN Вы не смогли бы ни выставить, ни убрать. Его даже ради интереса потыкать нельзя, он неактивен и включен всегда.
"Слишком много людей ломаются, даже не подозревая о том, насколько близки к успеху они были в тот момент, когда упали духом". Томас Алва Эдисон
- vas455
- Говорящий с текстолитом
- Сообщения: 1640
- Зарегистрирован: Сб авг 13, 2011 12:56:34
- Откуда: Рязань
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
дайте пожалуйста какртинку с фьюзами для работы от внешнего кварца 8 мегагерц
Нет таких вещей, которые нельзя было бы доказать, но есть люди, которым ничего нельзя доказать.
- Plant
- Первый раз сказал Мяу!
- Сообщения: 35
- Зарегистрирован: Пт май 26, 2006 21:36:59
- Откуда: Крым
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
edm2007 писал(а):SPIEN Вы не смогли бы ни выставить, ни убрать. Его даже ради интереса потыкать нельзя, он неактивен и включен всегда.
По ходу у кого-то получается
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Plant писал(а):edm2007 писал(а):SPIEN Вы не смогли бы ни выставить, ни убрать. Его даже ради интереса потыкать нельзя, он неактивен и включен всегда.
По ходу у кого-то получается
Я имел ввиду фьюзы которые должны быть запрограмированны, сути проблемы это не меняет
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Всем доброго времени суток!
Пытаюсь разобраться с ШИМ на контроллере ATTiny2313 - управлять RGB-светодиодом. До этого работал только с MSP430, да и то немного. Проблема - не могу правильно инициализировать ногу OCR0A как выход ШИМ-генератора. Делаю так:
Светодиод на этой ноге молчит. Пробовал заливать уже готовый hex-файл другого проекта, который не подходит мне по ряду причин - все три канала цвета работают.
Помогите встать на путь истинный! Или ткните носом, где это уже обсуждалось, ибо поиск по форуму ничего не дал (может, искал плохо).
Пытаюсь разобраться с ШИМ на контроллере ATTiny2313 - управлять RGB-светодиодом. До этого работал только с MSP430, да и то немного. Проблема - не могу правильно инициализировать ногу OCR0A как выход ШИМ-генератора. Делаю так:
Код: Выделить всё
TCCR0A = (1<<WGM01)|(1<<WGM00); //Режим FastPWM
TCCR0A = (1<<COM0A1); //Не инвертированный выход
TCCR0A = (1<<CS00); //Делитель 1
OCR0A = 0x00; //Начальная яркость нулевая
Светодиод на этой ноге молчит. Пробовал заливать уже готовый hex-файл другого проекта, который не подходит мне по ряду причин - все три канала цвета работают.
Помогите встать на путь истинный! Или ткните носом, где это уже обсуждалось, ибо поиск по форуму ничего не дал (может, искал плохо).
- zero648
- Вымогатель припоя
- Сообщения: 650
- Зарегистрирован: Пн июн 18, 2012 12:01:04
- Откуда: Челябинская область, Копейск
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Код: Выделить всё
TCCR0A = (1<<WGM01)|(1<<WGM00); //Режим FastPWM
TCCR0A = TCCR0A | (1<<COM0A1); //Не инвертированный выход
TCCR0A = (1<<CS00); //Делитель 1 ; А тут счетчик совсем стоит, прескалер в TCCR0B
OCR0A = 0x00; //Начальная яркость нулеваяRe: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
zero648, то есть ошибка только во второй строке?
- zero648
- Вымогатель припоя
- Сообщения: 650
- Зарегистрирован: Пн июн 18, 2012 12:01:04
- Откуда: Челябинская область, Копейск
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
И в третьей, я ж докоментировал, внимательней гляди 
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Ну... Насчет третьей я подумал, что раз Вы ее не убрали вовсе, значит, она все-таки для чего-то нужна)
- zero648
- Вымогатель припоя
- Сообщения: 650
- Зарегистрирован: Пн июн 18, 2012 12:01:04
- Откуда: Челябинская область, Копейск
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Прескалер в регистре TCCR0B, а не в TCCR0A, т.е. третья строка должна выглядеть так:
TCCR0B = (1<<CS00); //Делитель 1
TCCR0B = (1<<CS00); //Делитель 1
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Ничего не понимаю. При включении питания на мгновение мигает один из цветов, а потом тупо включается зеленый (OC1A).
Изменение состояния регистра OCR0A в коде ни к чему не приводит.
Может, я порт инициализирую неправильно? Инициализация ШИМ по книжке Евстифеева...
Спойлер
Код: Выделить всё
//Подпрограмма инициализации ШИМ
void pwm_init(void)
{
TCCR0A = (1<<WGM01)|(1<<WGM00); //Режим FastPWM
TCCR1A = (1<<WGM12)|(1<<WGM10);
TCCR1B = (1<<WGM12)|(1<<WGM10);
TCCR0A = TCCR0A|(1<<COM0A1)|(1<<COM0A0); //Инвертированный выход
TCCR1A = TCCR0B|(1<<COM1A1)|(1<<COM1A0);
TCCR1B = TCCR1B|(1<<COM1B1)|(1<<COM1B0);
TCCR0B = TCCR0B|(1<<CS00); //Предделители
TCCR1B = TCCR1B|(1<<CS10);
OCR0A = 0x00; //Начальная яркость нулевая
OCR1A = 0x00;
OCR1B = 0x00;
}
//Основная подпрограмма
int main(void)
{
unsigned char i;
DDRB=PB2+PB3+PB4; //Инициализация порта B
...
}
Изменение состояния регистра OCR0A в коде ни к чему не приводит.
Может, я порт инициализирую неправильно? Инициализация ШИМ по книжке Евстифеева...
- zero648
- Вымогатель припоя
- Сообщения: 650
- Зарегистрирован: Пн июн 18, 2012 12:01:04
- Откуда: Челябинская область, Копейск
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Всё было проинициализировано по аналогии, в этом и ошибка, смотрите по даташиту.
Попробуйте вот этот код:
Попробуйте вот этот код:
Спойлер
Код: Выделить всё
//Подпрограмма инициализации ШИМ
void pwm_init(void)
{
TCCR0A = (1<<WGM01)|(1<<WGM00); //Режим FastPWM
TCCR1A = (1<<WGM10);//Режим FastPWM 8 bit
TCCR1B = (1<<WGM12);//Режим FastPWM 8 bit
TCCR0A = TCCR0A|(1<<COM0A1)|(1<<COM0A0); //Инвертированный выход
TCCR1A = TCCR1A|(1<<COM1A1)|(1<<COM1A0);
TCCR1A = TCCR1A|(1<<COM1B1)|(1<<COM1B0);
TCCR0B = TCCR0B|(1<<CS00); //Предделители
TCCR1B = TCCR1B|(1<<CS10);
OCR0A = 0x00; //Начальная яркость нулевая
OCR1AL = 0x00;
OCR1BL = 0x00;
}
//Основная подпрограмма
int main(void)
{
unsigned char i;
DDRB=PB2+PB3+PB4; //Инициализация порта B
...
}Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Абсолютно тот же самый результат.
- zero648
- Вымогатель припоя
- Сообщения: 650
- Зарегистрирован: Пн июн 18, 2012 12:01:04
- Откуда: Челябинская область, Копейск
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
x8973 писал(а):Абсолютно тот же самый результат.
Странно
, гонял код в протеусе, работает, все таймеры отрабатывают импульсы как надо.Выложи прошивку, попробую с твоей прошивкой проверить