Девайс, позволяющий через com-порт с помощью обычной терминалки общаться с устройствами по интерфейсу SPI (на контроллере ATTiny2313)
З.Ы. Прога будет на днях, уже тестил её с max7219, с пятью подключенными семисегментными индикаторами, - довольно таки прикольно.
SPI-шлюз для компьютера
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
SPI-шлюз для компьютера
С уважением, администрация сайта.
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: SPI-шлюз для компьютера
С уважением, администрация сайта.
Re: SPI-шлюз для компьютера
Доброго дня.
В микроэлектронике не силён, знаний хватает на спаял-пользуюсь) Отчего возникла пара вопросов:
1. Зачем 10-я нога max232 подключена к земле?
2. Могу ли я заменить контакты 14-11 соответственно на 7-10? Логика подсказывает, что да, но вдруг есть какие-то подводные камни. И нужно ли будет в данном случае подключать к земле 11 ногу?
В микроэлектронике не силён, знаний хватает на спаял-пользуюсь) Отчего возникла пара вопросов:
1. Зачем 10-я нога max232 подключена к земле?
2. Могу ли я заменить контакты 14-11 соответственно на 7-10? Логика подсказывает, что да, но вдруг есть какие-то подводные камни. И нужно ли будет в данном случае подключать к земле 11 ногу?
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: SPI-шлюз для компьютера
1. Чтоб не оставлять вход висеть в воздухе и не ловить на него всякие наводки.
2. Конечно, без проблем. А 11-ю ногу тогда к земле.![Согласен :rightly:](./images/smilies/new_rightly.gif)
2. Конечно, без проблем. А 11-ю ногу тогда к земле.
![Согласен :rightly:](./images/smilies/new_rightly.gif)
С уважением, администрация сайта.
Re: SPI-шлюз для компьютера
Возник ещё вопрос))
В I2C шлюзе вывод 8 у max232 подключён к земле, а соответствующий вывод 9 идёт к 7 ноге Attiny. По идее со стороны RS232 (нога 8) должно быть либо -10, либо +10, а земля в зоне неопределённости, и что в этом случае выдаст 9 нога я и не знаю. Зачем? И будет ли такое подключение мешать устройству работать в SPI режиме? В статье про SPI шлюз эти дорожки отсутствуют, однако резисторы R2 и R3 для I2C всё ещё есть.
В I2C шлюзе вывод 8 у max232 подключён к земле, а соответствующий вывод 9 идёт к 7 ноге Attiny. По идее со стороны RS232 (нога 8) должно быть либо -10, либо +10, а земля в зоне неопределённости, и что в этом случае выдаст 9 нога я и не знаю. Зачем? И будет ли такое подключение мешать устройству работать в SPI режиме? В статье про SPI шлюз эти дорожки отсутствуют, однако резисторы R2 и R3 для I2C всё ещё есть.
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: SPI-шлюз для компьютера
Просто когда делался I2C шлюз я ещё не совсем чётко понимал какой будет программная часть, поэтому завёл на всякий случай ещё одну ногу MAX-a (9-ю) в ATtiny, предполагая, что 8-я нога MAX-а будет соединена с com-портом и я там тоже что-нибудь напередаю. В итоге эта нога не пригодилась и я 8-ю ногу MAX-а тупо замкнул на землю (ну привычка просто неиспользуемые входы замыкать на землю или питание). На работоспособности это никак абсолютно не скажется. По идее можно вход на землю и не замыкать, потому что входы RS-232 у MAX-а и так подтянуты на землю внутри самой микрухи через резисторы 5кОм и их спокойно можно оставить в воздухе висеть. Поэтому в схеме SPI-шлюза этого и нет.
Короче говоря, резюмируя всё вышенаписанное, схема SPI-шлюза - это доработанный вариант первой схемы (I2C), хотя работать будут обе. Эти схемы - близнецы братья, только в схеме SPI-шлюза убрано лишнее и добавлен ещё один выход (для SPI надо больше ног). А резисторы оставлены, чтобы SPI-шлюз легко превращался в I2C.
Короче говоря, резюмируя всё вышенаписанное, схема SPI-шлюза - это доработанный вариант первой схемы (I2C), хотя работать будут обе. Эти схемы - близнецы братья, только в схеме SPI-шлюза убрано лишнее и добавлен ещё один выход (для SPI надо больше ног). А резисторы оставлены, чтобы SPI-шлюз легко превращался в I2C.
С уважением, администрация сайта.
- rhf-admin
- администратор, спонсор, писатель, дизайнер, инженер, программист, идеолог
- Сообщения: 3060
- Зарегистрирован: 25 авг 2009, 23:19
- Откуда: Уфа
- Контактная информация:
Re: SPI-шлюз для компьютера
В проге обнаружился косяк. После метки End_Transfer, вот в этой строке:
Комментарий написан правильный, а команда стоит неправильная. Надо заменить sbrc на sbrs (когда шлюз сконфигурен на передачу старшим битом вперёд, у нас 6-й бит в C2 установлен, а не сброшен).
Если ошибку не исправить, шлюз правильно работает только на передачу.
Код: Выделить всё
sbrc C2,6 ; если передавали старшим битом вперёд - пропускаем
Если ошибку не исправить, шлюз правильно работает только на передачу.
С уважением, администрация сайта.