Forum Menu




 


Log in Problems?
New User? Sign Up!
AVR Freaks Forum Index

Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Author Message
Sciencefiction68
PostPosted: May 26, 2012 - 02:57 AM
Newbie


Joined: May 26, 2012
Posts: 15


Hi Everybody. as topic states im new to Atmel and need ur assistance for products selection. I dont have any problems with Cortex-M3 MCU.. I dont have any problem with any MCU in fact:PVery Happy The only problem i have i just dont know which one to choose:) Im from Azerbaijan. MCU isnt very popular here. I have a task to make tutorial series on MCU C programming and applications on my Website. Have been working with PIC18F series for a while and have general grip of MCU. Moved to ATMEL because its cheaper and compiler is totally free. Im trying to create a new inexpensive easy to DIY dev board and conduct my tutorials on it. Could u please help me to choose a device? My requirements are as follows:
1. At least 16 bit FLASH MCU
2. As much I/O ports as possible
3. USB built in..
4. UART
5. I2C
6. in circuit programming
7. EEPROM
8. Books available for referencing
9. not necessarily but would be cool to have Qtouch capabilities:)

The board is going to host power supply module, motor driver, Special connector for Xbee, Servo ports. A general purpose pick and play dev board. Im also designing a PC Software for board controlling via USB.
Waiting forward for any suggestions.Smile

Thanx for ur attention and sorry for weak English:) Smile
 
 View user's profile Send private message  
Reply with quote Back to top
bobgardner
PostPosted: May 26, 2012 - 04:05 AM
10k+ Postman


Joined: Sep 04, 2002
Posts: 21272
Location: Orlando Florida

Sciencefiction68 wrote:

My requirements are as follows:
1. At least 16 bit FLASH MCU
2. As much I/O ports as possible
3. USB built in..
4. UART
5. I2C
6. in circuit programming
7. EEPROM
8. Books available for referencing
9. not necessarily but would be cool to have Qtouch capabilities:)


1)All AVRs have 8 bit data, but 16 bit instructions
2)ATmega2560 has 51 IOs (see xls file on Atmel web site)
3)Many ATmegas with a U in the part number have USB
4)There are ATmega AVRs with 1,2,and 4 uarts (See xls file on Atmel web site)
5)Atmel calls I2C TWI because of some legal flap. All AVRs have TWI
6)All AVRs have ISP
7)All AVRs have eeprom
8)All AVRs have excellent complete datasheets for referenceing
9)I 'think' qtouch is a software library, but someone else can explain this better.

_________________
Imagecraft compiler user
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 26, 2012 - 08:31 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Darned I have to swear now, Smiley will be happy...Arduino...

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Brutte
PostPosted: May 26, 2012 - 03:26 PM
Raving lunatic


Joined: Oct 05, 2006
Posts: 2250
Location: Poland

Sciencefiction68 wrote:
I dont have any problems with Cortex-M3 MCU..

Welcome! I think you are the only freak in here who knows ARMs CM and have no idea about AVRs.

Sciencefiction68 wrote:
Have been working with PIC18F series(..)Moved to ATMEL because its cheaper and compiler is totally free.


You mean avr-gcc is open-source and free, but it is not Atmel's product!
Is it a remark about tools, dongles or the chips actually?

http://www.microchip.com/stellent/idcpl ... e=en010014

Microchip wrote:
The Standard-Eval Version is free! (..) After 60 days, the optimizations (..) will be disabled. Code compiled after the expiration date will function but may occupy more memory space.



Sciencefiction68 wrote:
1. At least 16 bit FLASH MCU

There is nothing 16-bit in AVRs.
EDIT: Oh, wait, some of them have a 16-bit timer.

_________________
No RSTDISBL, no fun!
 
 View user's profile Send private message  
Reply with quote Back to top
JohanEkdahl
PostPosted: May 26, 2012 - 06:30 PM
10k+ Postman


Joined: Mar 27, 2002
Posts: 18581
Location: Lund, Sweden

Quote:

There is nothing 16-bit in AVRs.

As has been said above, instructions are 16 bits wide. This suggests that the flash memory bus might very well be 16 bits wide. Not that it would matter much..

Quote:

At least 16 bit FLASH MCU

It would be illuminating to understand the underlying reasons for this requirement.

If there is an absolute requirement that e.g. the processor registers are 16 bits then all 8-bit AVRs are out. Not sure about the XMegas - never bothered about those. In my world the jump up from AVRs are to ARMs - the Cortex families seems to be the future.
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 26, 2012 - 06:39 PM
Newbie


Joined: May 26, 2012
Posts: 15


Thanx everybody for reply:)
I actually wrote the same text to ARM community. Just forgot to change that ARM Cortex stuff:D It would be nicer to have one community for all instead of dividing it:)BTW ARM guys haven't replied yet:) AVR has faster support:PVery Happy Who cares if Gcc is atmels product or not!Very Happy Personally i dont cos its just doing its job well which is to compile C data to hex for ATMEL:). And why the hek my code should occupy more space and should not be optimized?Smile Its kinda frustration for a beginner:) BTW loved the design of Atmel Studios Visual Studio layout. PICs have 16 bit MCU i thought maybe Atmel have eather. I have question. Why 32 bit MCU s doesnt have EEPROM? the same was with PIC. They also doesnt have EEPROM.
 
 View user's profile Send private message  
Reply with quote Back to top
JohanEkdahl
PostPosted: May 26, 2012 - 07:51 PM
10k+ Postman


Joined: Mar 27, 2002
Posts: 18581
Location: Lund, Sweden

Quote:

And why the hek my code should occupy more space and should not be optimized?Smile Its kinda frustration for a beginner

Because the programmers that did that compiler and IDE wants to be paid for their work. Face it, evaluation versions and restricted/hampered free versions of software are there for

EITHER to be a bait to buy the real stuff

OR to somewhat hold off the competition from open source ("free") software

OR as a possible investment in the future (e.g as in "if students use Visual Studio Express now they will i) be more likely to go on the C#/.NET track, and less likely to go down the Java track, and will create real business for Microsoft in the future").

Users of "free" open source software pay too. E.g. with their time, since support is likely slower and less to the point. Some also actually pay back by joining the contributing community - e.g. submitting bug fixes, or writing documentation.

There is no such thing as a free lunch.

Quote:
Why 32 bit MCU s doesnt have EEPROM?

Is this true for all 32-bit MCU's?
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
larryvc
PostPosted: May 26, 2012 - 08:46 PM
Raving lunatic


Joined: Dec 06, 2007
Posts: 2512
Location: Redmond, WA USA

Brutte wrote:

Welcome! I think you are the only freak in here who knows ARMs CM and have no idea about AVRs.

That makes two of us, I was coming from ARM too. Also PIC/PIC32.
JohanEkdahl wrote:
As has been said above, instructions are 16 bits wide. This suggests that the flash memory bus might very well be 16 bits wide. Not that it would matter much.

It would be nice to know the details of that, just for the sake of curiosity.

_________________
Larry

Those afraid to embrace the future will quickly fade into the past. - larryvc
 
 View user's profile Send private message  
Reply with quote Back to top
Sciencefiction68
PostPosted: May 26, 2012 - 08:56 PM
Newbie


Joined: May 26, 2012
Posts: 15


Thanx for explanation I knew somebody is going to say that:) Of course i know there is not any totally "free" stuff in this world. We all are paying somehow to somebody for something. But its too expensive for a student. As i said MCu isnt popular in my country (among hobbyists and students) . People whom im trying to "teach" MCU, students and hobbyist in my country would never pay more than 50$ to something which is not commonly known and popular well documented and fully understood by community. I didnt paid either.Very Happy my task is to bring a totally new product to local community and say "hey guys look its a cool stuff! U dont have to be a professor or a genius to make a simple robot or even more complex devices... Everybody can do it!" As a new product in the market it must be as cool as possible + as cheap as possible. Even free!Very Happy Im not professional in this field but somebody has to do that! Our guys (and girls of course Very Happy) are really smart. they just need some guidenes to knowledge. show them a paths and they'll start digging in!Smile

Have been looking for 32bit Atmel MCU with EEPROM for allmost 3 days but couldn't find it so far. Does anybody knows any with EEPROM??

Ill design a main board with a brain (MCU) and power management module. and extra pick and play modules as peripheral devices. Do i need EEPROM at all?Very Happy how do u thing? can u imagine Arduino having a brain with no EEPROM?
 
 View user's profile Send private message  
Reply with quote Back to top
JohanEkdahl
PostPosted: May 26, 2012 - 09:05 PM
10k+ Postman


Joined: Mar 27, 2002
Posts: 18581
Location: Lund, Sweden

Quote:
would never pay more than 50$ [...] my task is to bring a totally new product to local business and say "hey guys look its a cool stuff! U dont have to be a professor or a genius to make a simple robot or even more complex devices... Everybody can do it!" As a new product in the market it must be as cool as possible + as cheap as possible. Even free!

Apart from the "totally new" I'd say that the Arduino looks like it fits the bill almost perfectly.

It has the "not a professor or a genius" attribute. Development software at no monetary cost. Hardware: A Arduino Uno "base board" is about €20.

I still don't understand your 16-bit requirement. Even less so when you have explained that it is for entry level or hobbyist work with e.g. robots.
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 26, 2012 - 09:22 PM
Newbie


Joined: May 26, 2012
Posts: 15


so reasons why i dont want to use Arduino...
1. You have to stick to particular types of MCU which are on arduino models
2. arduino has its own "programming language" which is actually C but lilbit edited and simplified. its easier to learn but once u want to design something ur own u got stuck cos u dont know anything about any other MCU and other compiler code structures. it happened to me when i was using PICAXE. it was my friends one. i borrowed it for a week, worked day and night do get used to it and when i returned it back i left with nothing...Very Happy
3. I dont thing there is any single arduino board in my country in any shop:D i have already been in almost all of them:PVery Happy
4. i want to design my own board Smile
 
 View user's profile Send private message  
Reply with quote Back to top
JohanEkdahl
PostPosted: May 26, 2012 - 09:47 PM
10k+ Postman


Joined: Mar 27, 2002
Posts: 18581
Location: Lund, Sweden

1. If you are designing a board on your own you are also "stuck with a particular MCU".
2a. The programming language of the Arduino software is C++.
2b. You can use avr-gcc to write a program, in C, that you can flash to an Arduino board. All that is needed in hardware is an Arduino board and an USB cable.
3. Is your country isolated from the rest of the world? (Where on earth did that international broadcast today then come from? Wink). Are AVRs generally available then? You won't have to import those? (Especially since you seem to have a desire to cover many models.)
4. THAT is a good reason!

I still don't understand your 16-bit requirement. And it rules out all 8-bit AVRs so wy are we even continuing this discussion? Very Happy
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 26, 2012 - 11:05 PM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
ur own u got stuck cos u
Please, if at all possible, TRY and use your best English even though I understand it is not your first language. It makes us think we are dealing with a mature adult when people don't use short cut speak. Smile

It's not my 1st language either or that of many helping here but we try our best. Smile

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 28, 2012 - 09:05 PM
Newbie


Joined: May 26, 2012
Posts: 15


Sorry for late reply guys:)

okay js:) Im sorry about that. Just got used to using shorter words. Im from Azerbaijan. And no Thanks to GOD we are not isolated. Its just youth not being introduced to embedded systems. We dont have this course in our universities. And "Wow that must be very difficult, i better keep away from that" way of thinking...I didnt even knew about MCU even thou i have been interested in electronics for couple of years then before going abroad for studying. Just saw a PIC on a shelve in one of shops in Malaysia and just out of curiosity started digging in details. The shopper reacted in the same way:D Were u isolated or what?Very Happy In our electronic shops we only have products are used by repair stations mainly TV parts, power electronics. Special parts like MCU are being ordered by people who need it like a few electronic hobbyists or some industries. The project in my mind is more a boot and PC software (or IDE if you wish:)) than a standard board. You see, every part in my design is interchangeable including brain itself as long as it meets my designs requirements (which are not so much)Smile The IDE im working on is more advanced and a lot more easier for beginners to learn. U can even create very complex systems with 0 line of coding:) All i need to have is a starter version. I came up with 2 choices..

1. ATXmega128A1U http://www.atmel.com/devices/ATXMEGA128A1U.aspx
8/16 bit with EEPROM
100 pin
max i/o 78 pin super:)
UART 2 (Would be better to have more:))
TWI 1 (Would be better to have more:))
PicoPower excellent feature
PWM modules 24 good!Smile
Externel Bus Interface 1
Temp sensor kinda useless but still cool:PVery Happy

2. AVR SAM3X8E http://www.atmel.com/devices/SAM3X8E.aspx?tab=parameters
32bit Cortex M3 (sounds cooler:PVery Happy) but no EEPROM
100 pin
i/0 pins 60 still okay:)
UART 5 nice!
TWI 2 better:)
PWM 8 its okay...
Externel Bus Interface 1
ethernet
Can work as USB host
and many more extra connectivity functions:)

Honestly i liked Second one since It offers more connectivity:) there is a problem. cant seem to find any DIY programmers for it. Do you know any?
And also need a good book. Since im new to Atmel myself. Can you recommend ?
Are the instruction sets of both AVR and ARM same? I mean the syntactic structure of codes. Will simple led blinking program work on both with no modification to code? Can i study AVR book and work with ARM?
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 12:06 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
Can i study AVR book and work with ARM?
Can you learn to ride a bicycle and then drive a Ferrari? Smile

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 01:27 AM
Newbie


Joined: May 26, 2012
Posts: 15


LoL:D I hoped they are not that much different:SSad At least like bicycle and motorbike perhaps:PSmile are the codding different from each other?
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 01:52 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
are the codding different from each other?
At the hardware and assembler level absolutely different.

Also the tools used are different, even if you stick with Atmel ARM devices the tools will be quite different from an AVR device.

Never mind going from one manufacturer to another. The simplest things like setting up the chip's clock or I/O pins can be somewhat mind boggling.

But my brain is old, it may just be very simple for the young.

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
bobgardner
PostPosted: May 29, 2012 - 02:09 AM
10k+ Postman


Joined: Sep 04, 2002
Posts: 21272
Location: Orlando Florida

Once some smart guy gets the c compiler ported to run on that model of cpu, regular old comp sci guys can stert writing c and c++ programs that call malloc to grab 100s of K of ram to run the hardware abstraction layer that they are used to and they are happy as can be.

_________________
Imagecraft compiler user
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 03:00 AM
Newbie


Joined: May 26, 2012
Posts: 15


Then i guess for beginning i have to start with AVR ATXmega128A1U:) It seems there are more resources for AVR than ARM. And plenty of free programmers available. Which book would u recommend for me?Smile
 
 View user's profile Send private message  
Reply with quote Back to top
bobgardner
PostPosted: May 29, 2012 - 03:29 AM
10k+ Postman


Joined: Sep 04, 2002
Posts: 21272
Location: Orlando Florida

If you can write console apps for visual c on a pc, you are about 90% there. The AVRs can have code and data in flash, but can only have data in ram. The syntax of interrupt handlers is different in every avr c compiler. The reading and writing of the registers is sort of unique to microcontroller programming. You can program on a pc for months and never need to do an output or input from an IO port. ANSI C is ANSI C. Supposed to compile up and run on every target that has a c compiler for it. Got an app you want to try?

_________________
Imagecraft compiler user
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 03:37 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
And plenty of free programmers available
The Xmega chips are NOT the same as other AVR/Mega chips.
The free/cheap programmers may program the AVR range but NOT the Xmegas as they use a different programming method.

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 03:42 AM
Newbie


Joined: May 26, 2012
Posts: 15


Console aps. Easy.. Smile

Quote:
Got an app you want to try?

Didnt actually understood your question. Im using AVRStudio and GCC compiler. What you mean by app?

Having first problem. I saw in many examples that pins are assigned to be digital output or input by writing DDRC=0x00 or FF. it gives me a strange error.
Quote:
Error 1 'DDRC' undeclared (first use in this function)

Port C i digital. I actually tried other ports too but getting same error
 
 View user's profile Send private message  
Reply with quote Back to top
bobgardner
PostPosted: May 29, 2012 - 03:47 AM
10k+ Postman


Joined: Sep 04, 2002
Posts: 21272
Location: Orlando Florida

Post the program. You need to select which AVR model number you are using. The compiler cant read your mind yet. Maybe next year.

_________________
Imagecraft compiler user
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 03:49 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Post your code.

Have you added #include <avr/io.h> so Studio knows which chip you are using? Have you set up the correct chip in the project?

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 04:01 AM
Newbie


Joined: May 26, 2012
Posts: 15


Hehe Mind reading compiler:PVery Happy You dont even have to pres to keyboard in order to write.RazzSmile
Of course i did specified the deviece. You do it when creating a new project. And yes i have <avr/io.h>

Code:
#include <avr/io.h>

int main(void)
{
 DDRQ=0xFF;

    while(1)
    {
       PORTQ=0XFF;
      
   
    }
}
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 04:06 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Which chip are you using? Which version of AVRStudio?

You say that "'DDRC' undeclared" but you are using PORTQ.

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 04:11 AM
Newbie


Joined: May 26, 2012
Posts: 15


AVRStudio6
ATXmega128A1U
I also mentioned that tried with other ports. That is the code for port Q. Same Error...
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 04:29 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Try
Code:
#include <avr/io.h>

int main(void)
{
 PORTA_DIR=0xFF;

    while(1)
    {
       PORTA_OUT=0XFF;
   
    }
}
Unfortunately the version of Studio I have only supports the chip for assembly only, don't know about AS6.

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 04:36 AM
Newbie


Joined: May 26, 2012
Posts: 15


Hmm strange.. And it works for me:) So i have Assembly instead of C ?

But when creating a new project i created a GCC C executable file.. how come? and i tried again to clear if mistakenly choose assembly. Same result.. DDR statement is not working for me:S
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 04:41 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

No you have C but winAvr20100110 which I use with Studio 4.18 doesn't support that chip yet.

So is it compiling now?

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 04:53 AM
Newbie


Joined: May 26, 2012
Posts: 15


it is compiling:) managed to write a simple led flasher.
Code:

#include <avr/io.h>
#include <avr/delay.h>

int main(void)
{
 PORTA_DIR=1;

    while(1)
    {
       PORTA_OUT=0;
      _delay_ms(1000);
      PORTA_OUT=1;
      _delay_ms(1000);
   
        }
return(1);
}


What should i do if codes in books are different the ones i use?
 
 View user's profile Send private message  
Reply with quote Back to top
JohanEkdahl
PostPosted: May 29, 2012 - 04:56 AM
10k+ Postman


Joined: Mar 27, 2002
Posts: 18581
Location: Lund, Sweden

Quote:

Hmm strange.. [...] So i have Assembly instead of C ?

No, not strange at all.

You will actually have to open up the data sheet(s) for the AVR model you are working with to see which registers/ports it has, and what their names are.

On 8-bit (classic) AVRs there are registers registers with names like DDRx. On the 8/16-bit XMegas the digital IO-ports work differently and have other registers with other names, like PORTA_DIR. This is the difference, not if you are using assembler or C. Registers are the same in both languages.
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 05:03 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
What should i do if codes in books are different the ones i use?
Choose books which are specific to the chip you are using?? Smile

Remember that Xmegas are NOT the standard AVR chip for which you may have the books for, now export that to the ARM field and you start to understand what I said before. http://www.avrfreaks.net/index.php?name ... 452#960452

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 05:23 AM
Newbie


Joined: May 26, 2012
Posts: 15


@JohanEkdahl Thanks. That was very useful info. I actually found it in datasheet.
@js Aha im feeling it now:D

Then i have 2 options:
to find a book for my chip (which would be just perfect) or to try modifying code from other books for my chip working with datasheet (which is going to be a pain in some soft part of my body:PVery Happy)
Luckily we have ASF examples. 255 ready and free examples for my chip:) that should be enough:)
 
 View user's profile Send private message  
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 08:58 PM
Newbie


Joined: May 26, 2012
Posts: 15


im getting frustrated:S cant seem to find free open source programmer for Xmega. It turns out Xmegas are using relatively new PDI for programming.
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 29, 2012 - 11:22 PM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
cant seem to find free open source programmer for Xmega
Smile http://www.avrfreaks.net/index.php?name ... 488#960488

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Sciencefiction68
PostPosted: May 29, 2012 - 11:49 PM
Newbie


Joined: May 26, 2012
Posts: 15


I knew you are going to point that Very Happy
So what to do now? to move to ATmega? they are about 2 times more expensive than Xmega... Not cool:SSad
Or back to PIC18 Very Happy Actually it turns out PICs are cheaper Very Happy
 
 View user's profile Send private message  
Reply with quote Back to top
js
PostPosted: May 30, 2012 - 12:01 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

The Atmel AVR ISP Mk2 is not that expensive and you have a good tool supported by Atmel.

If you are part of a recognised learning institution you may try and get Atmel to help out, I think there is a university program.

Also you may want to look at the LUFA based programmer which you may be able to build yourself, we will need to wait on someone who has made one for further comments or wait for his excellence Dean to clarify some details. Smile

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
DocJC
PostPosted: May 30, 2012 - 04:13 AM
Raving lunatic


Joined: Dec 11, 2007
Posts: 6851
Location: Cleveland, OH

I think Larry did a successful LUFA build for a PDI programmer that supports the current (new) Xmegas.

So either Dean, (LUFA's creator), or Larry could give you some guidance in this.

JC

Edit:
Found Larry's discussion on the LUFA PDI build here
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
larryvc
PostPosted: May 30, 2012 - 04:52 AM
Raving lunatic


Joined: Dec 06, 2007
Posts: 2512
Location: Redmond, WA USA

This is a couple of posts above the post DocJC mentioned:

http://www.avrfreaks.net/index.php?name ... 137#960137

When it comes down to price it may be a toss up between the USBtiny and a real AVRISP mkii. I recommend one of these two for your needs.

This is what I built my AVRISP mkii clone with:

http://www.avrfreaks.net/index.php?name ... 124#957124

It is supposed to be able to do ISP, PDI, and TPI programming but I've only used it for ISP. The infrastructure for PDI and TPI is part of the LUFA code so it should work the same as a USBtiny.

_________________
Larry

Those afraid to embrace the future will quickly fade into the past. - larryvc
 
 View user's profile Send private message  
Reply with quote Back to top
hugoboss
PostPosted: May 30, 2012 - 06:53 AM
Resident


Joined: Feb 19, 2010
Posts: 507
Location: Montreal, QC, CA

Quote:
The AVRs can have code and data in flash, but can only have data in ram.


I think you meant:

AVRs can have data in flash or RAM, but can only have code in flash.

In contrast, the architecture of the ARM processor has a single internal bus for both code and data, as opposed to two separate buses on the AVR. On an ARM code can be either in flash or RAM.
 
 View user's profile Send private message  
Reply with quote Back to top
Brutte
PostPosted: May 30, 2012 - 08:03 AM
Raving lunatic


Joined: Oct 05, 2006
Posts: 2250
Location: Poland

Perhaps you do not know it yet, but it is a debugger that you actually need.

OT:
hugoboss wrote:
In contrast, the architecture of the ARM processor has a single internal bus for both code and data

AFAIK only CM0 have a single bus. Other ARMs(including mature v5) have separate program/data buses. Some of ARMs uCs have even more of them, for example LPC1769 has four buses.
Perhaps you meant "the architecture of the ARM processor has a single internal memory space"? If so, some tiny AVRs have one memory space and about all the rest of AVRs have FLASH+SRAM(+EEPROM sometimes).

hugoboss wrote:
On an ARM code can be either in flash or RAM.

Indeed, that is a cool feature. One can dll a code from about any SD.
 
 View user's profile Send private message  
Reply with quote Back to top
stevech
PostPosted: May 31, 2012 - 12:18 AM
Raving lunatic


Joined: Dec 18, 2001
Posts: 4717


The ARMs are single-address-space for RAM/Flash. This is called Harvard Architecture.

The AVR and PIC are dual-address busses. This is called von Neuman Architecture.

Problem is that C and other compilers, and the standardized run time libraries were designed for the single address space architecture and hacked and kludged for dual address spaces; some better than others (GCC is sub-par in this regard).

ARM is so nice in having RAM and Flash in the single address space. You can run code in either, e.g., debug in RAM, then write to flash. And the ARM chip makers do tricks to keep the cycle time for instruction fetches from flash just as fast as from RAM - e.g., by having a 128 bit wide flash data bus.
 
 View user's profile Send private message  
Reply with quote Back to top
bobgardner
PostPosted: May 31, 2012 - 12:47 AM
10k+ Postman


Joined: Sep 04, 2002
Posts: 21272
Location: Orlando Florida

Harvard 'architecture'->AVRs; Von Neuman architecture-> ARMs, Pentiums, 6800s, 'conventional' computers.

_________________
Imagecraft compiler user
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 31, 2012 - 06:32 AM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
The ARMs are single-address-space for RAM/Flash. This is called Harvard Architecture.

The AVR and PIC are dual-address busses. This is called von Neuman Architecture.
Exactly the OPOSITE as Bob seems to show cryptically. Smile

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Brutte
PostPosted: May 31, 2012 - 09:50 AM
Raving lunatic


Joined: Oct 05, 2006
Posts: 2250
Location: Poland

stevech wrote:
The ARMs are single-address-space for RAM/Flash. This is called Harvard Architecture.

http://infocenter.arm.com/help/topic/co ... index.html
Cortex-M0 Generic Users Guide wrote:
The Cortex-M0 processor is built on a high-performance processor core, with a 3-stage pipeline von Neumann architecture


bobgardner wrote:
Von Neuman architecture-> ARMs

http://infocenter.arm.com/help/topic/co ... index.html
Cortex-M3 Generic Users Guide wrote:
The Cortex-M3 processor is built on a high-performance processor core, with a 3-stage pipeline Harvard architecture
 
 View user's profile Send private message  
Reply with quote Back to top
larryvc
PostPosted: May 31, 2012 - 03:20 PM
Raving lunatic


Joined: Dec 06, 2007
Posts: 2512
Location: Redmond, WA USA

Add a PIC32 to the mix and you get a hybrid of the two architectures.

_________________
Larry

Those afraid to embrace the future will quickly fade into the past. - larryvc
 
 View user's profile Send private message  
Reply with quote Back to top
bobgardner
PostPosted: May 31, 2012 - 05:25 PM
10k+ Postman


Joined: Sep 04, 2002
Posts: 21272
Location: Orlando Florida

OK, I give. If the instructions are in ram, they can be modified. I did it in the 6800.

_________________
Imagecraft compiler user
 
 View user's profile Send private message Send e-mail Visit poster's website 
Reply with quote Back to top
js
PostPosted: May 31, 2012 - 11:48 PM
10k+ Postman


Joined: Mar 28, 2001
Posts: 20387
Location: Sydney, Australia (Gum trees, Koalas and Kangaroos, No Edelweiss)

Quote:
If the instructions are in ram, they can be modified. I did it in the 6800.
True but only in a single buss architecture where RAM and FLASH/ROM/EEPROM bear no distinction as to data or code or even, in the case of the 6800 I/O space, the von Neumann architecture.

In a, say M8515, where you can add 64K of RAM, instructions in that space are useless as the CPU will not see anything there as code, the Harvard (or rather MODIFIED Harvard) architecture.

Edit
Quote:
QUESTION
What is the difference between Harvard Architecture and von Neumann Architecture?

ANSWER
The name Harvard Architecture comes from the Harvard Mark I relay-based computer. The most obvious characteristic of the Harvard Architecture is that it has physically separate signals and storage for code and data memory. It is possible to access program memory and data memory simultaneously. Typically, code (or program) memory is read-only and data memory is read-write. Therefore, it is impossible for program contents to be modified by the program itself.

The von Neumann Architecture is named after the mathematician and early computer scientist John von Neumann. von Neumann machines have shared signals and memory for code and data. Thus, the program can be easily modified by itself since it is stored in read-write memory.

_________________
John Samperi
Ampertronics Pty. Ltd.
www.ampertronics.com.au
* Electronic Design * Custom Products * Contract Assembly
 
 View user's profile Send private message Visit poster's website 
Reply with quote Back to top
Display posts from previous:     
Jump to:  
All times are GMT + 1 Hour
Post new topic   Reply to topic
View previous topic Printable version Log in to check your private messages View next topic
Powered by PNphpBB2 © 2003-2006 The PNphpBB Group
Credits