|
ATxMEGA и EERPOM |
|
|
|
Oct 13 2011, 11:47
|
Частый гость
 
Группа: Участник
Сообщений: 105
Регистрация: 9-09-11
Пользователь №: 67 080

|
Пытаюсь написать подпрограммы записи и чтения внутренней EEPROM на асме Нифига не получается, не могу понять почему. Вот что сказано в даташите: 30.11.5.1. Загрузка страничного буфера EEPROM
Данная команда предназначена для записи одного байта в страничный буфер EEPROM.
Запишите в регистр NVM CMD команду загрузки страничного буфера EEPROM Запишите в регистр NVM ADDR0 адрес, по которому выполняется запись. Запишите в регистр NVM DATA0 данные, подлежащие записи. Это приведет к запуску исполнения команды.
30.11.5.4. Запись страницы EEPROM
Данная команда предназначена для записи загруженного страничного буфера EEPROM в одну страницу EEPROM. Запись выполняется только тех ячеек, которые предварительно были загружены в страничный буфер EEPROM.
Запишите в регистр NVM CMD команду записи страницы EEPROM. Запишите в регистр NVM ADDR адрес подлежащей записи страницы EEPROM. Установите бит CMDEX в регистре NVM CTRLA с использованием привязанной ко времени последовательности CCP.
Флаг BUSY регистра NVM STATUS равен единице вплоть до завершения операции.И вот что я нагородил : Код .macro stsi ; Запись в порт IO ldi r16,@1 sts @0,r16 .endm
stsi NVM_CMD,0x33 stsi NVM_ADDR0,0 stsi NVM_DATA0,0b10101010
stsi NVM_ADDR0,0 stsi NVM_CMD,0x34 stsi CPU_CCP,0xD8 stsi NVM_CTRLA,1 после этого устанавливается флаг NVMBUSY, когда он снимается жму ALT+6 смотрю на EEPROM и DATA MAPPED_EEPROM, там везде FF. Че не так делаю ?
|
|
|
|
|
 |
Ответов
|
Oct 17 2011, 18:13
|
Участник

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

|
По идее, считать ревизию контроллера можно чем угодно, а не только JTAG.
Можно попытаться вывести на порт. Находится она в MCU.REVID (младшие 4 бита). 0-ревизия A, 1 - B, ... и т.д.
|
|
|
|
|
Oct 17 2011, 18:56
|
Гуру
     
Группа: Свой
Сообщений: 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'); Что-то типа такого...
|
|
|
|
Сообщений в этой теме
Navovvol ATxMEGA и EERPOM Oct 13 2011, 11:47 Юрий_СВ Делаю так :
(предварительно включаю отображение EE... Oct 13 2011, 13:05 Navovvol Цитата(Юрий_СВ @ Oct 13 2011, 17:05) Дела... Oct 13 2011, 13:22  Юрий_СВ Цитата(Navovvol @ Oct 13 2011, 16:22) Это... Oct 13 2011, 13:44   _Артём_ Цитата(Юрий_СВ @ Oct 13 2011, 16:44) NVM.... Oct 13 2011, 13:56    Юрий_СВ Цитата(_Артём_ @ Oct 13 2011, 16:56) Проб... Oct 13 2011, 14:13     _Артём_ Цитата(Юрий_СВ @ Oct 13 2011, 17:13) Не з... Oct 13 2011, 15:11      Юрий_СВ Цитата(_Артём_ @ Oct 13 2011, 18:11) Из d... Oct 13 2011, 15:22    Navovvol Цитата(_Артём_ @ Oct 13 2011, 17:56) Проб... Oct 14 2011, 05:44     _Артём_ Цитата(Navovvol @ Oct 14 2011, 08:44) В д... Oct 14 2011, 11:55      Navovvol Цитата(_Артём_ @ Oct 14 2011, 15:55) Посм... Oct 14 2011, 12:17       _Артём_ Цитата(Navovvol @ Oct 14 2011, 15:17) Oli... Oct 14 2011, 12:40        Navovvol Цитата(_Артём_ @ Oct 14 2011, 16:40) Это ... Oct 16 2011, 15:58         _Артём_ Цитата(Navovvol @ Oct 16 2011, 18:58) Что... Oct 16 2011, 19:01          Navovvol Цитата(_Артём_ @ Oct 16 2011, 23:01) Врод... Oct 17 2011, 10:13           _Артём_ Цитата(Navovvol @ Oct 17 2011, 13:13) 4-а... Oct 17 2011, 11:29 Navovvol Я запускал только в симуляторе. Всё это дело пишет... Oct 13 2011, 16:53 Юрий_СВ Цитата(Navovvol @ Oct 13 2011, 19:53) Я з... Oct 13 2011, 20:17 Navovvol А в симуляторе AVR Studio 5 для AtXmega вообще воз... Oct 14 2011, 11:41 Navovvol Считал REV.H через JTAG. )) Oct 18 2011, 12:54
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|