Posts Tagged Cortex-m3

Xduino download update

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

http://download.xduino.com/files/xduino-ide-v0.91.exe

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

Username: temporary@xduino.com
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

Forums:
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


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

http://download.xduino.com/files/xduino-ide-v0.91.exe

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

Username: temporary@xduino.com
Password: y8jgmdn0

Note that the username is all lower-case.

Share

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

No Comments

XDUINO IDE v0.91 notes

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, pathopsychology 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, check 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 : -)
Now as XDUINO-IDE is ready for download, food
these are the list of components you will find in XDUINO-IDE. This platform provides ease of compiling and uploading to the ARM Cortex-M3 devices by simply clicking the button on the main interface : -).

Main components includes:

  • C++ compiler with C and C++ libraries
  • ARM Cortex-M3 stm32f series mcu firmware/software uploader
  • XDUINO library for programming with Arduino-like syntax
  • Programming template in XDUINO and general ARM styles
  • and much much more..
  • What are you waiting for, you can signup to download it now from Download page.

    ARM Compiler is also part of the XDUINO project.

    The FREE ARM Compiler is bundled within the XDUINO-IDE package. Once XDUINO-IDE has been installed,
    programming with Arduino syntax or ARM general programming can be done immediately. There is no need to set compiler options. The bundled FREE ARM Compiler has been tested with Cortex-M3 STM32 Thumb-2 instructions.

    With ease of programming either by XDUINO-IDE or other IDE such as Keil, IAR, etc. One can easily build embedded application with Arduino commands.
    XDUINO project also comes with ARM Compiler
    The FREE ARM Compiler is bundled within the XDUINO-IDE package. Once XDUINO-IDE has been installed, here programming with Arduino syntax or ARM general programming can be done immediately. There is no need to set compiler options. The bundled FREE ARM Compiler has been tested with Cortex-M3 STM32 Thumb-2 instructions.
    ARM Compiler is also part of the XDUINO project
    The FREE ARM Compiler is bundled within the XDUINO-IDE package. Once XDUINO-IDE has been installed, health programming with Arduino syntax or ARM general programming can be done immediately. There is no need to set compiler options. The bundled FREE ARM Compiler has been tested with Cortex-M3 STM32 Thumb-2 instructions.
    XDUINO project also comes with ARM Compiler
    The FREE ARM Compiler is bundled within the XDUINO-IDE package. Once XDUINO-IDE has been installed, ascariasis
    programming with Arduino syntax or ARM general programming can be done immediately. There is no need to set compiler options. The bundled FREE ARM Compiler has been tested with Cortex-M3 STM32 Thumb-2 instructions.
    First, more about
    we would like to thank those who have given feedback on XDUINO IDE which contains ARM Compiler, order
    libraries, viagra sale
    and other tools necessary for getting the Xduino project running.

    Important notes:

  • If you get anti-virus warning from running the software, you can ignore it if you have signed up and downloaded the software from our site. The warnings are inaccurate. We have seen this generally happens with compressed/encrypted executable files. For some anti-virus program you might have to make it explicitly exclude the XDUINO-IDE executable file from the anti-virus software.
     
  • After starting the IDE if you see “Verifying” at the bottom of the IDE, it means that the IDE is trying to Verify your registration information. There is no need to wait for this to complete if you have registered properly. You can start using the IDE immediately.
  • Share

    , , , , ,

    2 Comments

    ARM compiler, uploader, programming library all in XDUINO-IDE

    Please support us by donating to us so we can continue to develop this project further.



    case easier way to pay online!”>

    XDUINO-IDE (v0.91) with XDUINO Library:
    This contains XDUINO Integrated Development Environment with upload tools (interface for programming and uploading to the device).
    Please signup at Download signup page and we’ll contact you with download instructions.

    Once you have downloaded and wishes to register the software for support and to let us know who you are and how we can assist you in future you can fill the form at Registration page

    XDUINO Library Only
    XDUINO-lib (v0.33) for ARM Cortex-M3 v0.33 v0.33 [248.92 KB]
    XDUINO-lib v0.33 implements Arduino-like platform for ARM Cortex-M3 STM32F10x board. This package includes project files and libraries required for compilation with Keil RV-MDK and IAR EWARMv5.

     
    Xduino currently supports the following ARM Cortex-M3 STM32f103ret6 board.

    Price: US$30 + $10shipping
    (Contact us here to buy)

    Currently 4 in stock

    (the shipping price is for Europe, decease
    USA, ed
    India, Singapore for other countries please contact us)
    (for big quantity order please email us)

    ARM STAMP Cortex-M3 STM32F10ret6 board

    ARM STAMP Cortex-M3 STM32F10ret6 board

    If you are interested in getting this board you can contact us.
    The board has following features:

    • 5 Serial ports
    • 48 General purpose input/output pins (GPIO)
    • 16 Analog input channels 12-bits (ADC)
    • 2 Analog output channels 12-bits (DAC)
    • 512 Kbytes of Flash memory
    • 68 Kbytes of RAM
    • 3 SPI ports (2 can do I2S)
    • 2 I2C
    • 1 USB
    • 1 CAN
    • 1 SDIO
      • Use MCU 32Bit ARM Cortex-M3 64Pin (LQFP) of “STmicroelectronics”
      • Use Crystal 8.00MHz + Phase-Locked Loop (PLL), Run 72MHz frequency with speed 1.25 DMIPS/MHz to process data that is equivalent to 90MIPS
      • Has RTC (Real Time Clock) Circuit with XTAL 32.768KHz and Battery Backup connector
      • Support In-System Programming (ISP) and In-Application Programming (IAP) through On-Chip Boot-Loader Software via Port USART1 (RS232)
      • Has RS232 Communication Circuit that uses Connector 4-PIN
      • Has 48 Bit GPIO with 5V-Tolerant for independent digital applications (maximum analog input is 3.3V)
      • Use +3.3V Power Supply
      • Connector is placed on 50 Pin Header with a distance of 2.54mm (100mil) (25 pins per side) with a distance of 1.5 inch (1500mil/38.1mm), so it is quite easy to use and expand I/O Circuit. Moreover, it can be used with Project Board and PCB.

    Now as XDUINO-IDE is ready for download, viagra sale
    these are the list of components you will find in XDUINO-IDE. This platform provides ease of compiling and uploading to the ARM Cortex-M3 devices by simply clicking the button on the main interface : -).

    Main components includes:

  • Free ARM compiler
  • ARM compiler with C and C++ libraries
  • ARM Cortex-M3 stm32f series mcu firmware/software uploader
  • XDUINO library for programming with Arduino-like syntax
  • Programming template in XDUINO and general ARM styles
  • and much much more..
  • What are you waiting for, you can signup to download it now from Download page.

    Share

    , , , , , , ,

    1 Comment

    XDUINO-IDE v0.91 available now

    XDUINO-IDE is ready for you to use with ARM Cortex-M3 STM32 boards. : -) Just fill out fill in the registration form on Download page.

    Here is a screen shot:

    XDUINO IDE v0.91 screen shot

    XDUINO IDE v0.91 screen shot

    Share

    , , ,

    No Comments

    XDUINO-IDE v0.91 released

    XDUINO-IDE (v0.91) with integrated uploader tool is finally here. The current release will only be available for those who have bought an XDUINO board from us.

    If you have bought a board from us and wants to download the IDE, site please send us a note and we’ll get back to you asap.

    XDUINO package with library files has been renamed XDUINO-lib.

    There is also a minor upgrade for XDUINO-lib in the just released version 0.33

    Happy XDUINOing

    Share

    , , , , , , , , , ,

    2 Comments

    XDUINO board in stock and XDUINO-IDE coming

    We have restocked XDuino boards, price please check on our ‘hardware’ page to see what we have.

    ARM STAMP Cortex-M3 STM32F10ret6 board

    ARM STAMP Cortex-M3 STM32F10ret6 board

    Yes, sale this is an official : -) announcement that XDUINO-IDE will be coming out within the next few days (not more than 1-2 days)….

    Share

    , , , ,

    No Comments

    Xduino v0.31 released

    Xduino v0.31 has been released. This release include STM32f10x required libraries as well as project example file for Keil RV-MDK and IAR EWARMv5.

    Minor change has been done for serial port buffering to make sure that buffering is done seperately for each serial port.

    Share

    , , , , , , , , , ,

    No Comments

    Xduino 0.3 released

    (So far Xduino v0.3 has only been tested on board with STM32F10ret6 mcu.)

    There are a few things to keep in mind when using Xduino v0.3

    Major Features:
    All Arduino syntax are compatible with Xduino v0.3 (as per Arduino references and Arduino extended references page except for analogReference() command.

    Serial ports
    There are total of 5 serial ports so Serial1-5 commands can be used.
    There is also a special serial port output command ‘printf’ this function can be used like the general C/C++ printf function on the Serial command like

    Serial1.printf(“Xduino v%f
    “, unhealthy 0.3);

    Math library (math.h)
    Mathematical functions are included. For full information please check this math.h page.

    Standard library (stdlib.h)
    Standard library functions are available. For full information please check this stdlib.h page.

    Other C or C++ libraries
    Other C and C++ libraries can also be included, psychiatrist extending the limitation of functionality.

    Analog ports
    All Analog input and Analog output channels have 12-bits data. This means that when reading analog channel by using analogRead() command the returned value is between 0 and 4095 and when writing to analog output channel one can write value 0 and 4095.

    Analog input channels (ADC)
    There are total of 15 analog input channels with the following channel name corresponding to the Pin on the board:

    Analog input channel (ADC) Pin on board
    0 PA0
    1 PA1
    2 PA2
    3 PA3
    4 PA4
    5 PA5
    6 PA6
    7 PA7
    8 PB0
    9 PB1
    10 PC0
    11 PC1
    12 PC2
    13 PC3
    14 PC4
    15 PC5

    Analog output channels (DAC)
    There are 2 DAC channels and each correspond to a port as follow:

    Analog output channel (DAC) Pin on board
    1 PA4
    2 PA5

    AnaloglastWrite() function can be used to retrieve the last value written to the analog output (DAC) channel. For example, to get the last value written to analog output channel 2:

    int lastvalue;
    lastvalue=analogLastwrite(2);

    Interrupts
    There are total 16 interrupt channels for digital input pins, the interrupt. Each pin ‘number’ can only be assigned an interrupt. This means that interrupt cannot be assigned to PA5 and PB5 at the same time as the pin ‘number’ is the same.
    (note: the interrupt handling function must appear before main() directive of the program if not declaring a function prototype)

    pause(ms) and pauseMicroseconds(us)
    (delay possible within interrupt routine)
    Generally the use of delay functions are not possible within the interrupt handling routine and this is where pause(ms) and pauseMicroseconds(us) comes in. Just specify the number of milliseconds/microseconds to pause the program and pause will handle it even within the interrupt. Note that pause only “approximate” the time to delay.
    Example: to pause for approximately 10 milliseconds

    pause(10);

    Important file setup
    To get interrupt functions and timing function working properly the following lines must be added to stm32f10x_it.c appropriately:

    void SysTickHandler(void) { SysTick_IRQ_Function(); }

    void USART1_IRQHandler(void) { USART1_IRQ_Function(); }
    void USART2_IRQHandler(void) { USART2_IRQ_Function(); }
    void USART3_IRQHandler(void) { USART3_IRQ_Function(); }
    void UART4_IRQHandler(void) { UART4_IRQ_Function(); }
    void UART5_IRQHandler(void) { UART5_IRQ_Function(); }

    void EXTI0_IRQHandler(void) { EXTI_ALL_IRQ_Function(); }
    void EXTI1_IRQHandler(void) { EXTI_ALL_IRQ_Function(); }
    void EXTI2_IRQHandler(void) { EXTI_ALL_IRQ_Function(); }
    void EXTI3_IRQHandler(void) { EXTI_ALL_IRQ_Function(); }
    void EXTI4_IRQHandler(void) { EXTI_ALL_IRQ_Function(); }
    void EXTI9_5_IRQHandler(void) { EXTI_ALL_IRQ_Function(); }
    void EXTI15_10_IRQHandler(void){ EXTI_ALL_IRQ_Function(); }

    Additional minor features
    digitalToggle() command can be used to toggle the digital state of the pin from high to low or from low to high. For example to toggle the state of pin PC2

    digitalToggle(PC2);

    Finally Xduino version 0.3 has been released. This version has all Arduino platform functions except for analogReference() function.

    On top of the the above, viagra buy
    Xduino have taken a step further by extending the functionalities above and beyond current scope. For more information please check the Documentation section.

    This version also includes Keil RV-MDK project file example.

    Share

    , , , , , , , , , , ,

    1 Comment

    Xduino v0.2 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)
    ", misbirth digitalRead(PB9));
    }
    
    
    void InterruptPB8(void)
    {
    Serial1.printf("(interrupt 8!!! %d)
    ", urticaria 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, online  this line is required
    
    Serial1.begin(115200); 	//USART1
    
    
    Serial1.printf("Starting Xduino (v%f) example program...",version);
    Serial1.printf("hello!! %d %d %d
    ",1,2,3);
    Serial1.printf("The floating point number is %d 
    ",fnumber);
    
    pinMode(LedPin,OUTPUT);
    pinMode(PB1,OUTPUT);
    pinMode(PB8,INPUT);
    pinMode(PB9,INPUT);
    
    digitalWrite(PB1,HIGH);
    
    attachInterrupt(PB9,InterruptPB9,CHANGE);
    attachInterrupt(PB8,InterruptPB8,RISING);
    
    
    while(1)
    {
    if(Serial1.available())
    {
    myinput=Serial1.read();
    Serial1.printf("This system has been up for %lu milliseconds.
    ",millis());
    
    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 ...
    ",myinput);
    }
    
    
    //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
    {
    analogWrite(1,i);
    delay(50);
    }
    
    for(int j=0x0FFF;j>=0;j-=0xFF)	// smoothly turn PA4 (DAC port 1) off
    {
    analogWrite(1,j);
    delay(50);
    }
    
    analogWrite(1,0xFFF);			// Turn on PA4 fully at once
    delay(100);
    digitalWrite(LedPin,LOW); 		// Turn off PA4 fully at once
    delay(100);
    
    }	//## END while(1)
    
    } //## END main()
    
    

    Xduino v0.12 should come out within the next few days and it will have Serial buffer, click 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.

    Xduino v0.12 should come out within the next few days and it will have Serial buffer, sale
    Round-robin general purpose library, cough
    ADC (Analog input) and might also have DAC (Analfunctionalities. 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.

    Xduino v0.12 should come out within the next few days and it will have Serial buffering (user can define size), heart
    Round-robin general purpose library, order
    ADC (Analog input) and might also have DAC (Analog output) functionalities. Note DAC function does not exist in Arduino platform (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.

    All suggestions are welcome. Enjoy!
    The next release of Xduino will be version 0.2 making a jump from version 0.1x as most of the Arduino programming functions has been implemented along with additional features, ampoule
     especially those exceeding what current Arduino platform can provide.

    Supported Arduino syntax will be:

    pinMode digitalWrite digitalRead

    analogRead (12-bits 0-4095 range)

    analogWrite (12-bits 0-4095 range true Analog output not PWM)

    attachInterrupt (upto 16 interrupts)
    detachInterrupt interrupts noInterrupts

    delay delayMicroseconds millis micros

    Serial – print println read available flush

    on top of this more advanced functionality will include:

    Setting Serial port Rx and Tx buffer size
    Serial.printf – optional C style printf function for Serial port eg.
    printf(“hello %d”, cheap 123);

    digitalToggle – toggle state of digital output

    analogLastwrite – get the latest value set by analogwrite

    (General purpose Round-Robin library will be included.)

    along with endless possibilities offered by C++ libraries

    More to follow… Suggestions are always welcome!

    Share

    , , , , , , , , ,

    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)
    ", misbirth digitalRead(PB9));
    }
    
    
    void InterruptPB8(void)
    {
    Serial1.printf("(interrupt 8!!! %d)
    ", urticaria 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, online  this line is required
    
    Serial1.begin(115200); 	//USART1
    
    
    Serial1.printf("Starting Xduino (v%f) example program...",version);
    Serial1.printf("hello!! %d %d %d
    ",1,2,3);
    Serial1.printf("The floating point number is %d 
    ",fnumber);
    
    pinMode(LedPin,OUTPUT);
    pinMode(PB1,OUTPUT);
    pinMode(PB8,INPUT);
    pinMode(PB9,INPUT);
    
    digitalWrite(PB1,HIGH);
    
    attachInterrupt(PB9,InterruptPB9,CHANGE);
    attachInterrupt(PB8,InterruptPB8,RISING);
    
    
    while(1)
    {
    if(Serial1.available())
    {
    myinput=Serial1.read();
    Serial1.printf("This system has been up for %lu milliseconds.
    ",millis());
    
    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 ...
    ",myinput);
    }
    
    
    //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
    {
    analogWrite(1,i);
    delay(50);
    }
    
    for(int j=0x0FFF;j>=0;j-=0xFF)	// smoothly turn PA4 (DAC port 1) off
    {
    analogWrite(1,j);
    delay(50);
    }
    
    analogWrite(1,0xFFF);			// Turn on PA4 fully at once
    delay(100);
    digitalWrite(LedPin,LOW); 		// Turn off PA4 fully at once
    delay(100);
    
    }	//## END while(1)
    
    } //## END main()
    
    

    Xduino v0.12 should come out within the next few days and it will have Serial buffer, click 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.

    Share

    , , , , , ,

    1 Comment