AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
20.06.2024, 14:33
|
|
Прохожий
Регистрация: 20.06.2024
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Как пользоваться EEPROM в MicroPascal ATMEGA32
Добрый день. Подскажите, как записать информацию в EEPROM ATMEGA32 или ее прочитать.
teemp:= EEAR1 // !!!!!!!!! Только так получается
В описании написано что для этого надо использовать EEPROM_Read,
EEPROM_Write но эти команды не работают. Видимо для этого контроллера.
В описании по микроконтроллеру написано, что у него в EEPROM используются EEAR0 - EEAR9
Но как прочитать или записать не понимаю????
Написал вот такую программу
Код:
|
{*
MCU: ATMEGA32
*}
program LED_Blinking;
var eeAddr : word;
temp, teemp, zz : byte;
begin
eeAddr := 2;
teemp:= EEAR1 // !!!!!!!!! Только так получается
DDRA := 0xFF; // Set direction to be output
DDRB := 0xFF; // Set direction to be output
DDRC := 0xFF; // Set direction to be output
DDRD := 0xFF; // Set direction to be output
zz:=0;
while TRUE do
begin
//PORTA := 0xFF; // Turn ON diodes on PORTA
Delay_ms(1000); // 1 second delay
//PORTA := 0x00; // Turn OFF diodes on PORTA
Delay_ms(1000); // 1 second delay
end; // Endless loop}
end. |
Последний раз редактировалось RECTO; 24.06.2024 в 09:54.
Причина: Для размещения текстов программ используйте тег "CODE"!
|
|
|
|
20.06.2024, 15:30
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,055
Сказал спасибо: 3,049
Сказали Спасибо 3,213 раз(а) в 2,183 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
Сообщение от skorost5
|
В описании написано что для этого надо использовать EEPROM_Read, EEPROM_Write но эти команды не работают.
|
Как применяли эти подпрограммы (макросы?) и как именно они не работали?
Сообщение от skorost5
|
eeAddr := 2;
teemp:= EEAR1 // !!!!!!!!! Только так получается
|
Если eeAddr является именем, зарезервированным для обращения в регистрам ввода-вывода EEAR, то Вы просто пишете 2 в эти регистры. А потом - считываете бит EEAR1, который, внезапно, оказывается равен единице.
__________________
Экзорцист 40-го уровня.
|
|
|
|
24.06.2024, 02:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
Не знаю, как в паскале, вот код, приведённый в даташите:
PHP код:
|
void EEPROM_write(unsigned int uiAddress, unsigned char ucData)
{
/* Wait for completion of previous write */
while(EECR & (1‹‹EEWE));
/* Set up address and data registers */
EEAR = uiAddress;
EEDR = ucData;
/* Write logical one to EEMWE */
EECR |= (1‹‹EEMWE);
/* Start eeprom write by setting EEWE */
EECR |= (1‹‹EEWE);
}
|
Прерывания на время выполнения функции должны быть запрещены.
|
|
|
|
25.06.2024, 14:50
|
|
Прохожий
Регистрация: 20.06.2024
Сообщений: 2
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
В программе MicroPascal получилось вот так EEAR1_bit:=1; там надо смотреть в описании микроконтроллера там пря табличка на регистры которые можно использовать и как к ним обращаться.
А в описании просто написано, что обычно создается функция для записи и функция для чтения. Но пример довольно размытый указывают. По нему сложно что либо понять к сожелению.
Спасибо всем кто пытался помочь!!!
|
|
|
|
25.06.2024, 21:21
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.10.2006
Сообщений: 1,446
Сказал спасибо: 99
Сказали Спасибо 317 раз(а) в 233 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
Немного жаль, когда люди совсем не понимают, и даже не пытаются понять...
|
|
|
|
25.06.2024, 22:12
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.03.2007
Адрес: "Братское кольцо враждебности", т.е. ближайшее заМКАДье.
Сообщений: 7,055
Сказал спасибо: 3,049
Сказали Спасибо 3,213 раз(а) в 2,183 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
Поймёт, наверное. Когда придётся реальные настройки сохранять и считывать.
__________________
Экзорцист 40-го уровня.
|
|
|
|
26.06.2024, 08:57
|
|
Почётный гражданин KAZUS.RU
Регистрация: 25.11.2010
Адрес: г. Дзержинск Нижегородская обл.
Сообщений: 1,728
Сказал спасибо: 130
Сказали Спасибо 1,111 раз(а) в 530 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
|
|
|
|
03.07.2024, 16:50
|
|
Гражданин KAZUS.RU
Регистрация: 16.06.2005
Сообщений: 945
Сказал спасибо: 25
Сказали Спасибо 175 раз(а) в 124 сообщении(ях)
|
Re: Как пользоваться EEPROM в MicroPascal ATMEGA32
Сообщение от Godzilla82
|
и даже не пытаются понять...
|
Эт точно.
Сообщение от ForcePoint
|
Поймёт, наверное.
|
Может быть. Но это не точно.
Сообщение от DanilinSA
|
Там правда на Си.
|
Это станет непреодолимым препятствием для него, раз ему даже не пришло в голову сделать следующее:
Вбиваем в строку поиска (яндекс) название темы, которое "Как пользоваться EEPROM в MicroPascal ATMEGA32". И буквально вторая ссылка (первая ссылка ведёт на эту тему ) приводит на сайт авторов микропаскаля, где всё подробно написано про епром рид/врайт и дан пример их использования: https://download.mikroe.com/document...om_library.htm
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:04.
|
|