16+
Среда
18 октября
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры AVR

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Ксения  (01.10.2017 17:27 - 01.10.2017 17:31) , в ответ на UPD. Просьба к тем, у кого в руках исходники иаровских библиотек: выложите функцию __x_ML_SRAM_EEPROM_24_16. автор: йцукен
Думаю, что дело тут не столько в IAR, сколько в простоте операций записи/чтения EEPROM у конкретного контроллера. У Tiny и Mega это байтный обмен через регистр, отягощенный лишь ожиданием завершения операции. Поэтому в этом случае поддержка типа 
__eeprom досталась легко. Но в тех случаях, когда доступ к EEPROM блочный, тип __eeprom обычно не поддерживают. Кажется, он и в X-Меге не поддержан, хотя та тоже AVR и, как контроллер, более продвинутая. У IAR для AVR в intrinsics.h определены встроенные функции: #define __EEPUT(ADR,VAL) {while (EECR & 0x02) ; EEAR = (ADR); EEDR = (VAL); EECR = 0x04; EECR = 0x02;} #define __EEGET(VAR, ADR) {while (EECR & 0x02) ; EEAR = (ADR); EECR = 0x01; (VAR) = EEDR;} Именно ими пользуется компилятор, когда пишет или читает из __eeprom. Но можно пользоваться этими функциями напрямую.
 [x][x][x][x][x][x] [x][x][x][x][x][x][x][x]

Тема выделяется по переводу строки или автоматом

 

Имя


Регистрация позволит вам редактировать и перемещать ваши сообщения и прикреплять к ним файлы.
 
Символы: á é ó ú ý « »
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7526 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVII