реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Связь кодэка с микроконтроллером, PIC18F2455 и IDT82V1054A
zvv
сообщение Sep 21 2006, 12:34
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



Уважаемые специалисты , помогите пожалуйста разобратся с подключением кодэка к микроконтроллеру.

Проблема заключается в следующем :
У меня есть плата , на которой к микроконтроллеру подключен кодэк у которого есть собственный тактовый генератор; связь между ними должна осуществляться посредством интерфейса SPI (соответствующие контакты подключены). Установив связь (не знаю как это можно проверить) начинаю записивать комманды чтения регистров кодэка, но он не отвечает, записываю установку сигналов высокого уровня на его выходах , но они также не устанавливаются. :(
От чего может возникать эта проблема???? Возможно Вы сталкивались с чем-то подобным.

Заранее благодарю Вас за Вашу любезность в предоставлении мне советов , рекомендаций , и любой другой информации.
Go to the top of the page
 
+Quote Post
$ilent
сообщение Sep 26 2006, 09:10
Сообщение #2


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



Цитата(zvv @ Sep 21 2006, 16:34) *
Установив связь (не знаю как это можно проверить) начинаю записивать комманды чтения регистров кодэка, но он не отвечает, записываю установку сигналов высокого уровня на его выходах , но они также не устанавливаются. sad.gif
От чего может возникать эта проблема???? Возможно Вы сталкивались с чем-то подобным.

SPI сконфигурирован правильно?
Go to the top of the page
 
+Quote Post
zvv
сообщение Sep 30 2006, 11:21
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



Цитата($ilent @ Sep 26 2006, 12:10) *
SPI сконфигурирован правильно?


Нет.
Судя по схеме , когда к обоим устройствам подключен внешний генератор на вход sclk, мне необходимо настроить микроконтроллер на slave режим , но после моей настройки он не работает...
И порты настроил , и частоту проверял но оно все равно не работает sad.gif
Go to the top of the page
 
+Quote Post
zvv
сообщение Sep 30 2006, 11:33
Сообщение #4


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



код программы для настройки SPI

void main(void)
WDTCON = 0; // Disable WatchDog timer


/////SPI

SSPCON1 = 0; //reset SPI

TRISB |= 0b00000001; // SDI line as input
TRISC &= ~0b10000000; // SDO line as output
TRISB |= 0b00000010; // SCK line as input
TRISA |= 0b00100000; // SS line as input
TRISA &= ~0b00000100; // RESET pin as output
TRISA &= ~0b00010000; // CS pin as output

RCON |= 0b10000000; // Priority of interrupt enable
INTCON |= 0b11000000; // All interrupt enable. Enable all pheriferal interrupts.
PIR1 &= ~0b00001000; // Clear interrupt flag
PIE1 |= 0b00001000; // Enable SPI interrupt
IPR1 |= 0b00001000; // Set SPI priority to HIGH

SSPSTAT = 0b01000000; // SPI configure
SSPCON1 = 0b00100101; // SPI configure


LATA &= ~0b00000100; // Setting RESET pin as 0
for(i = 0; i < 3000;i++); // Sleep
LATA |= 0b00000100; // Setting RESET pin as 1

LATA &= ~0b00010000; // CS = 0
SSPBUF = 0xA5; // Sending data

После выполнения этого кода на линии SDO состояния не изменяются, те данные не отправляются.
Не могу понять почему sad.gif
Go to the top of the page
 
+Quote Post
$ilent
сообщение Oct 2 2006, 06:17
Сообщение #5


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



Таки правильно, сначала котроллер надо выставить как мастер, запрограмировать кодек и лишь потом переводить в слейв (но зачем???).
Я делаю так: SPI отдельно, AUDIO отдельно.
1. запрограмировал кодек
2. снимаю или подаю данные, но SPI остаётся в мастере.
Go to the top of the page
 
+Quote Post
zvv
сообщение Oct 2 2006, 12:43
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



А можно микроконтроллер сделать master если тактовая частота подведена ко входам spi от внешнего генератора? Если да то нужно просто перевести sck вывод на ввод данных вместо вывода?
Go to the top of the page
 
+Quote Post
$ilent
сообщение Oct 3 2006, 05:40
Сообщение #7


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



Выложи схему, что к чему у тебя подключено...
Go to the top of the page
 
+Quote Post
zvv
сообщение Oct 3 2006, 17:25
Сообщение #8


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



Это все что разрешили дать. Очень надеюсь что этого будет достаточно.

Это все что разрешили дать. Очень надеюсь что этого будет достаточно.

Прикрепленное изображение
Go to the top of the page
 
+Quote Post
$ilent
сообщение Oct 4 2006, 06:27
Сообщение #9


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



не понятно...
опиши подключение SPI и AUDIO, на пример так:
SPI
контроллер - кодек
mosi - mosi
miso -
sck - sck
ss - ss
AUDIO
кодек - контроллер
fsync - portd 7
bclk - portd 6
sdo - portd 5
sdi - portd 4
Go to the top of the page
 
+Quote Post
zvv
сообщение Oct 4 2006, 07:46
Сообщение #10


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



Контроллер Kодек

SDI <-> CO
SDI <-> DX2

SDO <-> CI
SDO <-> DR2

SCK <-> CCLK <-> Внешний тактовый генератор 4,096 МГц
SCK <-> MCLK <-> Внешний тактовый генератор 4,096 МГц
SCK <-> BCLK <-> Внешний тактовый генератор 4,096 МГц

RA4 <-> CS
RA2 <-> RESET

RC2 <-> FS (Меандр с частотой 8 кГц , генерируемый микроконтроллером)
Go to the top of the page
 
+Quote Post
$ilent
сообщение Oct 4 2006, 10:28
Сообщение #11


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



а может так проще?
кодек - контроллер
DR2, CI - SDO
CO - SDI
MCLK, BCLK - SCL, RC0, RC1
F2 - RC2

Всё равно ни чего не понятно... все ноги перепутаны, зачем заводить одну на другую???
И где SPI???
Нарисуй нормальное соединение кодека с контроллером...
Go to the top of the page
 
+Quote Post
zvv
сообщение Oct 4 2006, 14:57
Сообщение #12


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



Прикрепленное изображение
Go to the top of the page
 
+Quote Post
$ilent
сообщение Oct 5 2006, 06:13
Сообщение #13


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



И так, на сколько знаю я...
1. Хоть я и не знаю ПИК, но наводит на странную мысль, что аудио и SPI интерфейсы используют одни и те же ноги.
2. MCLK и BCLK не могут быть подключены в месте ведь это мастер и бит клоки... обычно мастер чаще бита в несколько раз например BCLK = MCLK/4.
3. CO и DX2, CI и DR2 в месте??? странно...
Go to the top of the page
 
+Quote Post
zvv
сообщение Oct 5 2006, 15:54
Сообщение #14


Участник
*

Группа: Новичок
Сообщений: 44
Регистрация: 16-02-06
Пользователь №: 14 382



Мне все это тоже странно , но плату не я делал.......
Go to the top of the page
 
+Quote Post
$ilent
сообщение Oct 6 2006, 06:12
Сообщение #15


Частый гость
**

Группа: Новичок
Сообщений: 116
Регистрация: 14-02-06
Из: Москва. Перово
Пользователь №: 14 296



Цитата(zvv @ Oct 5 2006, 19:54) *
Мне все это тоже странно , но плату не я делал.......

Ну так возьми у них даташиты и сравни со схемой включения...
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th June 2025 - 14:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01483 секунд с 7
ELECTRONIX ©2004-2016