Do I understand you correctly that this project is to build a database in XML with all the AVR register attributes for all AVR MCUs and to automatically from the database generate a web-based tool for configuration and code generation?
What I do not see is how this would be used in general. Could you describe some typical use cases for this type of tool and how it is better or easier that Arduino or other class library approaches (such as my own Cosa project)?
This type of tool makes it very easy for anybody that understands all the registers and functions in the AVR MCUs but does not make code more portable, configurable, etc. It does automate some of the initialization code but there is no abstraction of the hardware and there is no support for device drivers, etc.
I am simply searching for a solution to simply configure an USART, Timer and so on.This should be possible in the same way for different AVR microcontroller.
This should not be better or easier as Arduino. As i have written this tool should give more comfort to the avr-gcc.
What is the way the configuration is done? Which AVR microcontroller do you support?
Write an Arduino library and share it on the Forum ?
So I guess you see this tool as an extension of the avr/io include files. There are all these symbols defined for all the supported MCUs.If you take a closer look at the AVR MCUs you can see that they are configurations of a set of hardware modules. The product family is built up by the size of the memories, the hardware modules, implementation technology and packaging. Just as the hardware product we can define the software interface for the hardware modules (registers, bits, etc) and from them compose the MCU support
This allows a simpler configuration strategy. Instead of checking for a specific MCU the code checks for a specific hardware module. An example. The Cosa UART class supports basically all MCUs with up to five UARTs (ATmega2560). A single source code for all with a high level abstraction of the buffering (Cosa IOBuffer).
$ git pull origin masterfatal: Not a git repository (or any parent up to mount point /srv)Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
The reason i posted my question here is that nearly nobody in the avr-gcc world seems to be interested in an easy way of configuration of hardware modules.
REAL PROGRAMMERS don't need sissy stuff like that.
That's maybe right - and this is the point i can't understand.
It was an attempt at a joke that clearly failed miserably. I don't agree with the sentiment myself - I like all the help I can get. Which is why I avoid C/C++ at every opportunity.
But your solution [Cosa] is coupled to the Arduino framework.Maybe it is possible to use it in another way directly for the avr-gcc?
I wonder if the stuff in this other current Thread could form a basis for what you are thinking of?
@avrgenActually Cosa is not coupled to the Arduino framework. It runs on Arduino hardware and other AVR based boards. It does not require the Arduino pre-processor at all, only the GCC AVR tool chain. The source code is written so that it can be compiled with a traditional make system. There is actually command line build support in the Cosa distribution (see the build directory). I do not use the Arduino IDE at all for development. Cosa can be used from the Arduino IDE and there is support for install with the Boards Manager to make it as easy as possible to get started. Cheers!
As i have understand the intention is to simplify the C syntax for beginners.A good idea but not my thing.
As I understand it, he is making a "program" that translates from one system to another, and it sounds to me that you are doing something similar.