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

Обсуждаем контроллеры компании Atmel.
Ответить
Сверлит текстолит когтями
Сообщения: 1156
Зарегистрирован: Вт дек 09, 2008 20:31:56

Сообщение осторожно! леоныч!!! »

DiGiCat писал(а):Исходники сначала скомпилировать нужно и тогда на выходе получишь bin или нех. Не написал под какой контроллер исходник..
Похоже Keil тебе в помощь
ну как же не написал? в прикрепленном файле написано atmel89c51 у меня нет возможности скачать эту прогу и к тому же надо еще с ней разобратся ведь она не на русском а я английский не знаю.. может кто сможет компилировать???? буду зверски благодарен!!!!!!!!!!!!!!!!
Реклама
Потрогал лапой паяльник
Сообщения: 392
Зарегистрирован: Сб дек 12, 2009 02:15:45

Сообщение neon-f »

Вопрос риторический.
а нафига фьюзы вообще отделили от прошивки. почему нельзя было фьюзы сразу учитывать в прошивке при написании программ. ведь автор прошивки знает в каком режиме и в какой схеме должен работать программируемый им контролер. Нафига искусственные трудности. Столько (процентов 70!!) вопросов бы отпало.
Реклама
Прорезались зубы
Аватара пользователя
Сообщения: 226
Зарегистрирован: Вт мар 03, 2009 11:37:31
Откуда: Николаевская обл.

Сообщение Corporal »

Здравствуйте. Встретил в форуме термометр на Меге8 передача по UART, переделал под ATTINY2313 (Clock frequency: 1,000000 MHz) вот что получилось:

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

#include <tiny2313>
#include "ds18b20_.h"
 #include <1wire>
#include <stdio>
#include <delay>
#asm
   .equ __w1_port=0x18 ;PORTD
   .equ __w1_bit=7
#endasm

  unsigned char devices;         
 unsigned int temp;
void main(void)
{
UCSRA=0x02;
UCSRB=0x08;
UCSRC=0x06;
UBRRH=0x00;
UBRRL=0x33;
 devices=w1_init();
printf("Запуск термометра\r");

while (devices>0)
      { 

  temp=ds18b20_temperature(0);  
          if (temp>1000){ 
             temp=4096-temp;
             temp=-temp;}
printf("Temp=%i\xf8C",temp);
       
       delay_ms(1000);          
      }; 
 }
Два вопроса:
1. В Протеусе все работает, только на виртуальном терминале крякозяблы.
2. В железе тинька не видит датчик. По UARTу передает только строку "Запуск термометра".
Прорезались зубы
Аватара пользователя
Сообщения: 226
Зарегистрирован: Вт мар 03, 2009 11:37:31
Откуда: Николаевская обл.

Сообщение Corporal »

Всем спасибо, я уже сам исправил. :))) Помогите с протеусом как крокодзяблы поменять на нормальное значение? И второе на компе я принимаю температуру не 26 градусов, а пишет 423, в чем прикол?
Реклама
Эиком - электронные компоненты и радиодетали
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

Corporal писал(а):Помогите с протеусом как крокодзяблы поменять на нормальное значение?
Вы про LCD? Патч в аттаче.
Вложения
lcd.rar
(251.18 КБ) 212 скачиваний
Контактная информация:
Реклама
Прорезались зубы
Аватара пользователя
Сообщения: 226
Зарегистрирован: Вт мар 03, 2009 11:37:31
Откуда: Николаевская обл.

Сообщение Corporal »

Нет я имел ввиду на терминале, я передаю по UART
Реклама
Мучитель микросхем
Аватара пользователя
Сообщения: 422
Зарегистрирован: Вт дек 20, 2005 19:20:59
Откуда: Киев

Сообщение Kenny »

Подскажите мелкий вопросец: в бат файле под альтера байт бластер, мк аттини2313, чтоб выставить частоту 4мгц от внутреннего генератора, нужно написать fcksel=2 ?
Мучитель микросхем
Аватара пользователя
Сообщения: 422
Зарегистрирован: Вт дек 20, 2005 19:20:59
Откуда: Киев

Сообщение Kenny »

и в который раз всем спасибо за ответ! :( :( :(
GP1
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2401
Зарегистрирован: Пт май 23, 2008 19:32:22
Откуда: Россия, Волгоград

Сообщение GP1 »

На правильно заданный вопрос всегда можно получить исчерпывающий ответ :)))
в бат файле под альтера байт бластер
а программа-то какая?
альтера байт бластер - это всего лишь адаптер
Чем дальше, тем больше становлюсь занудой...
Изображение
Контактная информация:
Открыл глаза
Сообщения: 44
Зарегистрирован: Ср фев 04, 2009 12:27:06

Сообщение vzgherea »

Добрый день!
Прошил Tiny2313 5-проводами - всё заработало (использовался внутренний генератор). Спаял СТК200/300, решил его проверить, и убрал галочку CKSEL0, теперь тинька не отвечает :(. Можно ли её вывести из этого состояния используя СТК200/300?

Спасибо.
Вложения
fuzes.JPG
(29.69 КБ) 623 скачивания
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

vzgherea, можно. Вы выставили фьюзы на внешнее тактирование от кварцевого резонатора, частотой 0.9-3мГц. Повесьте на тини соответствующий кварц или внешний генератор и тогда сможете восстановить фьюзы.
Контактная информация:
Открыл глаза
Сообщения: 44
Зарегистрирован: Ср фев 04, 2009 12:27:06

Сообщение vzgherea »

Пробовал повесить кварц на 4Mhz, тинька не отозвалась. +- 1 Mhz это критично? :)

У меня сейчас получается комбинация 0101.
По даташиту для Тини это "Reserved", то есть, мне кажется, он не будет реагировать на внешнее тактирование. Так ли это?
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

vzgherea писал(а):Пробовал повесить кварц на 4Mhz, тинька не отозвалась. +- 1 Mhz это критично? :)
А как вы думаете то, что пишут в документации, критично?
vzgherea писал(а): У меня сейчас получается комбинация 0101.
По даташиту для Тини это "Reserved", то есть, мне кажется, он не будет реагировать на внешнее тактирование. Так ли это?
По приложенному вами скрину, у вас сейчас CKSEL 1010, а это, по ДШ, внешний кварц 0.9 - 3.0Мгц.
Контактная информация:
Открыл глаза
Сообщения: 44
Зарегистрирован: Ср фев 04, 2009 12:27:06

Сообщение vzgherea »

AI_Disable писал(а): По приложенному вами скрину, у вас сейчас CKSEL 1010, а это, по ДШ, внешний кварц 0.9 - 3.0Мгц.
У меня изначально было 0100 - работа от внутреннего кварца 8Мгц.
Убрав CKSEL0 сделал CKSEL0 = 0101, что соответсвует cостоянию "Reserved". (Прошиваю понипрогом, там галочка = 0) После поисков в сети пришёл к выводу что даже паралельный програматор не выводит Tiny2313 из этого состояния :( .
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

Опять забыл, что понипрог галочки инвертирует. Да... В таком случаи прогноз не утешителен, но, может, стоит попробовать внешний генератор, всё же, хуже не будет. Думаю, тут уже не имеет значения, какой программатор, главное как-нибудь мегу затактировать.
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

vzgherea писал(а): Убрав CKSEL0 сделал CKSEL0 = 0101, что соответсвует cостоянию "Reserved".
У меня в ДШ:
Изображение
А вот понимать ли это как "ставьте фьюзы как хотите"... то есть по идее должен работать внутренний 8мГц.
Вложения
qw.JPG
(24.25 КБ) 505 скачиваний
Контактная информация:
Открыл глаза
Сообщения: 44
Зарегистрирован: Ср фев 04, 2009 12:27:06

Сообщение vzgherea »

А вы какой ДШ смотрите, именно для 2313?
У меня как на картинке.

Пробовал подать внешний такт - глухо :(. Видимо придётся ждать окончания праздников и брать новую тиньку.
Вложения
fuzes table.JPG
(24.41 КБ) 426 скачиваний
Встал на лапы
Аватара пользователя
Сообщения: 97
Зарегистрирован: Вт ноя 03, 2009 13:38:20

Сообщение gogenzzo »

Решил запрограммировать микроконтроллер и в качестве программатора решил взять самую простую схему

Изображение

Вот только не понятно, а как сам микроконтроллер питать? Если от батарейки например, то куда деть "-" у нее? тоже к GND подключить, который и так от LPT подключен будет?

И еще, у меня нету самого кабеля (штекера, вилки) LPT, можно без нее, напрямую проводки повтыкать в порт?
Контактная информация:
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1116
Зарегистрирован: Чт окт 15, 2009 14:16:18
Откуда: Екб

Сообщение AI_Disable »

gogenzzo писал(а): Вот только не понятно, а как сам микроконтроллер питать? Если от батарейки например, то куда деть "-" у нее? тоже к GND подключить, который и так от LPT подключен будет?
Можно и от батарейки, только смотрите, чтоб не просела во время прошивки. Минус, да, к GND.
gogenzzo писал(а): И еще, у меня нету самого кабеля (штекера, вилки) LPT, можно без нее, напрямую проводки повтыкать в порт?
Крайне не желательно. Мне кажется, найти разъём не так уж проблематично. Но если всё таки его нет, то выберите провода потолще(чтоб вплотную в разъём входили) и втыкайте при выключенном компе.
Контактная информация:
Встал на лапы
Аватара пользователя
Сообщения: 97
Зарегистрирован: Вт ноя 03, 2009 13:38:20

Сообщение gogenzzo »

Можно и от батарейки, только смотрите, чтоб не просела во время прошивки. Минус, да, к GND
А от чего еще можно питать? Питание к микросхеме нужно подвести в последнюю очередь? И убрать в первую? ))
Крайне не желательно
Ок, лучше поищу разъем ))
Контактная информация:
Ответить

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