реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Абсолютные адреса регистров в ATXmega64A3U, не могу найти
Diusha
сообщение Oct 10 2017, 14:19
Сообщение #1


Вечный студент
***

Группа: Участник
Сообщений: 489
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Давно работаю с мегами. Решил вот на хмеги перейти. Смотрю в ДШ – спагетти. Явно писали не те писатели, что для мег нормальные портянки писали. Ну да ладно, сейчас не об этом.

По существу.
Вот дурацкая система (извините, опять эмоции) адреса регистров писать +0х00, +0х01, ... . А вот к чему это приплюсовывать-то? Ну для некоторых регистров нашел. А вот, в частности, для RCOSC2M не могу найти в ДШ ни на XMEGA-AU ни на конкретно ATXmega64A3U.
Подскажите, пожалуйста, где такое искать?
Go to the top of the page
 
+Quote Post
prottoss
сообщение Oct 10 2017, 14:27
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 719
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Diusha @ Oct 10 2017, 20:19) *
Давно работаю с мегами. Решил вот на хмеги перейти. Смотрю в ДШ – спагетти. Явно писали не те писатели, что для мег нормальные портянки писали. Ну да ладно, сейчас не об этом.

По существу.
Вот дурацкая система (извините, опять эмоции) адреса регистров писать +0х00, +0х01, ... . А вот к чему это приплюсовывать-то? Ну для некоторых регистров нашел. А вот, в частности, для RCOSC2M не могу найти в ДШ ни на XMEGA-AU ни на конкретно ATXmega64A3U.
Подскажите, пожалуйста, где такое искать?

4.23 Register Summary - Production Signature Row

Система не дурацкая, а приспособленная для того, чтобы удобно было создавать программы на С/С++. Сейчас практически у всех МК, в документации такая система отсчета.
Чтобы не выглядеть дураком, обзывая систему дурацкой, курите внимательно мануалы.


--------------------
Go to the top of the page
 
+Quote Post
Diusha
сообщение Oct 10 2017, 16:38
Сообщение #3


Вечный студент
***

Группа: Участник
Сообщений: 489
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Цитата(prottoss @ Oct 10 2017, 19:27) *
4.23 Register Summary - Production Signature Row

И? Адрес-то где?
Чтобы не выглядеть дураком, обзывая других дураками, курите внимательно вопрос, на который пытаетесь ответить.
А система была бы не дурацкой, если бы было написано, напимер,
ABC+0x01
и эту ABC можно было бы легко найти.

Go to the top of the page
 
+Quote Post
VladislavS
сообщение Oct 10 2017, 17:59
Сообщение #4


Местный
***

Группа: Свой
Сообщений: 349
Регистрация: 14-04-05
Из: Москва
Пользователь №: 4 140



Они не отображаются на память. Их надо вычитывать через NVM Controller.

Цитата
33.11.2.14 Read User Signature Row / Production Signature Row
The read user signature row and read production signature (calibration) row commands are used to read one byte from
the user signature row or production signature (calibration) row.
1. Load the Z-pointer with the byte address to read.
2. Load the NVM CMD register with the read user signature row / production signature (calibration) row command
3. Execute the LPM instruction.
The destination register will be loaded during the execution of the LPM instruction.
Go to the top of the page
 
+Quote Post
Diusha
сообщение Oct 10 2017, 19:43
Сообщение #5


Вечный студент
***

Группа: Участник
Сообщений: 489
Регистрация: 11-09-06
Из: Питер
Пользователь №: 20 262



Спасибо, VladislavS
Но еще требуется уточнение.
Я правильно понимаю, что для чтения RCOSC32K («+0х02», п. 4.17.3) нужно
ZH=0x00
ZL=0x02
?
А доступ к CMD = +0x0A (4.15.7) это обращение к памяти (LDS/STS в случае ассемлера) по адресу NVM (=0x01C0) плюс это смещение, т.е. 0x01CA?

И вот кто же догадается, что для того чтобы прочитать калибровочный байт, нужно читать раздел «Self-programming and Boot Loader Support»?
Последний вопрос, конечно, риторический )
Go to the top of the page
 
+Quote Post
VladislavS
сообщение Oct 11 2017, 03:49
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 349
Регистрация: 14-04-05
Из: Москва
Пользователь №: 4 140



Вам больше заняться не чем, кроме как адреса и смещения высчитывать? Производители чипов и компиляторов специально для вас написали хидеры с символьными определениями всех регистров - пользуйтесь!

О риторическом. Эмбеддерский скилл на половину состоит из умения правильно контролэфать. К слову, я никогда в жизни не программировал XMega, но скачать даташит и найти в нём RCOSC и вторым проходом Production Signature Row это что-то около 5 минут.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd February 2018 - 14:25
Рейтинг@Mail.ru


Страница сгенерированна за 0.01013 секунд с 7
ELECTRONIX ©2004-2016