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

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> ATxMEGA и EERPOM
Navovvol
сообщение Oct 16 2011, 15:58
Сообщение #16


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 9-09-11
Пользователь №: 67 080



Цитата(_Артём_ @ Oct 14 2011, 16:40) *
Это типа как на заборе...
Ревизия платы или Меги?

Что-то я не подумал, что это могла быть ревизия платы )))
А где обычно указывается ревизия ?
Да и дело не в ревизии. Просто в симуляторе MAPPED_EEPROM и EEPROM не хотят изменяться программно (только если самому редактировать) да и считываться тоже. И вообще в проекте не создается файл .eep (галочка Generate Files напротив .eep стоит)
У меня складывается впечатление, что в AVR Studio 5 EEPROM вообще не симулируется
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Oct 16 2011, 19:01
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Navovvol @ Oct 16 2011, 18:58) *
Что-то я не подумал, что это могла быть ревизия платы )))
А где обычно указывается ревизия ?
Да и дело не в ревизии. Просто в симуляторе MAPPED_EEPROM и EEPROM не хотят изменяться программно (только если самому редактировать) да и считываться тоже. И вообще в проекте не создается файл .eep (галочка Generate Files напротив .eep стоит)
У меня складывается впечатление, что в AVR Studio 5 EEPROM вообще не симулируется

Вроде JTAG-ом считать можно.

Цитата(Navovvol @ Oct 16 2011, 18:58) *
У меня складывается впечатление, что в AVR Studio 5 EEPROM вообще не симулируется


Может быть 5 и не симулирует.
4-я вроде симулировала.


Go to the top of the page
 
+Quote Post
Navovvol
сообщение Oct 17 2011, 10:13
Сообщение #18


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 9-09-11
Пользователь №: 67 080



Цитата(_Артём_ @ Oct 16 2011, 23:01) *
Вроде JTAG-ом считать можно.
Может быть 5 и не симулирует.
4-я вроде симулировала.

4-ая версия не поддерживает AtXmega.
вот что нарыл в хелпе студии

XMEGA devices

Writing/erasing FLASH (using SPM) and EEPROM from application not yet implemented in ATxmega devices (#7611)

Simulation is slow compared to other devices.


Go to the top of the page
 
+Quote Post
_Артём_
сообщение Oct 17 2011, 11:29
Сообщение #19


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Navovvol @ Oct 17 2011, 13:13) *
4-ая версия не поддерживает AtXmega.
вот что нарыл в хелпе студии

XMEGA devices

Writing/erasing FLASH (using SPM) and EEPROM from application not yet implemented in ATxmega devices (#7611)

Simulation is slow compared to other devices.




Да точно, поддерживается только для JTAGICE и тп.
Но важнее версия кристалла.
Смотрите в ApN: их правда не одна версия -
более ранняя -- правильная (в соотв. с описанием), но раннии xmeg-и так писать не умели,
болеее поздняя - с прерываниями sleep-ами и прочей вредной хигнёй, но так писать умеет даже xmeg-и ревизии 0 (но наверно не всеми разрекламированными способами - все не проверял).

Так что нужно проверять в железе и с учётом версии xMega.
Go to the top of the page
 
+Quote Post
Юрий_СВ
сообщение Oct 17 2011, 18:13
Сообщение #20


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 4-05-08
Пользователь №: 37 272



По идее, считать ревизию контроллера можно чем угодно, а не только JTAG.

Можно попытаться вывести на порт.
Находится она в MCU.REVID (младшие 4 бита).
0-ревизия A, 1 - B, ... и т.д.
Go to the top of the page
 
+Quote Post
_Артём_
сообщение Oct 17 2011, 18:56
Сообщение #21


Гуру
******

Группа: Свой
Сообщений: 2 128
Регистрация: 21-05-06
Пользователь №: 17 322



Цитата(Юрий_СВ @ Oct 17 2011, 21:13) *
По идее, считать ревизию контроллера можно чем угодно, а не только JTAG.

Можно попытаться вывести на порт.
Находится она в MCU.REVID (младшие 4 бита).
0-ревизия A, 1 - B, ... и т.д.


Да, Вы совершенно правы... проще чем два байта переслать - всего один байт:
Код
#include "usart_driver.h"

// USARTE0, 9600, 2 MHz
PORTE.DIRSET=(1<<3);
USART_Format_Set(&USARTE0, USART_CHSIZE_8BIT_gc, USART_PMODE_DISABLED_gc, 0);
USART_Tx_Enable(&USARTE0);
USART_SetMode(&USARTE0, 0);
unsigned short uart_divider;
uart_divider=2000000/16/9600/4-1;
USART_Baudrate_Set(&USARTE0, uart_divider, 0);
unsigned char i=MCU.REVID&15;
USART_PutChar(&USARTE0, i+'A');


Что-то типа такого...
Go to the top of the page
 
+Quote Post
Navovvol
сообщение Oct 18 2011, 12:54
Сообщение #22


Частый гость
**

Группа: Участник
Сообщений: 105
Регистрация: 9-09-11
Пользователь №: 67 080



Считал REV.H через JTAG. ))
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 6th July 2025 - 17:27
Рейтинг@Mail.ru


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