Bought wrong crystal, help me set the fuse correctly

I'm trying to make a stand alone Arduino to use in a project, however I bought the wrong kind of crystal, so I'm looking into setting the fuses so I can still use the crystal I bought instead of buying a new one, with shipping I'm looking at around 5 bucks for a new crystal, vs. free if I can set the fuses correctly. I'm also looking at this as a learning experience, so don't just tell me to take the easy way out. I thought about just using the internal clock, but it's dependent on the timing.

I'm using an ATMEGA328P-PU microcontroller without the Arduino Bootloader (datasheet), and the crystal I bought is a 16 MHz clock oscillator(datasheet). This guy bought a very similar oscillator from the same manufacturer, looking at the data sheet the pins are the same, so I'm assuming I can wire it in the method the second guy describes, please correct me if I'm wrong.

So now I've been reading up on how to set the fuses and found this calculator, but I'm a little confused as to which item I should select in the list. The options I've narrowed it down to are External Clock, External Low Frequency Crystal, External Full Swing Crystal and External Crystal Oscillator. None of these say External Clock Oscillator, so I wanted a second opinion from someone experienced. I'm assuming its either the External Clock or External Crystal Oscillator Frequency 8.0- MHz. The tutorials I've read say to use the longest start up time, so that's the +65ms option, but I'm also confused as to what the 258 CK/14 CK, 1K CK/14 CK, and 16K CK/14 CK options mean, can someone explain this to me?

I was planning on following the instructions here to change the fuses, he uses .1uF decoupling capacitors, the closest value I have on hand are 1uF, will I be okay in using these? I'm also assuming I'm going to have to modify his code slightly, as it's set for either a Lilypad 8MHz bootloader, or Uno 16MHz bootloader. I just find the hex values in the code and change them to what I get from the calculator above, correct? After looking through the code, maybe there is a better way to do manually program the fuses, maybe something like this?

Now I've got a new problem I've just noticed. I had originally planned to bootload my new microcontroller using my Arduino Uno R3, and then swap out the microcontroller with the one in my Uno to upload the project sketch, then swap them out again to put into my project. However, if I'm going to change the fuses, my new microcontroller isn't gong to work if I put it in the Arduino. Can I follow these instructions and program the sketch while the new controller is still using it's internal clock, and then change the fuses? That set of instructions says you can't use an Arudino Uno, does anyone know why? What about changing the fuse, then using these instructions to upload the sketch?

Thanks,

vegeoku:
I thought about just using the internal clock, but my project is using both I2C and SPI interfaces, so it's timing dependent.

Huh?

I thought I2C in particular was timing dependent? In any case I don't want to slow the code down, if anything I'd like to speed it up.

looking at the data sheet the pins are the same,

Looking at the datasheets you quoted one has two pins and one has four.

The tutorials I've read say to use the longest start up time, so that's the +65ms option, but I'm also confused as to what the 258 CK/14 CK, 1K CK/14 CK, and 16K CK/14 CK options mean, can someone explain this to me?

I think a low fuse of 0xFF would be an acceptable compromise.* The numbers refer to the number of clock (CK) cycles to start up from power-down/sleep plus x microseconds.

he uses .1uF decoupling capacitors, the closest value I have on hand are 1uF, will I be okay in using these?

Not really. Go spend $1 and get some 0.1 uF capacitors. You are trying to filter out high frequencies.

http://www.thebox.myzen.co.uk/Tutorial/De-coupling.html

I had originally planned to bootload my new microcontroller using my Arduino Uno R3, and then swap out the microcontroller with the one in my Uno to upload the project sketch, then swap them out again to put into my project.

You can program the Uno to use the internal oscillator at 8 Mhz and then just swap it out.

I thought I2C in particular was timing dependent? In any case I don't want to slow the code down, if anything I'd like to speed it up.

It has a clock signal, it can use a wide range of frequencies, from 400 KHz to 12.5 KHz at least. It is hardly timing dependent.

(edit) * If you are using a crystal or resonator.

Are you sure?
Mine: http://www.abracon.com/Oscillators/aco.pdf
His: http://www.abracon.com/Oscillators/ach.pdf

Mine has four pins labeled 1,7,8, and 14

His has four pins labeled 1, 4, 5, and 8

Unless it means something else on the last page of both datasheets where it lists the four pins and their functions.

Now when you say if you are using a crystal or resonator, will my clock oscillator count? And translating what you said, I want the 16K CK/14 CK +65ms option for the longest start up time correct? Does this translate to the low fuse setting of 0xFF? What about the crystal type, do I want External Clock or External Crystal Oscillator Frequency 8.0- MHz? Going through the calculator going with External Crystal Oscillator Frequency 8.0- MHz 16K CK/14 CK I do get the low fuse as 0xFF, but I get different with the External Clock option.

What about using the 16 MHz clock oscillator, I already mentioned I don't want to slow the chip down. Or am I misunderstanding what you are saying?

Thanks for the help.

I thought about just using the internal clock, but it's dependent on the timing.

That goes up to 8 MHz.

I don't want to slow the chip down ...

Well it could run at 16 MHz with a crystal. However 8 MHz could well be acceptable.

Judging by the datasheet you could power the oscillator and put its output into the XTAL1 pin of the chip. However then you can't (maybe) have the same fuse as the one that relies on the crystal on the Uno board. You can't have everything.

If you set the fuse to use a crystal, it is possible it will react OK to your oscillator. You could try it.

To be honest, I have used an external clock to program a chip that was fused to expect a crystal, so it could well work.

Wire the oscillator's 7 pin (lower right, viewing from the top) to ground, 16pin (upper left) to Vcc and the output is on pin 8 (upper right).

Take the output to the mcu's clock input (xtal 1) and configure its fuse to take external clock.