Страница 1 из 1
EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 13:29:26
Alex_ka
Есть кто реально работает программе CodeVisionAVR?
У меня что-то не получается с еепроминой, хотя компилируется без ошибок, флешь в контроллер шьётся без проблем, а еепром при прошивки бросает ошибку. МК исправен, так как проверялось на нескольких новых и другие проги с еепром шьются без проблем. Вот кусок примерной программы. Подскажите пожалуйста, что не так делаю. Пробовал по хелпу этой программы, при компиляции ошибки бросает как и по даташиту на МК. Пробовал на разных версиях везде одинаково.
#include <tiny2313a.h>
eeprom char b_eep;
eeprom char c_eep; /
char b=1;
char c=1;
void main(void)
{
b_eep=b;
c_eep=c;
PORTD=0x3C;
DDRD=0x03;
b=b_eep;
c=c_eep;
PORTD.0=b;
PORTD.0=c;
delay_ms(10);
}
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:06:36
>TEHb<
Alex_ka писал(а):компилируется без ошибок
Alex_ka писал(а):при компиляции ошибки бросает
Что вообще должна делать программа?
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:09:57
OKF
Нужно писать что ожидаешь, что получаешь и что и как наблюдаешь.
И код нужно правильно вставлять, хотя бы ради приличия.
Опередили.)
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:19:34
metan
Alex_ka писал(а):Пробовал по хелпу этой программы
сомневаюсь

В объявлении переменных, хранимых в еепром, нужно указывать адрес ячейки, насколько я помню
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:24:48
OKF
[uquote="metan",url="/forum/viewtopic.php?p=4558177#p4558177"]В объявлении переменных, хранимых в еепром, нужно указывать адрес ячейки, насколько я помню
[/uquote]
Извиняюсь, погорячился.(
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:34:07
Alex_ka
[uquote=">TEHb<",url="/forum/viewtopic.php?p=4558173#p4558173"]Что вообще должна делать программа?[/uquote]выше написанеое без ошибок но еепром не шьёт . Другое с ошибками.
Добавлено after 5 minutes 6 seconds:
[uquote="OKF",url="/forum/viewtopic.php?p=4558175#p4558175"]Нужно писать что ожидаешь, что получаешь и что и как наблюдаешь.
И код нужно правильно вставлять, хотя бы ради приличия.
Опередили.)[/uquote]ну так там написано записать с и б в память по 1, потом считать и присвоить состояние портов
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:43:16
>TEHb<
Оставьте одну переменную и всю её выводите в порт. Примерно так:
Код: Выделить всё
#include <tiny2313a.h>
eeprom char a_eep;
char a;
void main(void)
{
DDRB=255;
a=a_eep;
a++;
a_eep=a;
PORTB=a;
while(1){};
}
Тогда при каждом новом включении значение будет увеличиваться, что явно будет видно по светодиодам.
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:45:50
Martian
Вопросы, начинающиеся как "есть кто..." можно оставлять без внимания. Потому что потом можно просто зависнуть на фразе "Пробовал по хелпу этой программы, при компиляции ошибки бросает как и по даташиту на МК." и уйти в запой, если повезёт. А если не повезёт, то на
PORTD.0=b;
PORTD.0=c;
точка сборки изменится
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:56:12
Alex_ka
[uquote=">TEHb<",url="/forum/viewtopic.php?p=4558182#p4558182"]Оставьте одну переменную и всю её выводите в порт. Примерно так:
Тогда при каждом новом включении значение будет увеличиваться, что явно будет видно по светодиодам.[/uquote]Спасибо, попробую. А если две переменных будет а и б, не затрет ли вторая первую?
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:57:06
>TEHb<
Потом. Вторая переменная будет потом, когда начнёт читаться и писаться одна.
Re: EEPROM в CV_AVR
Добавлено: Чт мар 21, 2024 14:59:12
Alex_ka
Ок. Спасибо.