ВСЁ по прошивке и программированию AT90S2313/ATTiny2313

Обсуждаем контроллеры компании Atmel.
Аватара пользователя
Степаныч
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср июн 20, 2007 18:46:54
Откуда: Красноярск
Контактная информация:

Сообщение Степаныч »

Спасибо!Идея ясна!Пойду эксперементировать!А 12 секунд получается когда контроллер работает на частоте 8мгц.!
IN GOD WE TRUST
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Сообщение Chip115 »

Усе. В той проге разобрался. Теперь новая проблема.
Программа должна работать след. образом. При нажатии на кнопку 1 должен зажеться 0 на индикаторе . При нажатии на кнопу 2 должна зажеться 1. Индикатор с общим катодом. Кнопки подключены к PD0 и к PD1 и на землю. Индикатор подключен к порту B. В порядке dacgbfe-1234567. Точка на индикаторе и вывод 0 порта В незадействованы.
хотел чтоб все работало на частоте 4МГц с внешним кварцом, но низнаю как выставить фьюзы.
Выставил галочки :
CKSEL0
CKSEL2
CKSEL3
SUT0
он должен работать от внутреней цепочки.
В AVR Srudio все работает, а на яву нехочет.
Прив вкключении питания все сигменты начинают мигать и светяться ну ооочень тускло. На кнопки не реагирует. При отключении питания на мгновение ярко загораются некоторые сигменты.
незнаю где собака зарыта.
Может фузы нетак стоят?.
Вложения
002.asm
Исходник
(871 байт) 624 скачивания
Аватара пользователя
ИРБИС
Держит паяльник хвостом
Сообщения: 978
Зарегистрирован: Пн ноя 27, 2006 07:52:01
Контактная информация:

Сообщение ИРБИС »

Chip115 писал(а): низнаю как выставить фьюзы...
Может фузы нетак стоят?.
Всё о фьюзах... :evil:
Питаюсь копытными. Как исчезающий вид занесён в Красную книгу МСОП. Почему до сих пор не занесены в Красную книгу инженеры и учёные РФ?
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Сообщение Chip115 »

выставил фузы. немного упростил исходник. Теперь должен зажеться один сигмент при нажатии кнопки, но почему то светятся все сигменты, независимо от кнопки.
исходник:
.def temp0 =r16
.def temp1 =r17
.def temp2 =r18

Init:
ser temp0 ;Все выводы порта А выход
out DDRA,temp0
ser temp0 ;Все выводы порта B выход
out DDRB,temp0
ldi temp0,0b11111110 ;Вывод 0 и 1 порта D вход
out DDRD,temp0

ldi temp0,0b00000000 ;подтяжка порта D включена
out PortD,temp0
clr temp0 ;подтяжка портов А и В отключена
out PortB,temp0
out PortA,temp0

Start:
sbic PinD,0 ;Проверяем нажатие кнопки 1
ldi temp2,0b00000001 ;
out PortB,temp2 ;Зажигаем сигмент
rjmp Start
Аватара пользователя
Dock
Первый раз сказал Мяу!
Сообщения: 37
Зарегистрирован: Сб дек 22, 2007 17:13:24
Контактная информация:

attiny 2313v

Сообщение Dock »

доброй ночи.
хотел бы сказать огромное спсибо тем кто разрабатывал этот форум и раздел с "обучалкой". первый раз я нашол именно этот раздел и прочитав его сделал себе програматор заранее купив 2-е attiny 2313v (хорошо, что 2). :))) все меня сразу поняли. сегодня нашол все ответы которые бы хотел найти.. основа есть.. но вот обидно когда разбирался по глупости, точнее просто забыл убрать галку в CODEvisionAVR а именно program fuse bit(s) и по невнимательно нажал прошить. вообще эту прогу попробовал просто так для знания. Хотя до этого полностью разобрал PonyProg и в ней уже прошил свой первый код. Естественно после этой процедуры (прошивка в AVR) контроллер на мой многчисленный мат перестал видется... в этом же разделе прочитал что можно востановить но ничего не понял.. объясните чем же можно исправить мою ошибку???
Аватара пользователя
UkrRadist
Первый раз сказал Мяу!
Сообщения: 34
Зарегистрирован: Вс янв 13, 2008 00:40:29
Откуда: україна,Київ,Дубровиця
Контактная информация:

Сообщение UkrRadist »

Долго искал информацию по програмированию и прошивке микроконтролеров.наконец то собрал свой первый(!) STK200,собрал схемку на Тини2313 с четирьмя светоиодами,нашел какую то прошивку и решил это скомпонировать.дело было вчера.вставив программатор в ЛПТ у меня загорелся светодиод на STK200,который у меня соеденьон между землей(10) и VCC(20) 74HC244N,хотя и красиво, но меня это не обрадовало(так должно бить?ведь я еще нечего не шью!).Подключил плату з Тинькою,подал питание,запустил Avreal, он выдал какую то ошибку(ниже привел).так я не поняв в чом проблема лег спать с каменем на душе :cry: .Может кто то мне подскажет, как можно знать что програматор и контроллер работает,может есть какието "контрольные точки"?
Вложения
1.JPG
ответ от Авреал
(41.14 КБ) 650 скачиваний
Аватара пользователя
Brutaller
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн ноя 05, 2007 12:44:43
Откуда: C:\Russia\SPb
Контактная информация:

Сообщение Brutaller »

UkrRadist, ведь avreal тебя ясно сказал "Altera ByteBlaster not found" , т.е. не найден такой :)
А чтож ты хотел, если ты говоришь, что STK200 собрал :)
Ключик то в командной строке "-ab" , что значит шить через Altera ByteBlaster. Поставь "-as" и будет тебе счастье.
Со страницы автора AVReAl :
-ab работа через Altera ByteBlaster (включая ByteBlasterMV, ByteBlaster-II)
-as работа через адаптер Atmel STK*00
-aa автоматический выбор ByteBlaster/STK

А можешь просто -aa поставить и не париться.
А ключ -! убери, не нужен он, это только для экстремальных случаев.
И зачем тебе ключ -o0 ? Если не ошибаться с прошивкой фьюза CKSEL, то он нафиг не нужен.
И ключ -2 зачем ???
Ну а про светодиод ты сам ответил на свой вопрос. Он же у тебя между землей и питанием сидит? Так что же ты от него еще то хочешь? :))

P.S. Подробное описание AVReAl, читай внимательно и вопросов будет меньше ;)
Аватара пользователя
UkrRadist
Первый раз сказал Мяу!
Сообщения: 34
Зарегистрирован: Вс янв 13, 2008 00:40:29
Откуда: україна,Київ,Дубровиця
Контактная информация:

Сообщение UkrRadist »

не знаю почему там окзалось -ab, ведь я хотел -aa, а что косается светодиода, то он у меня светится при отсутствии питанния на плате,выходит, светится от ЛПТ-порта.Но спасибо что мне глаза открыл, попробую сейчас еще раз.
Надо жить с надеждой!
Аватара пользователя
UkrRadist
Первый раз сказал Мяу!
Сообщения: 34
Зарегистрирован: Вс янв 13, 2008 00:40:29
Откуда: україна,Київ,Дубровиця
Контактная информация:

Сообщение UkrRadist »

только что пробовал прошить.Сначала запустил АвРеал,выдало какуюто ошибку,вроде МК не включен.Потом запустил CodeVision,в ответ тоже чтото страшное получил.даже не знаю в чем дело.Ниже приведены ответы при прошивке.
Вложения
22.jpg
Вот что мне сказал CodeVision
(30.72 КБ) 513 скачиваний
33.jpg
А вот так мне ответил АвРеал
(16.21 КБ) 709 скачиваний
Надо жить с надеждой!
Аватара пользователя
Brutaller
Встал на лапы
Сообщения: 87
Зарегистрирован: Пн ноя 05, 2007 12:44:43
Откуда: C:\Russia\SPb
Контактная информация:

Сообщение Brutaller »

Вобщем не могут программаторы связаться с кристаллом, вот о чем говорят твои скриншоты. А причин быть может очень много. Проверяй все по порядку. Остается надеяться, что ты не загнал некоторые фьюзы, а соответственно и сам чип "в позу".

А ты хоть что-нить им уже прошивал? Или это твой первый программатор и первый чип(ATtiny2313) ?
Аватара пользователя
UkrRadist
Первый раз сказал Мяу!
Сообщения: 34
Зарегистрирован: Вс янв 13, 2008 00:40:29
Откуда: україна,Київ,Дубровиця
Контактная информация:

Сообщение UkrRadist »

Все,всем спасибо,вопрос снимается.Схема заработала,диоды моргают!!я просто перепутал выводы в шлейфе :)) .
Надо жить с надеждой!
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Сообщение Chip115 »

Всем привет! Учусь програмировать на С. Хочу написать первую свою прогу для тини2313. Смыс в то надо чтоб светодид мигал с частотой в одну секнду. Сколько писал-все ошибки лезут. ВОт исходник.

Код: Выделить всё

#include <iotn2313>
#include <delay>
int main()
{
   DDRB=0xFF;         //Настройка портаB
   DDRA=0xFF;         //Настройка порта A
   DDRD=0xFF;         //Настройка порта D
   
   PortB=0x01;         //Включаесм СИД
   delay_us(1000);      //Ждем
   PortB=0x00;         //Выключам СИД
   while (1)
   

   
}
Аватара пользователя
DIM4
Родился
Сообщения: 16
Зарегистрирован: Пн янв 21, 2008 20:21:02
Контактная информация:

Сообщение DIM4 »

попробуй так

Код: Выделить всё

include <iotn2313> 
#include <delay>
int main()
{
   DDRB=0xFF;         //Настройка портаB
   DDRA=0xFF;         //Настройка порта A
   DDRD=0xFF;         //Настройка порта D
   while (1)
   {
   PortB=0x01;         //Включаесм СИД
   delay_us(1000);      //Ждем
   PortB=0x00;         //Выключам СИД
   delay_us(1000);
   }
}
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

НЕ буду утверждать, но если я не путаю, PORTB и PortB в Си - это две большие разницы.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Аватара пользователя
Krik99
Потрогал лапой паяльник
Сообщения: 375
Зарегистрирован: Вс мар 04, 2007 13:14:25
Откуда: Украина
Контактная информация:

Сообщение Krik99 »

А каким компилятором пользуешся? Если только начал учить Си, можеш писать под CodeVision AVR... Но хотя , каждому нравится разные компиляторы... Ошибочек много, даже с тем PortB , если CodeVIsion, то где-то такой исходник у меня на форуме был... Просто вот мне кажется ещё ошибочка с #include <iotn2313> #include <delay> хотя, я незнаю под какой компилятор было написано... :)
Изображение
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Сообщение Chip115 »

Krik99 писал(а):А каким компилятором пользуешся?

AVR Studio.
Щас попробую исправить. :)
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Сообщение Chip115 »

DIM4 писал(а):попробуй так

Код: Выделить всё

#include <iotn2313> 
#include <delay>
int main()
{
   DDRB=0xFF;         //Настройка портаB
   DDRA=0xFF;         //Настройка порта A
   DDRD=0xFF;         //Настройка порта D
   while (1)
   {
   PORTB=0x01;         //Включаесм СИД
   delay_us(1000);      //Ждем
   PORTB=0x00;         //Выключам СИД
   delay_us(1000);
   }
}

Не работает. Где собака зарыта?
Аватара пользователя
Krik99
Потрогал лапой паяльник
Сообщения: 375
Зарегистрирован: Вс мар 04, 2007 13:14:25
Откуда: Украина
Контактная информация:

Сообщение Krik99 »

А что делает контролёр после подачи питания? Мне кажется, delay_us(1000); это сильно быстро, попробуй delay_ms(1000);
Попробуй так... Хотя может я и сам пару ошибок сделаю, так как пишу под CodeVision AVR... :)

Код: Выделить всё

#include <iotn2313> 
#include <delay>
int main()
{
   DDRB=0xFF;         //Настройка портаB
   DDRA=0xFF;         //Настройка порта A
   DDRD=0xFF;         //Настройка порта D
   while (1)
   {
   PORTB=0xFF;         //Включаем весь порт В
   delay_ms(1000);      //Ждем
   PORTB=0x00;         //Выключам весь порт В
   delay_ms(1000);      //Ждём
   }
}


Хотя попробуй по совмещать мой код, со своим... 8)
Если будет время, попробую сам сделать...
Изображение
Аватара пользователя
DIM4
Родился
Сообщения: 16
Зарегистрирован: Пн янв 21, 2008 20:21:02
Контактная информация:

Сообщение DIM4 »

а какие именно ошибки выдаёт ?
Аватара пользователя
Chip115
Сверлит текстолит когтями
Сообщения: 1132
Зарегистрирован: Пт фев 16, 2007 14:18:20
Откуда: Новосибирск
Контактная информация:

Сообщение Chip115 »

DIM4 писал(а):а какие именно ошибки выдаёт ?

../11.c:1:23: iotn2313.h: No such file or directory
../11.c:2:20: delay.h: No such file or directory
../11.c: In function `main':
../11.c:5: error: `DDRB' undeclared (first use in this function)
../11.c:5: error: (Each undeclared identifier is reported only once
../11.c:5: error: for each function it appears in.)
../11.c:6: error: `DDRA' undeclared (first use in this function)
../11.c:7: error: `DDRD' undeclared (first use in this function)
../11.c:10: error: `PORTB' undeclared (first use in this function)
../11.c:11: warning: implicit declaration of function `delay_ms'
make: *** [11.o] Error 1
Build failed with 8 errors and 1 warnings...
Ответить

Вернуться в «AVR»