BasicMicroUK - Forums

www.basicmicro.co.uk
It is currently Thu Apr 26, 2018 12:17 pm

All times are UTC [ DST ]




Post new topic Reply to topic  [ 6 posts ] 
Author Message
 Post subject: Basic Atom Emulator. Just an idea.
PostPosted: Sat Sep 11, 2010 11:53 am 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
A secondary program built into the Studio, that emulates the BAtom, BAtom Pro, and BAtom Nano.

It would display the pins of the selected chip, and using drop down menus, you can select what the pin is connected to, from a list of common devices, such as servos, buttons, LEDs, or basic sensors like temperature, or range. And could display an emulated oscilloscope.
Buttons would be displayed, and be interactive, LED's would not be.
Temperature would have a simple input, where you input the value you want the sensor to read.
Range sensors, the same way.
Servos would display the top view of a servo, and an animated arm, that rotates to the outputs given. With advance settings for an individual servos max and minimal limits.
A basic input, that would be a bit more customizable so you can give it samples of actual inputs you'd receive from a specific sensor.

Emulated serial ports, could connect to your hyper-terminal or terminal program of your choice, Or even be linked to a real serial port, so you can connect your serial devices to it.

A person with a Lynxmotion SSC-32, could test programing of a BAPro, by connecting the SSC-32 to the PC, and sending emulated commands.

PROS:
You could test simple code on the fly.
It would allow beginners to test code, without the possibility of damaging their hardware.
New comers could experience the awesome power of the Basic Atom series, which would encourage them to make a purchase.
It could double as a coded terminal program on it's own. You could run scripts using the BAP's programing.
Would allow the poor to get interested in robotics.

CONS:
Those unable to afford a real BAPro, would simply use the emulator. They would be tethered to the computer though.
Would take a while to create, and would likely have a lot of bugs.
Newbies may be discouraged into buying any MCU if they are overwhelmed with the programming. So links to the forums would need to be easily available.


If all goes well, a person could create and test their programing, before needing to actually program their contraption.
It would attract a whole new crowd of newbies.
Once a newbie plays with it, and gets a dozen virtual servos working, or virtual pizzo speakers beeping, or LEDs flashing, the overwhelming self confidence will encourage them to go at the project in real life, with a real Basic Atom, and real parts.


My influence for this idea, comes from my own experience.
I used to play a sandbox game called Garry's Mod, which had an Addon called Wiremod.
The two together, allowed you to create a virtual contraption, using blocks, or what ever props needed, then you could program virtual motors, or LED's using Wiremod. Wiremod is quite litterally, an expression emulator.
You could write if/then/else gates, or create an ingame drivable car, that's fully automated. The power of the expression programing in the game, rivals that of a BAPro.
The advantages, you could test your contraption instantly, you didn't need to grab a serial cable, or wait for the program to compile and be sent over.
Hence, the emulator idea.
It was this, that got me interested in robotics. This is why i own a BAPro today. Because of the contraption and programing emulators, known as Garry's Mod + Wiremod Addon.

Give me feedback on the idea, let me know your thoughts on it.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Basic Atom Emulator. Just an idea.
PostPosted: Wed Sep 15, 2010 4:51 pm 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 7:00 pm
Posts: 1316
Location: Temecula, CA
I technically have an AtomPro emulator(it's actually an H8/Tiny emulator) but it has no GUI. It is strictly used for debugging machine code. At some point it would be nice to put a front end on it(ie: insert it into the IDE) but I never seem to have extra time to do that kind of thing. It does work well though. On a high end PC it runs a lot faster than the actual chips. :)

I orginally planned on making a whole graphic breadboard which you could wire devices up to and the emulator would emulate those as well using DLL plugins. The back end has been finished since we first released the AtomPro but the entire GUI would need to be developed. The emulator it self is almost 100%. The only thing it doesn't do right now is handle interrupts. The code is setup to allow branching of interrupts but I have't implemented triggering the interrupt flags. Plus I've been using it for years debuging AtomPro library code so there should be very few if any bugs left at this point.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Basic Atom Emulator. Just an idea.
PostPosted: Wed Sep 15, 2010 6:06 pm 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
Well if i have time later today, i'll make a mock up of a GUI that can be added into the IDE.
Give you a visual idea of it.

It sounds like something that can be implemented without to much trouble, since you already have the emulator made.
I think it would have massive benefits to new programmers.

You can even add visual plugins, or a plugin system to popular development boards or Lynxmotion's Botboard.
Only need a skinning option.
I can't program for jack, so the best i could do is offer ideas.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
 Post subject: Re: Basic Atom Emulator. Just an idea.
PostPosted: Wed Sep 15, 2010 9:56 pm 
Offline
Master

Joined: Tue Nov 21, 2006 5:34 pm
Posts: 662
Acidtech wrote:
I technically have an AtomPro emulator(it's actually an H8/Tiny emulator) but it has no GUI. It is strictly used for debugging machine code. At some point it would be nice to put a front end on it(IE: insert it into the IDE) but I never seem to have extra time to do that kind of thing. It does work well though. On a high end PC it runs a lot faster than the actual chips. :)

Hi Nathan, Is this part of your stuff or part of the GNU toolchain? Would you like to share? Sometimes would come in handy when the assembly language (or c code) is not doing what I expect...

Kurt


Top
 Profile  
 
 Post subject: Re: Basic Atom Emulator. Just an idea.
PostPosted: Fri Sep 17, 2010 5:46 pm 
Offline
Site Admin
User avatar

Joined: Thu Mar 01, 2001 7:00 pm
Posts: 1316
Location: Temecula, CA
Kurt, It's something I wrote when we started developing the AtomPro line. I needed a way to debug the machine code and GNUDB was too painful, and Hitachi had no tools for simulating. Send me an email and I'll get you a copy. Note that this has a very simplified text user interface.

_________________
Tech Support
Basic Micro - Robotic Technology Evolved


Top
 Profile  
 
 Post subject: Re: Basic Atom Emulator. Just an idea.
PostPosted: Sat Oct 16, 2010 8:37 pm 
Offline
Master
User avatar

Joined: Tue Jul 07, 2009 5:06 pm
Posts: 120
Location: Wisconsin USA
So any news on if this would be possible to implement into the studio?
The idea of a visual emulator sounds like a really good idea to introduce new people.

_________________
Image
Basic Micro Blog
Universal Robot Controller


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 6 posts ] 

All times are UTC [ DST ]


Who is online

Users browsing this forum: No registered users and 0 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group

phpBB SEO