Tartalomjegyzék:

Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 lépés
Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 lépés

Videó: Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 lépés

Videó: Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 lépés
Videó: Warm Up | SancaThon - “Programando com a DragonBoard” | Parte 3 2024, November
Anonim
Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine
Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine

Essa publicação tem como objetivo mostrar os passos requiredários para desenvolver aplicações analógicas usando Dragonboard 410c and Linker Sprite Mezzanine.

1. lépés: Pré Requisitos:

A pris requisitos são:

Plataforma de desenvolvimento (cél):

  • Dragonboard 410c;
  • Linker Sprite Mezzanine;
  • Linux Linaro alapú Debian 17.04.1;
  • Boot image com SPI habilitado;
  • Biblioteca Libsoc.

2. lépés: Como Funciona a Comunicação Analógica Entre Dragonboard 410c E Linker Sprite Mezzanine

Como Funciona a Comunicação Analógica Entre Dragonboard 410c E Linker Sprite Mezzanine
Como Funciona a Comunicação Analógica Entre Dragonboard 410c E Linker Sprite Mezzanine

O Linker Sprite Mezzanine tem chip Chip ADC integrált paraméterek analógikus megoldásokhoz usados através da Dragonboard 410c.

Az ADC chip az MCP3004 és a Dragonboard 410c SPI interfészen keresztül használható.

3. lépés: Habilitando Interface SPI Na Dragonboard 410c

Você pode gerar um novo boot image for Dragonboard 410c com SPI habilitado, or us us esse boot image já compilado and com SPI habilitado.

Como fleshar vagy boot kép Dragonboard 410c -vel?

Após obter vagy boot image com SPI habilitado, vagy próximo passo é fleshar esse boot image with Dragonboard 410c.

4. lépés: Biblioteca Libsoc

libsoc é a biblioteca que vamos usar para desenvolver aplicações analógicas with Dragonboard 410c com Linker Sprite Mezzanine.

Mint dependências da biblioteca libsoc são:

  • épít-elengedhetetlen
  • autoconf
  • automake
  • libtool-bin
  • pkg-config
  • python-dev

sudo apt-get install build-essential autoconf automake libtool-bin pkg-config python-dev

Rögtön! Feito isso, temos vagy ambiente preparado para instatelar a biblioteca libsoc.

5. lépés: Instalando Libsoc Na Dragonboard 410c

Seguem as etapas para instalar a biblioteca libsoc:

wget -c https://github.com/jackmitch/libsoc/archive/0.8.2.zipunzip 0.8.2.zip cd libsoc-0.8.2 autoreconf -i./configure --enable-python = 2 --enable- board = dragonboard410c-with-board-configs make sudo make install sudo ldconfig/usr/local/lib sudo reboot

6. lépés: Példa: csúszó reosztát

Példa: csúszó reosztát
Példa: csúszó reosztát

Figyelembe véve a módot a Sliding Rheostat esteja plugado na porta ADC1 linker Sprite Mezzanine, siga os próximos passos para executar o código.

Código:

#befoglalni

#include #include #include #include #include #include #include #include #include #include "libsoc_spi.h" #include "libsoc_gpio.h" #include "libsoc_debug.h" #define GPIO_CS 18 static uint8_t tx [3], rx [3]; int main () {int adc_value; gpio *gpio_cs; libsoc_set_debug (0); gpio_cs = libsoc_gpio_request (GPIO_CS, LS_SHARED); if (gpio_cs == NULL) {goto fail; } libsoc_gpio_set_direction (gpio_cs, OUTPUT); if (libsoc_gpio_get_direction (gpio_cs)! = OUTPUT) {printf ("Nem sikerült beállítani az OUTPUT irányát! / n"); goto fail; } spi *spi_dev = libsoc_spi_init (0, 0); if (! spi_dev) {printf ("Nem sikerült beszerezni a spidev eszközt! / n"); visszatér EXIT_FAILURE; } libsoc_spi_set_mode (spi_dev, MODE_0); libsoc_spi_get_mode (spi_dev); libsoc_spi_set_speed (spi_dev, 10000); libsoc_spi_get_speed (spi_dev); libsoc_spi_set_bits_per_word (spi_dev, BITS_8); libsoc_spi_get_bits_per_word (spi_dev); tx [0] = 0x01; tx [1] = 0x80; tx [2] = 0x00; while (1) {libsoc_gpio_set_level (gpio_cs, HIGH); usleep (10); libsoc_gpio_set_level (gpio_cs, LOW); libsoc_spi_rw (spi_dev, tx, rx, 3); libsoc_gpio_set_level (gpio_cs, HIGH); adc_value = (rx [1] << 8) & 0b1100000000; adc_value | = (rx [2] és 0xff); printf ("adc_value:%d / n", adc_value); alvás (1); } ingyenes: libsoc_spi_free (spi_dev); sikertelen: if (gpio_cs) {libsoc_gpio_free (gpio_cs); } return EXIT_SUCCESS; }

Salve o código como: slide.c

Fordítsa össze:

gcc slide.c -o dia -lsoc

Projektálás végrehajtása:

sudo./slide

Ajánlott: