avr-chat
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-chat] Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmeg


From: Peter LaDow
Subject: [avr-chat] Re: [avr-gcc-list] Function Pointers on AT90USB1287 and ATmega2561
Date: Fri, 22 Feb 2008 08:26:09 -0800
User-agent: Thunderbird 2.0.0.9 (Windows/20071031)

Julius Luukko wrote:
> Yes you are right, I have not updated the port to take into account a 3-byte 
> PC. I meant that there are other serious bugs in the version which is 
> available from Micrium (e.g. usage of r0 and r1 when mixing C and assembly). 
> Version 2.70 is the last version I have obtained from Micrium. I got it when 
> I first submitted the port to Micrium, at that point only for 2.52 (the 
> version with the book). Updates are not freely available and I don't have a 
> commercial license for uC/OS-II (I work in a university). So I don't know if 
> there are changes that affect ports.

Ah, yes.  Your newer version sounds like a must have.  I'll download
them for sure.

As for 2.86, I have downloaded it directly from their website without a
license.  I haven't talked with them yet about a license, but their
website does say:

"C/OS and µC/OS-II source and object code can be used by accredited
Colleges and Universities without requiring a license, as long as there
is no commercial application involved. In other words, no licensing is
required if µC/OS and µC/OS-II is used for educational use."

So in your case, I think you could upgrade pretty easily.  As for my
project:

"You need to obtain an 'Object Code Distribution License' to embed µC/OS
or µC/OS-II in a product that is sold with the intent to make a profit
or if the product is not used for education or 'peaceful' research.
Please indicate the processor type(s) you will be using (i.e. 68HC11,
80x86, AVR, etc.)."

My project is a hobby project, with no intent to make a profit (nor to
be sold).  I think my project could be classifed under 'peaceful' research.

>>>> I haven't been very active with uC/OS-II or AVR lately. However, if you
>>>> are
>>>> able to get it run with newer parts (with more than 128kB memory), I
>>>> would be
>>>> happy to integrate your changes into my port. The current port should
>>>> work
>>>> with all AVRs (with 128kB or less) and with your changes, it should be a
>>>> simple matter of preprocessor conditionals to support both older and
>>>> newer
>>>> chips. If you are willing to take over the "support" of the port, you
>>>> could
>>>> contact me offlist.
>> "Support"?  :)
> 
> I mean that if you publish something, someone is bound to ask you something 
> about it. I have received about 90 uC/OS-II related emails since March 2003.

I said that tongue-in-cheek.  It was more of a jab at myself to suggest
that I provide support for something when I don't consider myself an
expert.  I know enough to be dangerous, and perhaps that is enough.

>> The question is how to determine, compile time, if a part as a 3-byte PC or
>> a 2-byte PC.  It seems that the size of the flash doesn't matter, if my
>> observations of the USB1287 prove true.
>>
> 
> I don't know if there is a universal method to determine it at compile time. 
> You'll just have to test chip by chip:
> 
> #if defined(__AVR_ATmega256__) || defined(some_other_with_3_byte_PC) 
> #define THREEBYTEPC 1
> #else
> #define THREEBYTEPC 0
> #endif
> 
> I am not sure if __AVR_ATmega256__ is the right constant name.

That seems a good suggestion.  I'm going download your latest code and
make the appropriate modifications for the 3 byte PC.  I'll also suggest
a patch for the timer code.

> If you have more uC/OS-II related questions, maybe the discussion should be 
> moved offlist or to avr-chat.

Wisely suggested, and duly followed.

Thanks,
Pete




reply via email to

[Prev in Thread] Current Thread [Next in Thread]