Show Posts
Pages: [1] 2
1  International / Software / Re: Simulador Arduino on: November 18, 2012, 12:35:25 pm
Si.. por ahora es una primera versión muy básica, ya irá avanzando.

Gracias por los comentarios!

Saludos.
2  International / Software / Re: Simulador Arduino on: November 18, 2012, 07:10:30 am
Hola a todos.

Hay una primera versión disponible para descargar, por ahora disponible para Linux y Windows 32 bits:
http://sourceforge.net/projects/simulide/


Saludos.
3  Development / Other Software Development / Re: Arduino simulator. on: November 18, 2012, 06:33:54 am
The windows version is working now, i just uploaded the new installer.

Greetings.
4  Development / Other Software Development / Re: Arduino simulator. on: November 12, 2012, 10:04:39 am
Hi Enri. thanks for the info.

I think that's a MinGW/gcc library, maybe i should compile that libs static. But in this moment i haven't a windows system at hand and i will be out for some days, maybe i can try to solve it in a week.

A work around could be installing MinGW and adding the compiler's bin directory to your PATH: http://sourceforge.net/projects/mingw/

Any help with Windows version is very wellcome.


Best regards.

5  Development / Other Software Development / Re: Arduino simulator. on: November 12, 2012, 08:35:53 am
Pre-alpha version available: http://sourceforge.net/projects/simulide/
6  Development / Other Software Development / Qt Creator Arduino Project wizard on: July 06, 2012, 09:35:47 am
I'm using the Qt Creator Custom wizards feature to create Arduino Projects based on makefile (Linux).

The makefile is based on this one: http://mjo.tc/atelier/2009/02/arduino-cli.html with some modifications

Has someone tried to use Qt Creator this way?
There are some things i would like to improve, but i'm little stucked, so any collaboration is very welcome.

Files can be dowloaded from here: http://sourceforge.net/projects/qtarduino/

There is a readme, but if someone needs any help or explanation just ask here or in the project forum.

Best Regards.
7  International / Software / Simulador Arduino on: June 04, 2012, 07:20:44 pm
Hola a todos.

Estoy trabajando en un proyecto de simulador de circuitos que incorpore Arduino.
Dejo un enlace por si alguien quiere colaborar:

http://igg.me/p/105307?a=602712


Saludos.
8  Development / Other Software Development / Re: New Arduino library: MenuSystem on: May 26, 2012, 10:41:28 am
Quote
Menu const* get_current_menu() const;

Yup! The function returns a pointer to a const. I made a lot of functions do the same, so if users try silly things, it won't work without them being extra silly and const_casting.
Yes... looks the proper way, and if someones knows to do a cons_cast is suposed to know what is doing.

Quote
So, you'll be pleased to know that I've applied a slightly modified version of your idea and uploaded it to github. I've also included some examples. Thanks for the idea! Enjoy!
Nice!! i will have a look, thanks.

Regards.
9  Development / Other Software Development / Re: New Arduino library: MenuSystem on: May 24, 2012, 06:26:48 pm
Quote
Perhaps a function in the menu system like so would be better:

char** MenuSystem::get_current_menu_options();

This will return an array of the menu options for the current menu. What do you think?
Ok, this is a safer and easier (for the user) way to do it.

The only little disadvantage i see if i understand correctly is that MenuSystem has to iterate through items to create the array, and then the user has to iterate again through array to print names, what is little slower, but... all have a price.

Another cuestion: Why do you pass a pointer to MenuItem in the callback funtion?

Thinking about this library.. it could be used for anything that needs a tree structure, noy only a menu system.

10  Development / Other Software Development / Re: New Arduino library: MenuSystem on: May 23, 2012, 05:59:39 pm
Not sure if this is possible without doing changes, but i needed another function in MesuSystem class:

Code:
Menu* MenuSystem::get_current_menu()
{
    return _p_curr_menu;
}

And i print the current menu at it's items this way:
Code:
void updateMenu()
{
LCDClear();

Menu* currentMenu = menu_system.get_current_menu();

MenuComponent* selected = currentMenu->get_selected();

LCDString( currentMenu->get_name() ); // Displays current menu

for( int i=0; i<currentMenu->get_num_menu_items(); i++ )
{
MenuComponent* item = currentMenu->get_item( i );

gotoXY(  5, i+1 );

if( item == selected ) LCDString( ">"); // Displays an arrow in current item
else                   LCDString( " ");

LCDString( item->get_name() ); // Displays items in current menu
}
}

I see more ineresting have getter: MenuSystem::get_current_menu() intead of MenuSystem::get_current_menu_name(), with the first i can access to anything i need in the current menu, not only name.
11  Development / Other Software Development / Re: New Arduino library: MenuSystem on: May 23, 2012, 01:19:21 pm
To manage the menu tree i added a function to Menu class:

Code:
MenuComponent* Menu::get_item( int num )
{
    return _menu_components[num];
}

And print items this way for example:

Code:
MenuComponent* selected = mm.get_selected();

for( int i=0; i<mm.get_num_menu_items(); i++ )
{
MenuComponent* item = mm.get_item( i );
gotoXY( 0, i );
if( item == selected ) LCDString( ">");
else                   LCDString( " ");
LCDString( item->get_name() );
}


By now i just have tested some basic things of the library and it is working very well.



12  Development / Other Software Development / Re: Arduino simulator. on: May 23, 2012, 12:45:25 am
Quote
Great Job!!, but don't you think "Proteus" can do the same and more?
Thanks!

Yes Proteus can do a lot more... afther you learn to use it, this simulator wants to be simple and easy to use.
I find Proteus too complex, slow to use even when you learn the basics, dificult to find components in libraries, need to change tool for add components, wire then, move or do other thigs... i needed lot of time just to figure out what the hell i have to do to put a simple resistor in the circuit.

I think Proteus it's a very good app for professionals, specially if you can pay license, but not good for hobbist that just want to have a few generic components at hand, drag and drop in the circuit and hook then fast and easy, no lot of icons, lot of libraries, lot of screens, lot of time to learn the lots of features...

Proteus is a comercial aplication, this one will be free and open source, i opened the contributions campaign to have a release in a reasonable period of time, if i can't work in it full time for a few mounth it's dificult to have something working in Windows and Linux in short time.
If i just work in it in my sparse time, may be i need  years instead of mounths.

The idea is also that contributors can participate in the development process, proposing and voting features, components or anything they would like to have in the simulator.

Next step will be integrate a code-editor/debugger/compiler so it will be possible: create sketches, compile, debug/simulate, and upload to real boards... but this will be in the future... i hope..


Regards.
13  Development / Other Software Development / Re: Faster than 128000 Baud? on: May 20, 2012, 07:18:44 am
You could configure the atmega328 usart yourself, have a look to datasheet or google it, there is lot of info in the web.

In theory you could configure usart up to 2 Megabauds with 16 MHz clock, using asinchonous double speed:

BAUD = Fosc/(8*(UBRRn+1))

with UBRRn=0 : BAUD = 16/8 = 2 (0% error)

To calculate UBRRn (double speed):

UBRRn = (Fosc/(8*BAUD))-1

Example C code to configure Usart0 in atmega328, not tested and perharps errors, but can show you how it's done :

Code:
#define USART0_BAUD 115200 // Define desired baud rate

#define USART0_UBBR_VALUE ((F_CPU/(USART0_BAUD<<4))-1)

void USART0_Init(void)
{
    // Set baud rate
    UBRR0H = (uint8_t)(USART0_UBBR_VALUE>>8);
    UBRR0L = (uint8_t)USART0_UBBR_VALUE;
    
    // Set frame format to 8 data bits, no parity, 1 stop bit
    UCSR0C = (0<<USBS0)|(1<<UCSZ01)|(1<<UCSZ00);
    
    // Uncomment for double speed
    //UCSR0A |= (1<<U2X0);

    // Enable receiver and transmitter
    UCSR0B = (1<<RXEN0)|(1<<TXEN0);
}


One important thing is line isolation, at high speeds electric noise can produce lot of errors.

Best regards.
14  Development / Other Software Development / Re: New Arduino library: MenuSystem on: May 15, 2012, 02:20:03 pm
I was just starting to write a project that needs a menu when i saw your post... :-) , i'll give it a try.

Thanks for sharing.
15  Development / Other Software Development / Re: Arduino simulator. on: May 11, 2012, 05:53:33 am
Thanks robtillaart.

Well... this is still a project and not yet an "arduino simulator" (1), and there is a lot of work to do to it usable, i'll add it to mentioned thread when a relese is available.

(1) Or it is? i just wrote my first update: basic arduino uno board blinking a led. (updates tab in the project)


Regards.
Pages: [1] 2