Автор Тема: Как поговорить с микросхемой из терминала по SPI?  (Прочитано 3001 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Вопрос, наверняка, простой для тех, кто в теме, но для меня пока не решенный.
Задача проста: есть некое устройство, в которое надо загрузить по SPI несколько регистров. Конечно, можно (и нужно) написать загрузчик на чем-нибудь и вот оно-счастье. Но если взять тот же чип PLL, то содержимое некоторых регистров хотелось бы оперативно менять, чтоб, например, посмотреть как изменятся шумы и т.д. Есть для этого отладочные платы с красивым софтом, но... дорого и не под все есть. Хотелось бы что-то очень простое, дешевое, не требующее знаний в програмировании и удобное в использовании. Например, в простейшем случае что-то подключаемое по USB и с ПО, в котором есть поле DATA, где вводятся биты/байты для загрузки в устройство и кнопочка "Выдать".
Есть такое?
aka RK3X & RC3XC

Оффлайн R3TGM Дмитрий

  • Ветеран
  • *****
  • Сообщений: 2228
  • Репутация: +189/-344
  • N.Novgorod R3TGM
да есть )почти для каждой микросхемы ФАПЧ есть отладочно-демонстрационные платы к ним софт идёт который есть на сайте производителя.Можете взять схему этой платы на том же сайте и сделать свою (повторить фактически ),но со своими особенностями какие вам надо и экспериментируйте долгими зимними вечерами ........... beer это самый верный способ там у вас ошибок меньше будет ибо изначально всё работает , мудрить что то своё - это гораздо дольше - проверено опытом,знаний программирования там не надо . Тупо вбиваете в программе в окна регистров значения и нажимаете запуск,если что то неверное ввели то программа вам сообщит об ошибке. А что то простое - это контроллер и ваша микросхема ,но тут знания написания программы для МК нужны - вам это не подходит под ваши требования 
« Последнее редактирование: 02 Ноябрь 2016, 18:53:57 от R3TGM Дмитрий »
N.Novgorod

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Дмитрий, есть, но дорого. Я понимаю такие цены если это конструкторская работа под массовое изделие, но у нас не так. К тому же зачастую приходится работать и раритетными вещами. К ним ничего нет. PMB2306 например )))
Я-то спрашивал про некоторое недорогое готовое устройство для универсального применения. Надо всего-то иметь возможность выдать сколько-то там бит по SPI. Неужели на тумблерах только? ))))
aka RK3X & RC3XC

Оффлайн R3TGM Дмитрий

  • Ветеран
  • *****
  • Сообщений: 2228
  • Репутация: +189/-344
  • N.Novgorod R3TGM
Так а как вы по spi при помощи тумблеров выдадите - не получиться это протокол там идут синхроимпульсы по тактовому clk проводу шины ) а по проводу data  идут информационные биты ,так же есть провод enable  это сигнал при нуле (обычно ) разрешается приём устройством бит с провода data
N.Novgorod

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Так а как вы по spi при помощи тумблеров выдадите - не получиться
Получится, защиту от дребезга надо только. Три тумблера - EN, CLK и DATA. Нудно, но можно. Отвлекусь от темы, но раньше обслуживал я одну чудо-систему, где ключи были на 155РЕ3. Так вот программатор для этих ключей был именно такой: отдельно кнопки адреса, отдельно кнопки данных и кнопка "запись". Но сейчас-то времена другие!
aka RK3X & RC3XC

Оффлайн R3TGM Дмитрий

  • Ветеран
  • *****
  • Сообщений: 2228
  • Репутация: +189/-344
  • N.Novgorod R3TGM
существует минимальная скорость на которой он работает .........если конечно микросхема поддерживает статический режим ввода - то может и реально )) но замудохаетесь ..... проще программирование освоить раз и навсегда
N.Novgorod

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Дмитрий, я умею написать загрузчик на ATTiny13 на ассеблере )))
Но переписывать ее каждый раз для экспериментов с регистрами PLL... можно, конечно. Вопрос и заключался в том, как оперативно выдать данные из компьютера (не из загрузчика) по SPI во внешнее устройство без отладочных device specific плат?
aka RK3X & RC3XC

Оффлайн R3TGM Дмитрий

  • Ветеран
  • *****
  • Сообщений: 2228
  • Репутация: +189/-344
  • N.Novgorod R3TGM
не мучайтесь с компом ) а в вашем загрузчике - значения регистров выдавать - более лучший способ чем с компа ))Если ассемблер знаете - то Си быстро поднимете - пропишете через дерективу  #define в заголовке текста программы - значения ваших регистров  и меняйте её сколько хотите

#define N 20
 
int a[N];
int x;
 
void func (void)
{
  int i;
  for (i = 0; i < N; i++)
    x += a;
}


после работы препроцессора будет выглядеть так


int a[20];
int x;
 
void func (void)
{
  int i;
  for (i = 0; i < 20; i++)
    x += a;
}
« Последнее редактирование: 02 Ноябрь 2016, 20:46:07 от R3TGM Дмитрий »
N.Novgorod

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Советы все важны, спасибо Дмитрий!
aka RK3X & RC3XC

Оффлайн R3KBF Петр

  • Ветеран
  • *****
  • Сообщений: 1286
  • Репутация: +478/-15
  • Воронеж
  • QRA: KO91PO
ИМХО. Самое простое ПО - это терминалка типа Putty, т.е. под PC ничего писать не надо. И нужен микроконтроллер с SPI и UART (или USB) на борту, но тут надо будет писать код. Фактически это мост UART-SPI или USB-SPI. Наверно есть и другие варианты, но мне проще под МК прошивку написать.  Если есть необходимость помогу. Пишите.

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Ээээх, а хочется как свободный художник выдать в шину BC0H, 251H, A02H и посмотрев на результат выдать BE0H и посмотреть, как изменившийся параметр повлиял на шумовые характеристики.
aka RK3X & RC3XC

Оффлайн RW3XL Игорь

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 3931
  • Репутация: +926/-47
  • QRA: KO84dm
Фактически это мост UART-SPI или USB-SPI
Петр спасибо! Вероятно это то, что я ищу. Буду читать!
aka RK3X & RC3XC

Оффлайн RM5P

  • Очный чемпионат
  • Ветеран
  • *****
  • Сообщений: 644
  • Репутация: +196/-4
  • QRA: KO84VH
Игорь, я использую arduino для таких вещей.
Код - три строчки, поменять регистры и перешить дело нескольких секунд. Все через USB.
Цена рублей 500, а то и меньше.
Best regards and 73!
Gleb RM5P