Sisukord:

Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 sammu
Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 sammu

Video: Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 sammu

Video: Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 sammu
Video: Warm Up | SancaThon - “Programando com a DragonBoard” | Parte 3 2024, Juuli
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. samm: nõuded:

Osalised nõuded:

Plataforma de desenvolvimento (sihtmärk):

  • Dragonboard 410c;
  • Linker Sprite Mezzanine;
  • Linux Linaro põhi Debianile 17.04.1;
  • Boot image com SPI habilitado;
  • Biblioteca Libsoc.

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

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

O Linker Sprite Mezzanine kiibi ADC integreeritud parameetri meetodite analüütiliseks võimaluseks on usados através da Dragonboard 410c.

Kasutage ADC kiipi, kasutades MCP3004 ja Dragonboard 410c, mis on ühendatud SPI liidesega.

3. samm: Habilitando liides SPI Na Dragonboard 410c

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

Kas teil on Dragonboard 410c algne pilt või alglaadimispilt?

Kui soovite alglaadimispilti teha, siis SPI habilitado, või kui see on alglaadimispilt Dragonboard 410c.

4. samm: Biblioteca Libsoc

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

Nagu sõltuvad biblioteca libsoc são:

  • ehitamine-hädavajalik
  • autoconf
  • automake
  • libtool-bin
  • pkg-config
  • python-dev

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

Pronto! Feito isso, temos või ambiente preparado para instalar a biblioteca libsoc.

Samm: Instalando Libsoc Na Dragonboard 410c

Seadistage biblioteca libsoc installimise etapp:

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-koos-board-configsiga teeb sudo make install sudo ldconfig/usr/local/lib sudo reboot

6. samm: näide: libisev reostaat

Näide: libisev reostaat
Näide: libisev reostaat

Arvestage, et Sliding Rheostat on mitu portaali ADC1 või Linker Sprite Mezzanine, nii et kui see on saadaval, siis täitke see rakendus.

Código:

#kaasake

#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 staatiline 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) {ei õnnestu; } libsoc_gpio_set_direction (gpio_cs, VÄLJUND); if (libsoc_gpio_get_direction (gpio_cs)! = VÄLJUND) {printf ("Suuna määramine väljundisse ebaõnnestus! / n"); ebaõnnestub; } spi *spi_dev = libsoc_spi_init (0, 0); if (! spi_dev) {printf ("Spidev -seadme hankimine ebaõnnestus! / n"); tagasta 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; samas (1) {libsoc_gpio_set_level (gpio_cs, HIGH); magama (10); libsoc_gpio_set_level (gpio_cs, LOW); libsoc_spi_rw (spi_dev, tx, rx, 3); libsoc_gpio_set_level (gpio_cs, KÕRGE); adc_value = (rx [1] << 8) & 0b1100000000; adc_value | = (rx [2] ja 0xff); printf ("adc_value:%d / n", adc_value); uni (1); } tasuta: libsoc_spi_free (spi_dev); ebaõnnestumine: if (gpio_cs) {libsoc_gpio_free (gpio_cs); } tagasipöördumine EXIT_SUCCESS; }

Salve või código como: slide.c

Koostage kood:

gcc slide.c -o slide -lsoc

Projektimine:

sudo./slide

Soovitan: