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

 
 
> STM32_SPI_AD7794, Принимаю из АЦП подряд 3 байта, они абсолютно одинаковые.
nx6310
сообщение Jul 7 2010, 04:19
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 28-06-10
Пользователь №: 58 174



Связь STM32 c АЦП AD7794 через SPI. Использую стандартные библиотеки от производителя.Прога на Atomic TrueStudio (аналог Eclipse ). Для чтения из АЦП 24 битных данных использую псоледовательно прием 3 байтов. При этом они получаются абсолютно одинаковыми по значению. Кто нибудь сталкивался с этим?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
nx6310
сообщение Jul 12 2010, 18:05
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 72
Регистрация: 28-06-10
Пользователь №: 58 174



Она в нутри функции SPI_I2S_ReceiveData(SPI2) в библиотеку засунул я её. С SPI разобрался, данные передаются и принимаются Спасибо вам большое!!!. Шяс проблема с переключением каналов АЦП. Отдельно по каждому коналу данные принимаются нормально (если один канал исчпользовать). В многоканальном режиме полная хрень получаетсяsad.gif
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Jul 12 2010, 18:50
Сообщение #3


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Цитата(nx6310 @ Jul 13 2010, 00:05) *
Она в нутри функции SPI_I2S_ReceiveData(SPI2) в библиотеку засунул я её.

А, понятно. Это зря, на мой взгляд. Библиотеку лучше было не трогать, лучше было написать свою функцию. Чтоб не запутаться потом.

Что касается нынешней проблемы - она оттого, что вы неверно читаете готовность АЦП.
Функция GPIO_ReadOutputDataBit(), которую вы используете, читает состояние выходной защёлки порта. То есть, то, что вы записали в этот порт. А для чтения входа надо применять функцию GPIO_ReadInputDataBit().


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- nx6310   STM32_SPI_AD7794   Jul 7 2010, 04:19
- - AHTOXA   Чтобы прочитать байт из SPI, надо записать туда ка...   Jul 7 2010, 10:59
- - nx6310   Я пользуюсь стандартной библиотечной функцией. АЦП...   Jul 7 2010, 11:08
|- - AHTOXA   Давайте код, посмотрим.   Jul 7 2010, 12:04
- - nx6310   Вот код. АЦП в режиме постоянного преобразования. ...   Jul 8 2010, 02:38
|- - AHTOXA   Цитата(nx6310 @ Jul 8 2010, 08:38) Код w...   Jul 8 2010, 07:22
|- - demiurg_spb   Да. Стандартная наколка spi-нубов:-) Чем SPI хорош...   Jul 9 2010, 17:50
- - nx6310   А как переключать каналы в АЦП. Я выбираю канал, п...   Jul 12 2010, 03:04
|- - demiurg_spb   Вы datasheet вообще-то открывали? Уж больно странн...   Jul 12 2010, 11:03
- - nx6310   Даташит читал. Сначала иницилизирую АЦП. Включаю б...   Jul 12 2010, 11:28
|- - AHTOXA   Цитата(nx6310 @ Jul 12 2010, 17:28) Код w...   Jul 12 2010, 16:53
- - nx6310   функцию GPIO_ReadInputDataBit() поменял. Длительно...   Jul 13 2010, 04:23
|- - AHTOXA   Цитата(nx6310 @ Jul 13 2010, 10:23) функц...   Jul 13 2010, 08:30
- - nx6310   Косяк был всё таки в SPI. Я думал что библиотечные...   Jul 20 2010, 04:52


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 01:15
Рейтинг@Mail.ru


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