@@ -350,6 +350,14 @@ You can read about that [there](https://microchipdeveloper.com/8avr:bod).
The `CKSEL` fuses are the fuses you are the most likely to every change, whereas the other ones are typically very specific.
Finally, if we look at bits 7 (`CKDIV8` set as `0`) and 6 (`CKOUT` as `1`), we can see that it is such that:
* `CKDIV8=0` (programmed) so that the the initial prescaler is set to 1/8. Reading about the prescaler on [page 30](http://fab.cba.mit.edu/classes/863.09/people/ryan/week5/ATtiny44%20Data%20Sheet.pdf#page=30), we see that this just sets the initial prescaler value, but that is available in the program space, which can then be changed at runtime.
* `CKOUT=1` (unprogrammed) does not enable clock output. Had we set it to `0`, the same section near the prescaler on [page 29](http://fab.cba.mit.edu/classes/863.09/people/ryan/week5/ATtiny44%20Data%20Sheet.pdf#page=29) tells that pin `CKOUT` (`PB2`) would be outputting the clock signal.
This output can be useful if you need to debug your clock while using an external clock.
In this way, you can check whether your clock parameters (e.g. capacitors) are doing a good job and your frequency is what you expect.
### Take-aways
1. Read the manuals
...
...
@@ -357,6 +365,7 @@ The `CKSEL` fuses are the fuses you are the most likely to every change, whereas
3. Choose your fuses carefully, notably beware of
* `RSTDISBL` in the *Fuse High Byte*, since this prevent further programming (needed in FabTinyISP), or similar disable / enable options
* Choose the clock carefully and especially the meaning hidden behind each bit's value (e.g. ceramic vs crystal, frequency range ...)
* For debugging, consider outputting the clock signal