Project

General

Profile

R1 I2S » History » Version 3

krufter_multiclet, 06/16/2015 11:50 AM

1 1 krufter_multiclet
h1. I2S Мультиклет R1 
2 1 krufter_multiclet
3 1 krufter_multiclet
Особенности:
4 1 krufter_multiclet
1) Работает в режиме "ведущий" и "ведомый"
5 1 krufter_multiclet
2) Выбор разрядности сэмпла от 16 до 32 бит
6 1 krufter_multiclet
3) Глубина буфера приемника-передатчика 32 строки
7 1 krufter_multiclet
4) Предделитель синхронизирующей частоты
8 1 krufter_multiclet
9 1 krufter_multiclet
Статусный бит LSBF означает, что 16 строк общего буфера заполнены.
10 1 krufter_multiclet
Статусный бит HSBF означает, что все 32 строки общего буфера заполнены.
11 1 krufter_multiclet
12 2 krufter_multiclet
*Важно:* на передачу контроллер I2S функционирует в полном объеме. На прием в текущей версии процессора недоступен буфер приема на чтение.
13 2 krufter_multiclet
    Поэтому в текущей версии процессора необходимо программно определять входное значение. Т.е. с помощью GPIOxIN определять текущий уровень 
14 2 krufter_multiclet
    тактирующего сигнала и снимать значение с линии данных(все сигналы кроме линии данных на прием работают штатно).
15 2 krufter_multiclet
16 2 krufter_multiclet
*Регистр конфигурации I2S_CFG:*
17 1 krufter_multiclet
Бит 0 - разрешение работы
18 1 krufter_multiclet
1 - разрешение прерываний
19 1 krufter_multiclet
2 - установка записи левого канала (1 - в нечетные адреса, 0 - в четные адреса)
20 1 krufter_multiclet
3 - выбор режима (1 - ведущий, 0 - ведомый)
21 1 krufter_multiclet
4 - прием или передача данных (1 - передача, 0 - прием)
22 1 krufter_multiclet
5-7 - резерв
23 1 krufter_multiclet
8-15 - предделитель (частота работы процессора делится на число записанное а данных битах)
24 1 krufter_multiclet
16-21 - размер сэмпла (16-32)
25 2 krufter_multiclet
22-31 - резерв
26 2 krufter_multiclet
27 2 krufter_multiclet
*Регистр маски прерываний I2S_MSK:*
28 2 krufter_multiclet
0 - нижний буфер LSBF аудио данных заполнен
29 2 krufter_multiclet
1 - верхний буфер HSBF аудио данных заполнен
30 2 krufter_multiclet
2-31 - резерв
31 2 krufter_multiclet
32 2 krufter_multiclet
*Регистр прерываний I2S_INT:*
33 2 krufter_multiclet
0 - нижний буфер LSBF аудио данных заполнен
34 2 krufter_multiclet
1 - верхний буфер HSBF аудио данных заполнен
35 2 krufter_multiclet
2-31 - резерв
36 2 krufter_multiclet
37 2 krufter_multiclet
*Регистр данных I2S_DATA:*
38 2 krufter_multiclet
0-31 - данные на передачу и прием (в текущей версии процессора это регистр только для передачи, см графу "Важно")