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

 
 
> Термодатчик AD7814 по SPI, Чтение регистра температуры
junkl
сообщение Nov 16 2007, 07:25
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 69
Регистрация: 12-10-05
Из: Калуга
Пользователь №: 9 539



Здравствуйте!
Кто-нибудь реализовывал работу с температурным датчиком AD7814 по SPI?
Подкажите, как настроить SPI Chip Select Register (CSR1)?
В описании AD7814 написано "Data is clocked out on the falling edge of SCLK",
поэтому в CSR1 задаю AT91C_SPI_CPOL = 1, AT91C_SPI_NCPHA = 0. Это правильно?
В считываемых шестнадцати битах какие 10 бит являются данными D9..D0?
Присутствует ли в в этих 16 считанных битах LEADING ZERO?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
SDS28
сообщение Nov 16 2007, 07:51
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 16-03-05
Пользователь №: 3 407



Цитата(junkl @ Nov 16 2007, 11:25) *
... задаю AT91C_SPI_CPOL = 1, AT91C_SPI_NCPHA = 0. Это правильно?

правильно.
Цитата(junkl @ Nov 16 2007, 11:25) *
В считываемых шестнадцати битах какие 10 бит являются данными D9..D0?
Присутствует ли в в этих 16 считанных битах LEADING ZERO?

младшие 10 бит являются данными D9..D0, а остальные LEADING ZERO.
Go to the top of the page
 
+Quote Post
junkl
сообщение Nov 16 2007, 08:04
Сообщение #3


Участник
*

Группа: Новичок
Сообщений: 69
Регистрация: 12-10-05
Из: Калуга
Пользователь №: 9 539



Спасибо за быстрый ответ!

В чем тогда у меня может быть проблема? Я читаю несколько раз по 16 бит, получаю непонятные значения:
0b0010110011111111
0b0000110111111111
0b0010111111111111
0b0010110100000000
0b0010110100000000

Если считать младшие биты (справа) за значение температуры, то она получается либо отрицательной, либо слишком большой (и вообще значение нестабильно), а LEADING ZERO вообще непонятно где.
Что может быть неправильно настроено?
Я настроила Baud rate на 1МГц, а вот задержки не знаю, какие нужны...
Go to the top of the page
 
+Quote Post
SDS28
сообщение Nov 16 2007, 08:42
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 16-03-05
Пользователь №: 3 407



Прошу прощения за неправильную информацию, попутал микросхемы.

Bit16 Bit15 Bit14 ... Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
LEADING ZERO D9 D8 ... D0 D0 D0 D0 D0 D0 D0

вот так правильно smile.gif
Go to the top of the page
 
+Quote Post
junkl
сообщение Nov 16 2007, 08:59
Сообщение #5


Участник
*

Группа: Новичок
Сообщений: 69
Регистрация: 12-10-05
Из: Калуга
Пользователь №: 9 539



Цитата(SDS28 @ Nov 16 2007, 11:42) *
Прошу прощения за неправильную информацию, попутал микросхемы.

Bit16 Bit15 Bit14 ... Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0
LEADING ZERO D9 D8 ... D0 D0 D0 D0 D0 D0 D0

вот так правильно smile.gif


Спасибо, а почему тогда значения все равно получаются сильно разными и сильно большими, например, 90-95 град.? У меня тут прохладно :-)
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 29th July 2025 - 06:48
Рейтинг@Mail.ru


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