Автор Тема: передача данных с OPi PC на мк stm8s  (Прочитано 373 раз)

Оффлайн vash_sa

  • Посвященный
  • ***
  • Сообщений: 182
  • Лайков: 13
  • Карма: +0/-5
  • Orange Pi PC v 1.2
    • Просмотр профиля
передача данных с OPi PC на мк stm8s
« : Июль 28, 2016, 11:29:37 am »
Приветствую всех! Возникла задачка передать текстовые данные с OPI PC на микроконтроллер stm8s. У обоих устройств есть порты SPI и I2C. Посоветуйте, что лучше использовать для передачи? Передача однонаправленная только с OPI PC на stm8s. У устройств разные уровни OPI PC работает с сигналами 3,3 В, а  stm8s - с 5 В. Я так понимаю нужна схема согласования уровней. У меня есть биполярные транзисторы BC847 (npn). Можно ли на них собрать схему согласования? Может кто поделится куском кода передачи данных по I2C в СИ. Можно с использованием WiringPI. С OPC PC (в режиме Мастер) на устройство (в режиме Слэйв).
Очень буду благодарен любой помощи. Спасибо за участие!

Оффлайн vash_sa

  • Посвященный
  • ***
  • Сообщений: 182
  • Лайков: 13
  • Карма: +0/-5
  • Orange Pi PC v 1.2
    • Просмотр профиля
Re: передача данных с OPi PC на мк stm8s
« Ответ #1 : Июль 28, 2016, 12:51:14 pm »
У контроллера stm8s слишком тугой I2C, поэтому решил остановиться на SPI. Но в WiringPI требует загрузки модуля spi-sun7i, которого в Армбиане просто нет. Подскажите как быть?

Оффлайн ilya_rad

Re: передача данных с OPi PC на мк stm8s
« Ответ #2 : Июль 31, 2016, 11:54:12 pm »
А какие объемы данных тебе передавать надо?
Если небольшие - несколько  десятков байт за раз, то я бы использовал UART - никаких согласований уровней делать не надо..

Оффлайн AlDemin

  • Житель
  • ****
  • Сообщений: 402
  • Лайков: 101
  • Карма: +13/-1
  • OPi, OPi+, OPiOne, OPiZero, OPiPC2, BPi, RPiB.
    • Просмотр профиля
Re: передача данных с OPi PC на мк stm8s
« Ответ #3 : Август 01, 2016, 11:25:53 am »
Модуля нет, потому, что драйвер непосредственно в ядре, и грузить отдельно его не нужно, достаточно вклюяить SPI в script.bin
Почему в ядре а не модулем - Н3 умеет грузиться со SPI-flash и для этого драйвер SPI должен быть вкомпилен в ядро.