Atmel website | ARM Community | AVR freaks | Technical Support
Banner
 FAQ •  Search •  Register •  Login 

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next
Author Message
 Post subject: Multiplexing clocks into the AT91R40008
PostPosted: Mon Jan 03, 2005 12:42 am 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
Hi guys, I want to mux two clock signals into my AT91R40008 chip because 95% of the time, it just needs to monitor the serial interface and the rest of the time it's doing some major calculations. Needless to say, two clocks = better battery life. Has anyone done this? I'm concerned when the chip first powers up, the selector for the 2:1 mux will be undefined and thus, no clock will get through, meaning the chip will never do anything... Any ideas?


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jan 03, 2005 5:22 pm 
Offline
User avatar

Joined: Thu Feb 12, 2004 7:48 pm
Posts: 164
Location: Atmel Corp.
Hi smcallis182,

All AT91 Family uses static design, therefore, you can stop the clock or switch between two clock sources. Regarding to the power-up period, it is requested to have valid clock signal 10 clock cycles before the NRST release because some pins are sampled for this time period like NTRI, BMS pins.


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jan 03, 2005 7:36 pm 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
Sorry, I'm still pretty green about all this. So I can mux them in? If I just connect the mux selector pin to one of the GPIO pins on the 40008, it should select one of the clocks regardless of what state it's in, so that would get the processor started up and then I could have my code actively select which one it wants...?


Top
 Profile  
 
 Post subject:
PostPosted: Mon Jan 03, 2005 10:37 pm 
Offline
User avatar

Joined: Thu Feb 12, 2004 7:48 pm
Posts: 164
Location: Atmel Corp.
Smcallis182,

It is possible to perform clock switching through PIO and multiplexing circuitry but you have to pay attention to the foolowing rules:
- you have to perform those clock switching synchronously with the targeted clock in order to avoid glitch due to the switching or no respect of the cycle in progess,
- you must have a valid clock after the reset de-assertion time,
- and of course, you have to respect rising, falling, duty cycle.... and other electrical datas given in datasheet, of course.

But I advise you to look for integrated circuit solution which embeds PLL and can manage this task correctly. It will be more easy and more sure.


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jan 04, 2005 7:18 am 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
Any idea what the name of such an IC would be? (Remember, I'm a n00b)


Top
 Profile  
 
 Post subject:
PostPosted: Tue Jan 04, 2005 12:00 pm 
Offline
User avatar

Joined: Thu Feb 12, 2004 7:48 pm
Posts: 164
Location: Atmel Corp.
Hi smcallis182,

You can find some IC like ICS511 or other references ICS'
Take a look at and I advise to take care the following thing: your system must have a correct clock in accordance with AT91R40008 Electrical Characteristics (no overclocking or other one)

Hope this helps.


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jan 14, 2005 7:41 pm 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
I see, I wasn't planning on overclocking it. I just wanted to have control over it to optimize my power useage. Thanks a bunch!


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jan 14, 2005 9:11 pm 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
I've been trying to find a chip that will work. I want to have basically two speeds, something around 65 Mhz and then something much lower, such as 2-5Mhz. I can't seem to find anything that will quite work over such a range. Do you have any suggestions?


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jan 14, 2005 11:03 pm 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
I'll have to read the datasheet on it, but it looks really good! Thanks! A bunch of the ones I was looking at had like 16 inputs, which would suck up my PIO pins like no other, a 2-wire bus will really help out. Thanks again!


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jan 14, 2005 11:03 pm 
Offline

Joined: Sun Jun 13, 2004 4:20 am
Posts: 45
This is what I use: DS1077L at www.maxim-ic.com

Simple I2C control lets you change your speed any time and you can choose to save the new speeds or re-configure on power up without saving so boot clock is the same every time!


Michael


Top
 Profile  
 
 Post subject:
PostPosted: Fri Jan 14, 2005 11:14 pm 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
Ugh my MCU doesn't have an I2C bus on it, so I'd have to put an external bus controller on the board which would suck up pins WORSE than the other Clock chips I was looking at. What sort of controller are you using that chip with?


Top
 Profile  
 
 Post subject:
PostPosted: Sat Jan 15, 2005 1:35 am 
Offline

Joined: Sun Jun 13, 2004 4:20 am
Posts: 45
AT91R40008 - just use two GPIO pins and write a software driver


Top
 Profile  
 
 Post subject:
PostPosted: Sat Jan 15, 2005 3:38 am 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
I'm pretty green, how did you go about doing that? Did you just write it and store it as a function?


Top
 Profile  
 
 Post subject:
PostPosted: Thu Jan 20, 2005 2:00 pm 
Offline
User avatar

Joined: Fri Feb 13, 2004 7:53 pm
Posts: 329
In the AT91 C Library v2.14 available for download on this forum, there is a software I2C example for the AT91R40008 (EB40A).

Else, I used the ICS307 from ICS to make some trials on the EB40A board.

Attached is the beta version C routines under ARM ADS and compatible with the AT91 C Library 2.14

Hope this helps.


Last edited by pfilippi on Wed Mar 15, 2006 8:07 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Sun Jan 23, 2005 8:52 pm 
Offline

Joined: Fri Dec 10, 2004 6:56 am
Posts: 19
Wow! Thanks a bunch. It's a big help. Thanks guys!


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 17 posts ]  Go to page 1, 2  Next

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: