This Forum is Dedicated For all The Object Oriented PIC Lovers .......... The concept behind OOPic is straight forward. Use preprogrammed multitasking Objects from a library of highly optimized Objects to do all the work of interacting with the hardware. Then write small scripts in Basic, C, or Java syntax styles to control the Objects. During operation, the Objects run continuously and simultaneously in the background while the scripts run in the foreground telling the objects what to do.

Saturday, July 19, 2008

[oopic] Optimizing code

I uploaded a (not-yet-finished) file - OttoExplorer - that uses 79
bytes of RAM, close to the limit of 86. I made very liberal use of
cut 'n paste so you may find many sections familiar. I tried to keep it
well-commented.
I used: an LCD, sonar, IR, pan/tilt servos, 2 DC motors, and lots of
Constants.
My understanding is that using constants will store values in EEPROM,
freeing up limited system resources. I also know that using VCs
(virtual circuits) can help speed program execution.

Is there a trick I am missing, or misusing? I'd luv some advice on how
to optimize the code (esp. with VCs) so I can get the most out of my
ooPIC. I tend to write sloppy code, so tightening up the code and
making best use of resources is important. Execution speed is not as
important to me as maximizing use of limited ooPIC resources.

The code is far from finished, but it is a good start, and hopefully
easy to follow. It is for a B2.2+ ooPIC using V6 compiler.


------------------------------------

Yahoo! Groups Links

<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/oopic/

<*> Your email settings:
Individual Email | Traditional

<*> To change settings online go to:
http://groups.yahoo.com/group/oopic/join
(Yahoo! ID required)

<*> To change settings via email:
mailto:oopic-digest@yahoogroups.com
mailto:oopic-fullfeatured@yahoogroups.com

<*> To unsubscribe from this group, send an email to:
oopic-unsubscribe@yahoogroups.com

<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/

No comments: