We are waiting for the PCB manufacturer for the new prototypes and we plan to start first hundreds pcs production during July. In the meantime we are working on the software side to give the first “hello world” with WI-Fi code to let people start the developments of their applications.
In the beginning will be not available our IDE (we are working on a cross platform porting based on NetBeans) so software must be developed using the standard IDE from Microchip (only for Windows at the moment..sigh!).
We’ll provide a step by step installation guide to let you start development in a few moments.
Yesterday we had a meeting and we think we’ll use some “tricks” to make programming easier and reacheable even from those people that are not familiar with Microcontrollers C++.
On the Header file (hwpicus.h) will define the standard pinout of the module. Anyway advanced user may decide to modify it and have 1 UART more or change Digital Inputs to other kind of peripherals.
Basically we want to make the code very easy to understand and to use and here are some examples:
DIGITAL OUTPUT (and PWM)
Turn on Digital Output OUT5-> set(out5)=1
Turn off Digital Output OUT5-> set(out5)=1
PWM signal Frequency 10kHz, duty 50% on PWM OUT2-> set(out2,50,10)
PWM signal Frequency 100hz, duty 20% on PWM OUT2-> set(out2,20,0.1)
Read the current status of Digital input IN1-> get(in1)
Note: the ADC is 10bits (1024), since the Vref is 2.048V each bit is 2mV
Read the current status of Analog input AIN1-> get(ai1)
INTERRUPS on DIGITAL IN and ANALOG IN
Interrupts are possible to be enabled and disabled.
It’s possible to specify the condition of the interrupt. When the interrupt comes (for example on digital input in1) the called function must be named int_in1
Enable Interrupt on Digital Input IN1 on fall (from 1->0) -> interrupt(in1,on,fall)
Enable Interrupt on Digital Input IN2 on raise (from 0->1) -> interrupt(in2,on,raise)
Disable Interrupt on Digital Input IN3 interrupt(in3,off)
Enable Interrupt on Analog Input AI1 under a specified level (500 means 500*2mV=1V) -> interrupt(ai1,on,500,fall)
Please send us your comments also by email, we highly appreciate your contribution to make life easier for everybody!