Cравнение с шиной I2C
Как уже упоминалось, для стыковки микросхем не меньшей популярностью пользуется 2-проводная последовательная шина I2C. Ниже можно ознакомиться с преимуществами, которая дает та или иная последовательная шина.
Производные и совместимые протоколы MICROWIRE. Протокол MICROWIRE компании National Semiconductor полностью идентичен протоколу SPI в режиме 0 (CPOL = 0, CPHA = 0). 3-проводной интерфейс компании Maxim Отличие этого интерфейса состоит в том, что вместо полнодуплексной передачи по двум однонаправленным линиям здесь выполняется полудуплексная передача по одной двунаправленной линии DQ. QSPI Более высокоуровневый протокол, чем SPI, позволяющий автоматизировать передачу данных без участия ЦПУ. Кроме того, интерфейс SPI является основой для построения ряда специализированных интерфейсов, в т.ч. отладочный интерфейс JTAG и интерфейсы карт Flash-памяти, в т.ч. SD и MMC. Табл. 1. Электрические сигналы шины SPI
Пример программной реализации Ниже представлен пример программной реализации SPI мастера на языке Си. Линия «chip select» (выбор микросхемы) должна быть активирована (в большинстве случаев это означает-притянута к низкому уровню), перед тем, как начнётся обмен данными, и деактивирована после окончания обмена. Большинство устройств требуют несколько сеансов передачи с активной линией chip select. Эта процедура может быть вызвана несколько раз, пока линия активна. unsigned char SPIBitBang8BitsMode0(unsigned char byte) { unsigned char bit; for (bit = 0; bit < 8; bit++) { /* записать MOSI по спаду предыдущего тактового импульса */ if (byte & 0x80) SETMOSI(); else CLRMOSI(); byte <<= 1; /* ждём половину тактового периода перед тем как сгенерировать фронт */ SPIDELAY(SPISPEED/2); SETCLK(); /* ждём половину тактового периода перед тем как сгенерировать спад */ SPIDELAY(SPISPEED/2); /* читаем MISO on trailing edge */ byte |= READMISO(); CLRCLK(); }
return byte; }
Литература 1. Описание SPI от FreeScale: SPI Block Guide V03.06, FreeScale Semiconductor. Доступна здесь: http://www.freescale.com/files/microcontrollers/doc/ref_manual/S12SPIV3.pdf 2. MICROWIRE™ Serial Interface. National Semiconductor Application Note 452, Abdul Aleaf, Jan. 1992. www.national.com/an/AN/AN-452.pdf 3. SPI — Serial Peripheral Interface. Статья с описанием основ интерфейса и большой таблицей периферийных устройств с SPI. http://www.mct.net/faq/spi.html 4. Николайчук О. Особенности микроконтроллерных архитектур с интерфейсом SPI//Схемотехника. 2005. № 12. http://www.silabs.ru/publication.php 5. ADuC70xx Series: Precision Analog Microcontroller, 12-Bit Analog I/O, ARM7TDMI MCU Data Sheet (Rev B, 04/2007) (pdf, 1130 kB). http://www.analog.com/static/imported-files/data_sheets/ADUC7019_7020_7021_7022_7024_7025_7026_7027_7028.pdf 6. http://en.wikipedia.org/wiki/SPI_bus 7. Описание QSPI от FreeScale: QSM QUEUED SERIAL MODULE Reference Manual. http://www.freescale.com/files/microcontrollers/doc/ref_manual/QSMRM.pdf 8. Описание SPI от Microchip: www.microchip.com/downloads/en/devicedoc/spi.pdf 9. Руководство пользователя по цифровым сигнальным процессорам семейства BlackFin. Разд. 10. Контроллеры SPI-совместимого порта. http://www.analog.com.ru/ pub_dsp.htm 10. Configuring Xilinx FPGAs with SPI Flash Memories Using CoolRunner-II CPLDs. App. Note XAPP800, XILINX, 2008. www.xilinx.com/support/documentation/application_notes/xapp800.pdf 11. FT245BM — Преобразователь параллельного байтового интерфейса в интерфейс USB от фирмы Future Technology. http://www.ftdichip.com/Products/FT245BM.htm 12. Микросхемы 12-бит АЦП с последовательным интерфейсом MAX1240/MAX1241, техническое описание: MAX1240-MAX1241.pdf, http://www.maxim-ic.com/quick_view2.cfm/qv_pk/1620 13. M68HC11RM/D Rev.6 (M68HC11 Reference Manual, Motorola inc., 1989, … 2002). http://www.pdf-search-engine.com/referencemanual-pdf.html или здесь: http://www.tcc.edu/faculty/webpages/PGordy/EGR270/M68HC11RM.pdf. 14. About SPI. http://elm-chan.org/docs/spi_e.html 15. AD5444: 12-Bit High Bandwidth Multiplying DAC with Serial Interface. http://www.analog.com/en/digital-to-analog-converters/da-converters/AD5444/products/product.html 16. ADSP-BF533 Blackfin Processor Hardware Reference (Revision 3.3, September 2008), Документ bf533hwrRev3.3.pdf. http://search.analog.com/search/default.aspx?local=en&query=bf531+hrm &contentType=Manuals 17. http://www.jtag-technologies.ru/Learn/Standards Міністерство освіти і науки України Житомирський державний технологічний університет Кафедра АУТС Група СІ-64 Реферат на тему: «Интерфейс spi» Виконав: Федотова М. І. Перевірив: Пєтросян Р. В. Житомир 2011
|