Top Banner

of 21

DN CEC Develop Apps Embedded Android Networking Day1

Jun 04, 2018

Download

Documents

Marsala Nisto
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    1/21

    Develop Apps for Embedded AndroidNetworking

    01/13/2014

    Fred Eady

    Class 1: A Basic4Android Wireless Digital I/O App

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    2/21

    A Basic4Android Wireless Digital I/O App

    Basic4Android Serial Library

    Code a Simple Bluetooth Engine

    Setup and Code the Remote Device Basic4Android RandomAccessFile Library

    Code a Data Communications Activity

    Combine the Simple Bluetooth Enginewith a Communications Activity toProduce a Remote Control App

    2

    AGENDA

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    3/21

    A Basic4Android Wireless Digital I/O App

    Allows Communication with Bluetooth Devices Functionality Based on RFCOMM

    Usage Based on the Serial Object Properties

    Allows Administration of the Bluetooth AdapterUsing the BluetoothAdmin Object

    3

    Basic4Android Serial Library

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    4/21

    A Basic4Android Wireless Digital I/O App

    4

    Code a Simple Bluetooth EngineStep 1: Declare the Global Variables

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    5/21

    A Basic4Android Wireless Digital I/O App

    5

    Code a Simple Bluetooth EngineStep 2: Code the bluAdmin/ bluSPP Object InitializationStep 3: Write Code to Load Layout the File simpleEngine

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    6/21

    A Basic4Android Wireless Digital I/O App

    6

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    7/21

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    8/21

    A Basic4Android Wireless Digital I/O App

    8

    Code a Simple Bluetooth EngineStep 5: Write the Bluetooth Administration Code

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    9/21

    A Basic4Android Wireless Digital I/O App

    9

    Code a Simple Bluetooth EngineStep 6: Write the Device Discovery Code

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    10/21

    A Basic4Android Wireless Digital I/O App

    10

    Code a Simple Bluetooth EngineStep 7: Write the Device Selection/Connection Code

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    11/21

    A Basic4Android Wireless Digital I/O App

    11

    Code a Simple Bluetooth EngineStep 8: Test Our Simple Bluetooth App

    Attempt to connect to EDTPBLU.

    1234 and CONNECTED

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    12/21

    A Basic4Android Wireless Digital I/O App

    12

    Setup and Code the Remote Device

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    13/21

    A Basic4Android Wireless Digital I/O App

    13

    Setup and Code the Remote Device

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    14/21

    A Basic4Android Wireless Digital I/O App

    14

    Setup and Code the Remote DevicePIC32MX Atomic Port I/O Operations

    TRISxSET - TRISxCLR

    PORTxSET PORTxCLR - PORTxINV

    LATxSET

    LATxCLR

    LATxINV

    TRISACLR = 0x0001 RA0 = OUTPUT

    TRISASET = 0x0001 RA0 = INPUT

    LATASET = 0x0001 RA0 = 1

    LATAINV = 0x0001 RA0 = 0

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    15/21

    A Basic4Android Wireless Digital I/O App

    15

    Setup and Code the Remote DeviceStep 1: Define the WF32 LEDs 5 and 6.

    Step 2: Code the LED Command Handler.

    TRISFCLR = 0x0001; //WF32 RF0 = OUTPUT - LED5

    TRISGCLR = 0x0040; //WF32 RG6 = OUTPUT - LED6

    if(CharInQueue()) //print received character

    {

    biteIn = recvchar();switch(biteIn)

    {

    case 0x35:

    LATFINV = 0x0001; //LED5

    break;

    case 0x36:LATGINV = 0x0040; //LED6

    break;

    }

    }

    This code is added to the main

    function of the EDTP EmbeddedBluetooth Driver.

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    16/21

    A Basic4Android Wireless Digital I/O App

    Bluetooth Usage Based on the AsyncStreamsObject Properties

    Allows Reading and Writing to I/O Streams

    Without Blocking the Main Thread Facilitates Easy Movement of Any Amount of

    Data

    Easily Transports Files, Arrays and Objects

    16

    Basic4Android RandomAccessFile Library

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    17/21

    A Basic4Android Wireless Digital I/O App

    17

    Code a Data Communications Activity

    Step 1: Declare the Global Variables

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    18/21

    A Basic4Android Wireless Digital I/O App

    18

    Code a Data Communications Activity

    Step 2: Code the Layout Sequence and Pipe Initialization.

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    19/21

    A Basic4Android Wireless Digital I/O App

    19

    Code a Data Communications Activity

    Step 3: Code the Button Event Handlers

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    20/21

    A Basic4Android Wireless Digital I/O App

    20

    A Bluetooth Remote Control App

  • 8/13/2019 DN CEC Develop Apps Embedded Android Networking Day1

    21/21

    A Basic4Android Wireless Digital I/O App

    21

    Day 1 Topic Review

    We Used BluetoothAdmin and SerialObjects to Spawn a Bare Bones BluetoothEngine.

    We Used a Digilent WF32 to Create anEmbedded Bluetooth-Capable Device.

    We Attached an AsyncStreams-Based

    Basic4Android Module to Our SimpleBluetooth Engine and Built a Useful

    Android App.