ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
последние даже с фирменой надписью ATMEL
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
junesongnow писал(а):... Gold Cheap файлы довольно сильно различаются. Так и должно быть? Или это косяк? Тогда где искать "грабли" ? ПЛИЗ ХЭЛП!!!
Я не знаю, кто такой Gold Cheap, но определенно, что при программировании и затем - верификации сравниваются только те участки памяти, которые в этой сессии были записаны. Если ведется просто считывание, считывается вся память. В не записанных в данной сессии ячейках обычно FF. Так что если отличающаяся от FF информация в обоих файлах совпадает, то все ОК.
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Начинаю только изучать Мк и столкнулся с проблемой:пишу прошивку в CodeVision,но почему то не хватает размеров стека либо размеров памяти 2кб.Не могу понять что тогда можно всунуть в at90s2313,если уже минимального размера прошивка занимает много места.Прошу объяснить в чем дело и что можно сделать в данном случае.Код:
Код: Выделить всё
#include <90s2313.h>
#include <1wire.h>
#include <lcd.h>
#include <stdio.h>
#include <ds1820.h>
#asm
.equ __w1_port=0x18
.equ __w1_bit=0
#endasm
#asm
.equ __lcd_port=0x12;
#endasm
int temper;
unsigned char lcdBuff[5];
void main(void)
{
lcd_init(10);
if(w1_init())
{
while (1)
{
temper=ds1820_temperature_10(0);
sprintf(lcdBuff,"%d",temper);
lcd_clear();
lcd_gotoxy(0,0);
lcd_puts(lcdBuff);
}
}
}- Gudd-Head
- Друг Кота
- Сообщения: 20091
- Зарегистрирован: Чт сен 18, 2008 12:27:21
- Откуда: Столица Мира Санкт-Петербург
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Гы
Помнится, sprintf сожрала у меня больше 1 кбайта флэша на СиЛабе.
Помнится, sprintf сожрала у меня больше 1 кбайта флэша на СиЛабе.
[ Всё дело не столько в вашей глупости, сколько в моей гениальности ] [ Правильно заданный вопрос содержит в себе половину ответа ]
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Gudd-Head писал(а):Гы![]()
Помнится, sprintf сожрала у меня больше 1 кбайта флэша на СиЛабе.
На что ее можно заменить?
- IfoR
- Поставщик валерьянки для Кота
- Сообщения: 2029
- Зарегистрирован: Сб ноя 15, 2008 10:09:56
- Откуда: г. Тула
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Ну, например:
А там можно ещё много чего своего придумать, а есть ещё itoa.
Код: Выделить всё
if (temper<0) {lcdBuff[0] = '-'; temper=-temper;} else lcdBuff[0] = ' ';
lcdBuff[1] = temper/100 + '0';
lcdBuff[2] = (temper/10)%10 + '0';
lcdBuff[3] = temper%10 + '0';
lcdBuff[4] = 0;
А там можно ещё много чего своего придумать, а есть ещё itoa.
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Здравствуйте, уважаемые! Мне понадобилось написать, вроде как, несложную программку с использованием компаратора на 2313. Никак не получается. Для понимания его работы, пытаюсь сделать просто проверку бита ACO чтобы его значение показывал светодиод. ACO=1 светодиод не горит и наоборот. Программу пишу в CodeVision AVR.
#include <tiny2313.h>
PORTB=0xFF;
DDRB=0xFF;
PORTD=0x00;
DDRD=0x00;
ACSR=0x00;
while (1)
{
// Place your code here
PORTB.0=ACSR.5
}
никак у меня не реагирует светодиод на разницу напряжений.
Пробовал через прерывание. После одного цикла программы, он входил в прерывание и циклился там.
Помогите, пожалуйста. Ткните носом неразумного котенка)))
#include <tiny2313.h>
PORTB=0xFF;
DDRB=0xFF;
PORTD=0x00;
DDRD=0x00;
ACSR=0x00;
while (1)
{
// Place your code here
PORTB.0=ACSR.5
}
никак у меня не реагирует светодиод на разницу напряжений.
Пробовал через прерывание. После одного цикла программы, он входил в прерывание и циклился там.
Помогите, пожалуйста. Ткните носом неразумного котенка)))
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
я конечно на СИ не понимаю.... но помоему сначала задается DDRx а только потом PORTx, хотя может это и не имеет значения. а вот касаемо компаратора, где у тебя задается режим компаратора?
молока то не нальеш пока не откроеш коробку с ним. так же и тут пока не задаш режим работы - работать не будет.
хотя может во всем этом я ошибаюсь.
молока то не нальеш пока не откроеш коробку с ним. так же и тут пока не задаш режим работы - работать не будет.
хотя может во всем этом я ошибаюсь.
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Порядок задания PORTx и DDRx я думаю не важен. Тем более такой порядок задал мас тер настройки. А режим компаратора задается в определение битов ACSR. Вернее не столько режим сколько его включение, отказ от прерываний(в данной ситуации) и Выбор источника опорного напряжения. Здесь, мне кажется все правильно(хоть и не уверен так как не работает).
Больше вызывает смущение строка "PORTB.0=ACSR.5" Может так в принципе нельзя....
Больше вызывает смущение строка "PORTB.0=ACSR.5" Может так в принципе нельзя....
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
если бы так было нельзя то мне кажется ругался бы компилятор. по крайней мере АВРСТУДИЯ ругается когда делаеш так как нельзя.
смотрим дальше: А режим компаратора задается в определение битов ACSR. Вернее не столько режим сколько его включение
а у тебя стоит ACSR=0x00
тоесть ты его не задал, а если и задал (например в буилдере можно задавать не текстом а в менюшках самого компилятора), то этой строкой ты его сбросил.
смотрим дальше: А режим компаратора задается в определение битов ACSR. Вернее не столько режим сколько его включение
а у тебя стоит ACSR=0x00
тоесть ты его не задал, а если и задал (например в буилдере можно задавать не текстом а в менюшках самого компилятора), то этой строкой ты его сбросил.
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Компаратор включается посредством задания логического 0 в 7 бит ACD.(Из книги Белова) Я и задаю ему 0, то есть включаю.
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
попробуй задать ему 1
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Выдержка из мастера начального кода
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
DIDR=0x00;
работы нет. Так как питание на компаратор не подается
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
DIDR=0x00;
работы нет. Так как питание на компаратор не подается
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
и все таки мне кажется что что то где то еще не забито.
кстати вспмнил про белова... про его книжки. как то в гугле я что то искал и случайно наткнулся на его книжку, но у меня уже была такая книжка, и тем не менее я зашел на ссылочку и долго долго валялся на полу под столом от смеха.
что же я там увидел?
а там значит книжка его выложена, вся такая с подробнастями и коментами
вслед за ней выложены очепятки (опечатки) которые есть в ней
и в след за ними выложены как ты думаеш что? а там очепятки к очепяткам!
дальше не по теме. моя история из котожизни.
после того как отошел от смеха решил все таки посмотреть. и пришел к выводу, что бы что то собрать по книжке когда ни чего не понимаеш (на то время я таким являлся) то надо сначала собрать по книжке, потом по очепяткам, а потом еще раз по очепяткам. мне это показалось очень сложным и я забросил все книги, но потом понял, что эти очепятки сделаны не случайно! а сделали их для того что бы люди сами искали ошибки (учились) и запоминали где и что исправляют и что вследствии меняется после их исправлений. но учится надо как раз на ошибках других.
все это сказано к тому что и книжки делают ошибки.
кстати вспмнил про белова... про его книжки. как то в гугле я что то искал и случайно наткнулся на его книжку, но у меня уже была такая книжка, и тем не менее я зашел на ссылочку и долго долго валялся на полу под столом от смеха.
что же я там увидел?
а там значит книжка его выложена, вся такая с подробнастями и коментами
вслед за ней выложены очепятки (опечатки) которые есть в ней
и в след за ними выложены как ты думаеш что? а там очепятки к очепяткам!
дальше не по теме. моя история из котожизни.
после того как отошел от смеха решил все таки посмотреть. и пришел к выводу, что бы что то собрать по книжке когда ни чего не понимаеш (на то время я таким являлся) то надо сначала собрать по книжке, потом по очепяткам, а потом еще раз по очепяткам. мне это показалось очень сложным и я забросил все книги, но потом понял, что эти очепятки сделаны не случайно! а сделали их для того что бы люди сами искали ошибки (учились) и запоминали где и что исправляют и что вследствии меняется после их исправлений. но учится надо как раз на ошибках других.
все это сказано к тому что и книжки делают ошибки.
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
кстати, у тебя сам МК рабочий? попробуй что нито простенькое в него залить, типо мигание светодиода, или включение выключение его с PIN-а. не знаю получится ли и правильно ли будет. поменяй PORTB.0=ACSR.5 на PORTB.0=PIND.0 и попробуй позажигать светодиод.
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Светодиодами моргал. И просто циклически и по условию нажатия кнопки. Что то с компаратором не понимаю... Поэтому и написал вопрос. Замучался в интернете искать)) Смотрел пример инициализации на http://www.123avr.com/z10.htm. Задачу ставлю еще проще чем там. Все что то никак((
- xkp
- Опытный кот
- Сообщения: 781
- Зарегистрирован: Ср ноя 18, 2009 12:50:31
- Откуда: ковров
- Контактная информация:
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
ну тогда я уже не знаю. скорее всего что то где то надо еще установить. подожди маленько. выходные все таки коты гуляют все... щас нагуляются придут и помогут))
R5VCH
Хотелки:
не/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Хотелки:
Спойлер
Аналоговый осциллограф С1-112, С1-118, другиене/рабочие модули от комплекса ОДА-102
всё что касается AVR, arduino, raspberry
всё что касается КВ-УКВ-радиосвязи, mashtastic
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Ну в любом случае, спасибо за помощь)) Подождем еще котов)
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Какие способы минимизации памяти на 2313 существуют,чтобы не копить каждый байтик?
Re: ВСЁ по прошивке и программированию AT90S2313/ATTiny2313
Попробуйте комментированные командыVatson4ik писал(а):пытаюсь сделать просто проверку бита ACO чтобы его значение показывал светодиод. ACO=1 светодиод не горит и наоборот. Программу пишу в CodeVision AVR.
#include <tiny2313.h>
PORTB=0xFF;************PORTB=0xFC
DDRB=0xFF;*************DDRB=0xFC
PORTD=0x00;
DDRD=0x00;
ACSR=0x00;
while (1)
{
// Place your code here
PORTB.0=ACSR.5;*******PORTB.2=ACSR.5
}
никак у меня не реагирует светодиод на разницу напряжений.
