Страница 1 из 1

Проблема с EEPROM памятью и оператором DB

Добавлено: Пн фев 24, 2025 14:14:44
BigBirden
всем добрый день! только начинаю познавать прекрасный мир микроконтроллеров и вот решил попробовать попрограммировать. выбрал в качестве МК Atmega328P и написал следующую программу:

.device Atmega328P
.include "m328Pdef.inc"

.CSEG

.ORG 0x20
data: .DB 10,10

.ESEG

.ORG 0x40
data1: .DB 1,2,3

по идее часть с ESEG должна установить в ячейки EEPROM-памяти значения 1, 2 и 3 по адресам 0х40, 0х41 и 0х42, однако когда я проверил EEPROM-память, то результаты меня удивили (отображены на картинке):

Изображение

при этом все адекватно работает, если адрес в директиве ORG установлен в 0х00:

Изображение

немного поигравшись со значениями адреса в директиве ORG я понял, что значения 1, 2 и 3 почему-то смещаются влево, а остальные ячейки заполняются нулями. например, если установить адрес 0х01, то будет так:

Изображение

возникает соответствующий вопрос - кто-нибудь знает, в чем дело? и как это можно исправить?

Re: Проблема с EEPROM памятью и оператором DB

Добавлено: Вт фев 25, 2025 04:14:45
akl
Протеус озорует. :) В студии так
Изображение

Re: Проблема с EEPROM памятью и оператором DB

Добавлено: Вт фев 25, 2025 19:43:26
BigBirden
[uquote="akl",url="/forum/viewtopic.php?p=4686650#p4686650"]Протеус озорует. :)[/uquote]
А можно поподробнее - что за протеус?

Re: Проблема с EEPROM памятью и оператором DB

Добавлено: Вт фев 25, 2025 21:42:01
BOB51
Скорее то программное обеспечение, что у Вас используется. Мы же не гадалки...
В АВР студии (4.19 к примеру) все нормально компилируется.
8)

Re: Проблема с EEPROM памятью и оператором DB

Добавлено: Сб мар 01, 2025 17:59:28
Demiurg
AVR-Studio. 4.19. Так как это продукт производителя МК AVR, это самый адекватный симулятор.

Я уже много лет работаю с AVR. Все свои проекты отлаживаю только в AVR-Studio.

Сидел на асме несколько лет. Потом Си. И всегда отлаживаю свои проекты, программы в симуляторе AVR-Studio.

Для проверки проектов, программ создаю программные закладки.

Скажу сразу. Проверяется логика программы. Работа аппаратной и внешней периферии подразумевается, что там отработано.

Re: Проблема с EEPROM памятью и оператором DB

Добавлено: Пн мар 10, 2025 14:22:08
Demiurg
AVR-Studio 4.19. самая стабильная версия. Новые МК это уже другие версии. Мы пока говорим об обычных МК, выпущенных до передачи avr microchip.

AVR-Studio 4.19 это продукт производителя МК. И это самое верное и надёжное средство. Покажет все правильно. Состояние МК, регистров и периферии. В отдельных случаях придется симулировать самому. Тестовые программные закладки.

Когда вы это поймёте. Все будет ясно.

Чуть позже покажу пример. Авр студио и eseg. Org