[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: RD3AVJ 
Форум » форумы » Общие вопросы по Bascom-AVR » MCP-3551 и SPI интерфейс.
MCP-3551 и SPI интерфейс.
KolesikNNДата: Четверг, 23.08.2012, 11:03 | Сообщение # 1
Группа: Пользователи
Сообщений: 14

Статус: Offline
Нужна помощь. Попал мне в руки 22-х битный АЦП MCP-3551. Кто нибудь работал с похожим девайсом. Нужно получить с него данные, хотябы бит 16-18 из него выжать. Работает по SPI. Может кто чего подскажет, или примерчик какой нибудь.

 
KolesikNNДата: Вторник, 28.08.2012, 14:23 | Сообщение # 2
Группа: Пользователи
Сообщений: 14

Статус: Offline
Люди! Кто нибудь имеет информацию как работать с данным Ацп. Т.е корректно получить результат преобразования? ссылка на даташит http://ww1.microchip.com/downloads/en/devicedoc/21950b.pdf

 
KolesikNNДата: Вторник, 28.08.2012, 17:48 | Сообщение # 3
Группа: Пользователи
Сообщений: 14

Статус: Offline
Разобрался сам, извините за беспокойство. Немного корявенько получилось, но получилось.
Если интересно кому, могу выложить на обсуждение. biggrin


 
exersizzeДата: Вторник, 28.08.2012, 18:34 | Сообщение # 4
Группа: Администраторы
Сообщений: 719

Статус: Offline
выкладывай! всегда может пригодится.

 
KolesikNNДата: Среда, 29.08.2012, 10:33 | Сообщение # 5
Группа: Пользователи
Сообщений: 14

Статус: Offline
Из даташита можно увидеть что первый три бита указывают на полярность и предел измерения, они мне не нужны, я ими пренебрегаю. Замеряю однополярное напряжение, ИОН на 4.096 Вольт. Беру правда только 16 бит. А программа вот, прошу сильно не пинать если кому что не понравиться.
$regfile = "m8def.dat"
$crystal = 8000000
$baud = 9600
$large
'***Переменные
Dim A As Word
Dim B As Single
Dim I As Single

Config Portc = &B11111101

Cs Alias Portc.2
Sck Alias Portc.0

'CS - PORTC.2; SDO - PORTC.1; SCK - PORTC.0

'*** Конфигурация ЖКИ

Config Lcdpin = Pin , Rs = Portd.2 , E = Portd.3 , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7
Config Lcd = 16 * 2

Cls
Cursor Off
Set Cs

Do

Reset Cs
Waitms 10
Bitwait Pinc.1 , Reset
Waitms 10
Pulseout Portc , 0 , 20
Pulseout Portc , 0 , 20
Pulseout Portc , 0 , 20

Shiftin Pinc.1 , Portc.0 , A , 0

Waitms 10

Set Cs

B = A
B = B * 100000
I = B / 1599975586

Cls
Lcd Fusing(i , "##.#####" ) ' для вывода на дисплей мне нужно 5 знаков после запятой
Locate 1 , 9
Lcd "Volt"
Waitms 200

Loop
End 'end program


 
niko-layДата: Суббота, 01.09.2012, 11:25 | Сообщение # 6
Группа: Проверенные
Сообщений: 19

Статус: Offline
Я заметил что используете для приема по SPI команду shiftin, а почему не Spiin? Интересует как у этого АЦП с показаниями, сильно скачат?

 
KolesikNNДата: Среда, 05.09.2012, 15:10 | Сообщение # 7
Группа: Пользователи
Сообщений: 14

Статус: Offline
Spiin не подходит по фазе. Команда Shiftin может работать в нескольких режимах. Режим 0 подходит для данной ацпшки.(см. Даташит и учебник по Барсику). Про сам АЦП скажу, что я с него беру 16 бит, работает отлично, на всю не пробывал выжимать не знаю. Могу лишь сказать что данный девайс инструментальный, работает медленно(время преобр.73.1 ms) но верно.

 
topДата: Вторник, 04.12.2012, 02:19 | Сообщение # 8
Группа: Друзья
Сообщений: 146

Статус: Offline
73,1 мс вполне отличный показатель при 22х битах. Что уж говорить про AVRовский 10ти битный с, в среднем, 100 мс.



Сообщение отредактировал top - Вторник, 04.12.2012, 02:20
 
marss70Дата: Среда, 02.01.2013, 20:03 | Сообщение # 9
Группа: Проверенные
Сообщений: 80

Статус: Offline
В Протеусе значения после запятой скачут- а в железе как?

 
KolesikNNДата: Воскресенье, 06.01.2013, 17:01 | Сообщение # 10
Группа: Пользователи
Сообщений: 14

Статус: Offline
Выкиньте н@хрен протеус. Я беру 16 бит. измеряю микровольты, значения стоят железно. Пробуйте всё в реале. Протеус не рулит.

 
marss70Дата: Суббота, 12.01.2013, 01:37 | Сообщение # 11
Группа: Проверенные
Сообщений: 80

Статус: Offline
Ну я бы не стал так уж обижать Протеус. Хорошая программа. Кстати, люди добрые написали программку для mcp3551 на СИ, так она в Проте себя прекрасно чувствует и думаю, что в "железе" всё будет хорошо. Придёт заказик с mcp- посмотрим. А ещё в продолжение темы, хотел бы предложить Уважаемому KolesikNN, попробовать силы в подключении более дешёвого собрата mcp3421. Битов поменьше, но и цена в три раза дешевле...



Сообщение отредактировал marss70 - Суббота, 12.01.2013, 01:59
 
Форум » форумы » Общие вопросы по Bascom-AVR » MCP-3551 и SPI интерфейс.
Страница 1 из 11
Поиск: