Satura rādītājs:

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

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

Video: Desenvolvendo Aplicações Analógicas Para Dragonboard 410c Com Linker Sprite Mezzanine: 6 soļi
Video: Warm Up | SancaThon - “Programando com a DragonBoard” | Parte 3 2024, Novembris
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 needsários para desenvolver aplicações analógicas usando Dragonboard 410c and Linker Sprite Mezzanine.

1. darbība: nepieciešamie nosacījumi:

Os pré requisitos são:

Plataforma de desenvolvimento (mērķis):

  • Dragonboard 410c;
  • Linker Sprite Mezzanine;
  • Linux Linaro bāzes versija Debian 17.04.1;
  • Boot image com SPI habilitado;
  • Biblioteca Libsoc.

2. darbība. 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 um chip ADC integrado para que metodes analógicos possam ser usados através da Dragonboard 410c.

Izmantojot mikroshēmu ADC, izmantojiet MCP3004 un komunicējiet ar Dragonboard 410c saskarni SPI.

3. darbība: Habilitando saskarne SPI Na Dragonboard 410c

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

Vai esat pievienojis Dragonboard 410c attēlu vai sāknēšanas attēlu?

Sākotnēji vai sāknēšanas attēli ir pieejami SPI habilitado, vai arī, ja jums ir nepieciešams boot image ar Dragonboard 410c.

4. darbība: Biblioteca Libsoc

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

Kā atkarīgs no biblioteca libsoc são:

  • būvēt-būtiski
  • 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 vai ambiente preparado para instalar a biblioteca libsoc.

5. solis: Instalando Libsoc Na Dragonboard 410c

Atbilstoši biblioteca libsoc instalācijas posmam:

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-ar-board-configs padara sudo make install sudo ldconfig/usr/local/lib sudo reboot

6. darbība. Piemērs: bīdāmais reostats

Piemērs: bīdāmais reostats
Piemērs: bīdāmais reostats

Uzskata, ka slīdošais reostats ir pieejams daudzās vietās ADC1 vai Linker Sprite Mezzanine, un tas var būt piemērots izpildei vai kodam.

Código:

#iekļaut

#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); ja (gpio_cs == NULL) {goto fail; } libsoc_gpio_set_direction (gpio_cs, OUTPUT); if (libsoc_gpio_get_direction (gpio_cs)! = OUTPUT) {printf ("Neizdevās iestatīt virzienu uz OUTPUT! / n"); gote fail; } spi *spi_dev = libsoc_spi_init (0, 0); if (! spi_dev) {printf ("Neizdevās iegūt spidev ierīci! / n"); atgriezt 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; kamēr (1) {libsoc_gpio_set_level (gpio_cs, HIGH); gulēt (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] un 0xff); printf ("adc_value:%d / n", adc_value); gulēt (1); } bezmaksas: libsoc_spi_free (spi_dev); neizdoties: ja (gpio_cs) {libsoc_gpio_free (gpio_cs); } atgriezties EXIT_SUCCESS; }

Salve o código como: slide.c

Sastādiet kodu:

gcc slide.c -o slide -lsoc

Izpildīt vai projektēt:

sudo./slide

Ieteicams: