1892ВМ10Я: различия между версиями

Материал из WIKI ELVEES
(Новая страница: « =Вопросы по программному обеспечению= =Вопросы по технической части= =Нестандартные вопросы=»)
 
Нет описания правки
Строка 1: Строка 1:


=Вопросы по программному обеспечению=
 
=Вопросы по технической части=
= Вопросы по программному обеспечению =
=Нестандартные вопросы=
'''Как считать/запись значения регистров СР0 в программе на С?'''
<blockquote>Для работы с регистрами CP0 в языке Си необходимо использовать ассемблерные вставки.<br>
Компилятор GCC предусматривает специальные конструкции, упрощающие работу с такими вставками. Они описаны в документации на компилятор, в частности здесь:  https://gcc.gnu.org/onlinedocs/gcc-4.8.5/gcc/Extended-Asm.html#Extended-Asm
</blockquote>
'''Как сбросить бит EXL регистра CP0 Status? '''
<blockquote>Сброс бита EXL происходит при переключении из привилегированного режима процессора в обычный режим. Такое переключение осуществляется только командой "eret".</blockquote>
 
= Вопросы по аппаратной части =
'''В руководстве пользователя на микросхему в разделе 8.4 "Каналы DMA для портов" указано допустимое число слов данных WN от 8 до 16 слов. Можно ли передавать меньше 8 слов?'''
<blockquote>Да, меньше 8 слов передать можно.<br>Реальное число слов данных, которое надо передать, задаётся через поле WCX.WN – это длина пачки слов, передаваемой по внутренней шине. Посредством этого параметра можно плавно изменять приоритет каналов DMA относительно других устройств и относительно друг друга.</blockquote>
'''Возможно ли настроить SPI c автоматическим выставлением сигнала SS[0] (SS_DO = 0), но с заданием задержки выставления сигнала SS[0] относительно MOSI?'''
<blockquote>Величиной задержки между падением SS в 0 и началом передачи слова можно управлять через регистр TSS_RATE. <br>Сам по себе этот регистр предназначен для управления задержкой между передачей двух слов (т.е. длительностью пребывания SS в 1). Однако вместе с этой величиной пропорционально изменяются ещё и задержки перед установкой SS в 1 и после его падения в 0.</blockquote>
 
= Нестандартные вопросы =

Версия от 14:23, 7 марта 2023


Вопросы по программному обеспечению

Как считать/запись значения регистров СР0 в программе на С?

Для работы с регистрами CP0 в языке Си необходимо использовать ассемблерные вставки.

Компилятор GCC предусматривает специальные конструкции, упрощающие работу с такими вставками. Они описаны в документации на компилятор, в частности здесь: https://gcc.gnu.org/onlinedocs/gcc-4.8.5/gcc/Extended-Asm.html#Extended-Asm

Как сбросить бит EXL регистра CP0 Status?

Сброс бита EXL происходит при переключении из привилегированного режима процессора в обычный режим. Такое переключение осуществляется только командой "eret".

Вопросы по аппаратной части

В руководстве пользователя на микросхему в разделе 8.4 "Каналы DMA для портов" указано допустимое число слов данных WN от 8 до 16 слов. Можно ли передавать меньше 8 слов?

Да, меньше 8 слов передать можно.
Реальное число слов данных, которое надо передать, задаётся через поле WCX.WN – это длина пачки слов, передаваемой по внутренней шине. Посредством этого параметра можно плавно изменять приоритет каналов DMA относительно других устройств и относительно друг друга.

Возможно ли настроить SPI c автоматическим выставлением сигнала SS[0] (SS_DO = 0), но с заданием задержки выставления сигнала SS[0] относительно MOSI?

Величиной задержки между падением SS в 0 и началом передачи слова можно управлять через регистр TSS_RATE.
Сам по себе этот регистр предназначен для управления задержкой между передачей двух слов (т.е. длительностью пребывания SS в 1). Однако вместе с этой величиной пропорционально изменяются ещё и задержки перед установкой SS в 1 и после его падения в 0.

Нестандартные вопросы