Posts Tagged PWM

Xduino download update

I would like to inform you that XDUINO-IDE is ready, you can download it from

Note that you are only authorized to download this version of
XDUINO-IDE only if you have the STM32 Uploader software in your

Password: y8jgmdn0

Note that the username is all lower-case.


Arduino – The embedded platform programming made simple for ATMEGA/AVR platform

ARM – the processor site ARM architecture – information on wikipedia

ST Microelectronics – A maker of ARM processor of the STM32 family including Cortex-M3

STM 32 Cortex-M3 forum on ST site

Arduino forum – latest happenings with Arduino
Xduino team is currently out of station so we are positing temporary download instructions here : -)

Kindly signup here first:

Download signup

, , , , , , , , , , , , , , , ,

No Comments

Xduino v0.12 to be released

Here is an example for dimming the LED connected to PA4 while attaching interrupt to PB8 and PB9. It has been tested with Xduino v0.3 (more projects and examples will be added in the near future)


/* Xduino v0.3 */

#include "main.h"
using namespace compatArduino;

void InterruptPB9(void)
Serial1.printf("(interrupt 9!!! %d)
", digitalRead(PB9));

void InterruptPB8(void)
Serial1.printf("(interrupt 8!!! %d)
", digitalRead(PB8));

int LedPin = PB7;		// as labelled on ARM Cortex-M3 board

int main(void)

float version=0.3;
double fnumber=1234.5678;
char myinput;

doInit(); 				//Initialize Xduino components, this line is required

Serial1.begin(115200); 	//USART1

Serial1.printf("Starting Xduino (v%f) example program...",version);
Serial1.printf("hello!! %d %d %d
Serial1.printf("The floating point number is %d 




Serial1.printf("This system has been up for %lu milliseconds.

if(myinput=='a') { digitalWrite(PB1,HIGH); }	// press a to turn PB1 to HIGH state
if(myinput=='b') { digitalWrite(PB1,LOW); }	// press b to turn PB1 to HIGH state
if(myinput=='n') { noInterrupts(); }			// press n to disable all existing interrupts
if(myinput=='i') { interrupts(); }			// press i to enable all existing interrupts
Serial1.printf("Input is %c ...

//using analogWrite on channel 1 which is PA4 to dim the LED connected to it
for(int i=0;i<=0x0FFF;i+=0xFF)	// smoothly turn PA4 (DAC port 1) on

for(int j=0x0FFF;j>=0;j-=0xFF)	// smoothly turn PA4 (DAC port 1) off

analogWrite(1,0xFFF);			// Turn on PA4 fully at once
digitalWrite(LedPin,LOW); 		// Turn off PA4 fully at once

}	//## END while(1)

} //## END main()

Xduino v0.12 should come out within the next few days and it will have Serial buffer, Round-robin general purpose library, ADC (Analog input) and might also have DAC (Analog output) functionalities. Note DAC function does not exist in Arduino (yet). PWM function should be coming out soon as well but might not always be needed as there are 2 DAC channels on the ARM Cortex-M3 STM32F10ret6 board which is being used for testing. Arduino compatibility syntax will be provided on the new functions as well.

, , , , , ,

1 Comment

About XDuino

Arduino platform has definitely enabled a lot of people including those non-tech savvy ones to enter into the electronics worlds. From the beauty of Arduino, now comes the challenge in making Arduino-like environment accessible across as many hardware platforms as possible. This would enable the simplicity and yet powerful Arduino platform to harvest on more powerful resources provided by different hardware to overcome hardware limitations based on different needs.

This approach will never be fully realized without contributors. So all contributions are welcome. Also, comments/suggestions will be highly appreciated. : -)

Let’s see what wonders we can create together…

Now, a little about me. My name is Ram, I am an independent IT consultant based in Bangkok and really like the Arduino project but it did not fit my needs so I started playing with ARM and manage to understand a bit about it then started this project. Feel free to contact me via the Contact us page : -)

, , , , , , , , , , , , , , ,

No Comments