Микроконтроллер 1874ВЕ10Т

Интегральные схемы разработки АО "НИИЭТ" с повышенной стойкостью к СВ ВВФ

Модераторы: ea, Alis, pip, gurzzza, _sva_

Alex
Сообщения: 4
Зарегистрирован: 19 ноя 2024, 15:38
Предприятие: ПАО "НПО "Алмаз"

Re: Микроконтроллер 1874ВЕ10Т

Сообщение Alex »

Здравствуйте!
Почему для старта программы из внешней памяти выбран адрес 0х7000 а не 0х200000 или 0x0? При подключении внешней ПЗУ стартовый код должен располагаться по адресу ПЗУ 0х7000, хотя логично было бы разместить стартовый код с адреса ПЗУ 0х0.
С уважением, Александр.
Alex
Сообщения: 4
Зарегистрирован: 19 ноя 2024, 15:38
Предприятие: ПАО "НПО "Алмаз"

Re: Микроконтроллер 1874ВЕ10Т

Сообщение Alex »

Здравствуйте!
При попытке заполнить структуру sys_reg типа SYS_TypeDef, описывающую свойства внешней параллельной шины, выдается ошибка Error[C44] ../main.c(86,2): expression must have pointer type. Фрагмент кода:

Код: Выделить всё

  
#include "NIIET/1874VExxT/1874VE10T.h"
..........................
SYS_TypeDef sys_reg;
............................
sys_reg->BU[0]->ADDRHI = 0x28FFFF;	// CS0 setup  
В чем может быть проблема?
С уважением, Александр.
Alex
Сообщения: 4
Зарегистрирован: 19 ноя 2024, 15:38
Предприятие: ПАО "НПО "Алмаз"

Re: Микроконтроллер 1874ВЕ10Т

Сообщение Alex »

Здравствуйте!
Для доступа к устройствам на внешней шине написал две функции чтения/записи, но компилятор игнорирует header-файл. Код файла mem_io.h:

Код: Выделить всё

#ifndef MEM_IO_H_
#define MEM_IO_H_

static __inline unsigned char read_mem(unsigned char *addr);
static __inline void write_mem(unsigned char *addr, unsigned char value);

#endif /* MEM_IO_H_ */

Код файла mem_io.c:

Код: Выделить всё

#include "mem_io.h"

static __inline unsigned char read_mem(unsigned char *addr)
{
	return *(volatile unsigned char *)addr;
}

static __inline void write_mem(unsigned char *addr, unsigned char value)
{
	volatile unsigned char *local_addr = (volatile unsigned char *)addr;
	*local_addr = value;
}

Если убрать из кода static __inline, то всё компилируется нормально.
В чем может быть проблема?
С уважением, Александр.
sazonovsv
Сообщения: 57
Зарегистрирован: 02 сен 2014, 15:35

Re: Микроконтроллер 1874ВЕ10Т

Сообщение sazonovsv »

Добрый день!

1) Нет ли программы преобразования из формата ELF в формат HEX (аналогичной riscv64-unknown-elf-objcopy), но для Windows 32бита. Хотелось бы избежать переустановки Windows и нескольких десятков программ ради одного преобразования.
2) Правильно ли я понимаю, что общий LDF-файл, формируемый при создании проекта в среде CodeMaster++[28], необходимо редактировать под конкретную реализацию «железа» прикрученного к МК 1874ВЕ10АТ ?
3) Можно ли в LDF-файле объекты data_ini_table, zero_ini_table, interrupt_ini_table, ctor_table, data_тини размещать не в PSRAM (PSRAMF), а размещать в RAM0 (RAM1) ?
4) Как создать библиотечный файл (*.lib) ?
5) Как к проекту подключить библиотечный файл ?
6) Зачем в проекте «UART» при расчете коэффициента деления baud_fcoef появляется дополнительное слагаемое «0.5f» (про которое ничего нет в «Руководстве пользователя») ?
larrson
Сообщения: 12
Зарегистрирован: 04 мар 2024, 11:30
Предприятие: самозанятый

Re: Микроконтроллер 1874ВЕ10Т

Сообщение larrson »

sazonovsv писал(а): 13 апр 2026, 09:58 Добрый день!


3) Можно ли в LDF-файле объекты data_ini_table, zero_ini_table, interrupt_ini_table, ctor_table, data_тини размещать не в PSRAM (PSRAMF), а размещать в RAM0 (RAM1) ?
Добрый день! На 7 странице этой ветки выложен пример ldf-файла с перенаправлением из PSRAM в CMD0:
Вот кусочек:
// PSRAM
data_ini_table
{
FORCE_CONTIGUITY
ALIGN(4)
__data_ini_table_start = .;
INPUT_SECTIONS( $OBJECTS(.ini_addr_data*) )
__data_ini_table_end = .;
} > CMD0
Ответить

Вернуться в «Радиационно-стойкие интегральные схемы»