http://www.forum.getchip.net/ |
|
SPI для Tiny http://www.forum.getchip.net/viewtopic.php?f=16&t=348 |
Страница 1 из 2 |
Автор: | mcmega [ 12 мар 2013, 19:06 ] |
Заголовок сообщения: | SPI для Tiny |
Ребята, столкнулся с SPI. Прошу помощи!!! Давайте подробнее разберём организацию SPI для МК Tiny. Предлагаю начать с ATTiny2313 (USI). Как настроить, за что отвечают галочки в надстройщике, может какие особености есть? Как передать биты ВАМ или ШИМ по SPI на регистр сдвига 595? (когда ножек МК не хватает) Примеров вроди в инете есть, но хотелось бы на АВ. Создать, так сказать, небольшую библиотеку по SPI. Помогите разобраться!!! |
Автор: | GetChiper [ 12 мар 2013, 20:14 ] |
Заголовок сообщения: | Re: SPI для Tiny |
ATtiny2313 очень не показателен для SPI. Вот как выглядит работа SPI: Для других АВР - немного проще: |
Автор: | mcmega [ 12 мар 2013, 20:34 ] |
Заголовок сообщения: | Re: SPI для Tiny |
А Тини45(85)? А как настроить SPI через надстройщик? В примере выше организован програмно или через USI? Есть смысл через USI настраивать? Скиньте пример какой |
Автор: | GetChiper [ 12 мар 2013, 23:24 ] |
Заголовок сообщения: | Re: SPI для Tiny |
Походу там такая же петруха как и в 2313. |
Автор: | mcmega [ 25 мар 2013, 15:10 ] | ||
Заголовок сообщения: | Re: SPI для Tiny | ||
Разобрался с програмной реализацией SPI через сдвиговый регистр 595. Прикрепил пример для tiny13 (45). В примерах отправляются несколько каналов ШИМ на каждый выход регистра.
|
Автор: | SVN [ 25 мар 2013, 18:32 ] |
Заголовок сообщения: | Re: SPI для Tiny |
Ну вот, а прибеднялся. Давай добивай до конца и выкладывай примеры. Чем больше разных алгоритмов тем и самому в помощь. Да и здесь всегда будет лежать запасной вариант если свой где-то потеряешь. |
Автор: | mcmega [ 25 мар 2013, 18:49 ] |
Заголовок сообщения: | Re: SPI для Tiny |
Пока микрухи не пришли, не могу закончить Кстати как в AB отправлять 12 Битный код по SPI? Поясню, микруха TLC5947 представляет собой 24-х канальный светодиодный драйвер с внутренним 12 Битным контроллером ШИМ. Так как ШИМ уже в микре, то контроллер должен отправлять только 12 Битное значение для каждого канала. Но в АВ 12 Бит нет, есть только 8 или 16. Соответственно при отдаче 16 бит, 4 Бита будут лишние. Как можно их отсечь от передачи, чтоб передавать только 12 Бит и соответственно 4096 уровней яркости, а не 65535? |
Автор: | SVN [ 25 мар 2013, 19:24 ] |
Заголовок сообщения: | Re: SPI для Tiny |
Так из большего всегда можно сделать меньшее. Не понял в чём проблема. Передавай из 16 всего 12, а что ему 4 старших бит (нолики) мешают. У тебя программная реализация SPI или аппаратная? |
Автор: | mcmega [ 25 мар 2013, 19:59 ] |
Заголовок сообщения: | Re: SPI для Tiny |
Да, "нолики" помешают, потому что внутри 12-и разрядный регистр, а эти "нолики" отправятся в следующий канал как полезная информация. Я хотел аппаратно, на mege какой-нибудь или tiny (если влезет) . Я хочу привязать к подсветке лестницы. Поэтому буду ждать с нетерпением твоего с Евгением релиза!!! Кстати, чтоб не наступили на грабли, при существующем алгоритме (SVN+MCMega) частота ШИМ на выводах МК уменьшается пропорционально количеству каналов, при 7-и канахах памяти в Tiny2313 уже не остаётся. Поэтому мне кажется более рационально использовать спец. микрухи со встроеным контроллером ШИМ, а МК будет только им управлять. Свободные ресурсы МК можно применить для чего-нибудь ещё |
Автор: | SVN [ 25 мар 2013, 20:56 ] |
Заголовок сообщения: | Re: SPI для Tiny |
Это известно, что программный ШИМ хот и идеально рисует сигнал но жрёт ресурсы МК не по мерно. Так что ШИМ как токовой не рассматриваем. Использовать будем ВАМ, хоть он и не идеален, но при глубоком анализе можно отбросить те значения ВАМа, которые портят картинку и вперёд на баррикады. Использования специальных микросхем это хорошо, но мы то пытаемся сделать конструкцию простой, но в тоже время привлекательной. Так что время покажет, что из этого выйдет. ВАМ уже побеждён, теперь идёт работа над эффектами. |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |