3.8
6 review
598.91 KB
Everyone
Content rating
0
Downloads
PIC32USB (USB Communication) screenshot 1 PIC32USB (USB Communication) screenshot 2 PIC32USB (USB Communication) screenshot 3 PIC32USB (USB Communication) screenshot 4 PIC32USB (USB Communication) screenshot 5 PIC32USB (USB Communication) screenshot 6 PIC32USB (USB Communication) screenshot 7

About this product

Rating and review

3.8
6 ratings

PIC32USB (USB Communication) description

PIC32 hardwired communication using an OTG USB cable to connect directly to your microcontroller. Note that no extra shield or code libraries are required. All you need to use is Serial.begin(9600).

This simple-to-use app features:

★ 24 buttons to control your microcontroller with a press of the button (see Photo #1)
★ Ability to send/receive data to/from the PIC32 MCU via chat-like terminal view layout (see Photo #2)
★ To change the string, simply long-press any of the buttons (see Photo #3) or use the chat like terminal view to type any string you would like.
★ App auto-launches when PIC32-based boards are connected


On the PIC32 microcontroller use:
Serial.begin(9600);

To read data on the microcontroller sent from the Android device use:
Serial.read();

To send data from the microcontroller to the Android device use:
Serial.print();

See the code example below or visit my website to download more example code files. Depending on the phone or tablet you may have to scroll down to access all 24 buttons.

This will only work with PIC32 boards that have a direct USB connection to the D+ and D- pins on the microcontroller with no other chip in between. My other app called "PICFTDI" supports PIC32 boards with FTDI_USB-to-serial chips.


// Microcontroller code example
String inputString ="";
char incoming = 0;
void setup ()
{
delay(15);
Serial.begin(9600);
delay(50);
pinMode(PIN_LED1, OUTPUT);
digitalWrite(PIN_LED1,LOW);
//Add pinMode for LEDs here, etc
}
void loop ()
{
if(Serial.available()>0)
{
while(Serial.available()>0)
{
incoming = Serial.read();
delay(4);
inputString += String(incoming);
}
//must be exact spelling, no extra spaces
if(inputString == "LED on")
{
digitalWrite(PIN_LED1,HIGH);
delayMicroseconds(1);
Serial.print("LED is now on");
//add code here
}
if(inputString == "LED off")
{
digitalWrite(PIN_LED1,LOW);
delayMicroseconds(1);
Serial.print("LED is now off");
//add code here
}
}
inputString ="";
delay(50);
}



Please note: Due to the hardwired connection to the phone or tablet, this application is use at your own risk. It is recommended to use an OTG USB cable that allows an external power source if you are drawing more than 200mA of current from the device. Be careful to never create a short from power to ground since you have the potential of damaging your USB connection on your device. I have extensively tested this with most of the available PIC32 microcontrollers that have a direct USB connection without a FTDI_USB-to-serial chip in between. If using an OTG USB cable that allows an external power source it is recommended to only use the factory charger that came with the phone or tablet as the external power source.

Thank you for checking out this application. See my website below for more details.
↓ Read more

Version lists