Re: [Botix-devel] HAL for Botix
Status: Beta
Brought to you by:
vorik2005
|
From: Ger A. <in...@ge...> - 2005-11-14 05:54:39
|
Hi Richard, Just4 Fun schreef: > Hi all, > > I know that classes etc are the way to program nowadays. However, > Atmel controllers are not designed to have classes or anything. They > are just made to run some simple assembler code. There is hardly any > RAM, so what does it benifit? If Botix should remain compatible, you > should consider, that RAM usage should be minimized to almost any > price. The least price is programmmers convienience. Please consider > RAM usage, and (maybe) possible compiler options to avoid RAM usage. Class is not only a java class, but also english for "klasse", or type of device. This HAL is not really object oriented in the java or C++ sense. > >>> For i2c we can use some kind of virtual device, which is what the >>> compass driver uses when executing commands. Port expanders can use >>> multiple pins and just have to be defined, right? >> > Port expanders are just a way of interfacing the controllers. They > don't have to know anything about what is going on, they just have to > interface / expand. So they should just be an extra interfacing layer, > that can be addressed by input/output devices, as if it was just > processor hardware. Yes, but a device behind a port expander is addressed in a different manner (for the controller) than a device directly to a pin. Botix should know how to address it. > >> nope, the expander is connected to i2c. You're talking about a shift >> register. (cheaper, but requires a number of io pins.) > > This problem should also be solved if an expander is just regarded as > some way to interface between controller and periphials, but not as an > item on itself. It does not contribute to the robot, it contributes to > the controller. I agree. > > Although the previous may sound negativ, I still think that the > implementation of such a layer is an improvement on Botix. Only thing > is that an ATmega32 may not be considered as a standard Atmel > controller. It is a controller that comes out of the Atmel top line. I > think you should also test your software on a cheaper controller???? Yes, but the memory constraint will probably be a problem. We've got to do our best to minimalize memory consumption, but when we add a layer (which was there from the beginning) to make it easier to configure for the end-user extra memory utilization is inevitable. Unless we hard-code all the nessessary ports and pins directly into the code controlling the sonar for instance, we've got to store this information somewhere. As much of the static data as possible should be stored in flash, and I know Wouter is trying to achieve that. But you are right, it should be tested on a cheaper controller (f.e. atmega8) That's where you come in! ;) Ger. > > Greetz, > > Richard > > > > > ------------------------------------------------------- > SF.Net email is sponsored by: > Tame your development challenges with Apache's Geronimo App Server. > Download > it for free - -and be entered to win a 42" plasma tv or your very own > Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php > _______________________________________________ > Botix-devel mailing list > Bot...@li... > https://lists.sourceforge.net/lists/listinfo/botix-devel |