|
剛開(kāi)始學(xué)的時(shí)候,8位的timer0和timer2用的比較熟練,timer1一直迷迷糊糊。于是找了一些書(shū)籍,好心人把原理圖翻譯成了中文,易懂推薦《AVR單片機(jī)菜鳥(niǎo)進(jìn)階》沈添國(guó)主編 這是我好不容易從兩本書(shū)上找到的中英文的對(duì)照?qǐng)D
08ca7a73c800b821257be0957d9c619.jpg (385.17 KB, 下載次數(shù): 117)
下載附件
2019-6-9 17:01 上傳
2d0eb8300cc6ef49a0a6b3c76762a7e.jpg (382.88 KB, 下載次數(shù): 114)
下載附件
2019-6-9 17:00 上傳
這是我在課本上找的,共用寄存器部分的圖,學(xué)到這里就一下子通了
8592fc90e70815597b5d5e5c1c50847.jpg (124.16 KB, 下載次數(shù): 101)
下載附件
2019-6-9 16:57 上傳
還有一個(gè)要注意的點(diǎn)就是:
timer1的時(shí)鐘源選擇是靠TCCR1B來(lái)控制的,例如A的工作方式啥的還是用TCCR1A來(lái)配置,但是時(shí)鐘源又得靠TCCR1B來(lái)進(jìn)行配合。
(這里真的是有點(diǎn)奇葩)
現(xiàn)在那我自己的話(huà)語(yǔ)總結(jié)一下實(shí)際使用方法:
timer1和timer0/2的用法十分相似,主要區(qū)別在于兩個(gè)共有的寄存器,和timer1獨(dú)有的A,B兩個(gè)16位的,功能也有增加一個(gè)輸入捕獲。所以無(wú)論是常用的比較匹配還是溢出,只要對(duì)相應(yīng)的A,B寄存器賦值就好H(高位),L(低位),具體賦值參考如下。然后就是上面紅字注意的時(shí)鐘源選擇部分了。剩下就是照著說(shuō)明弄一些什么禁止,模式,使能之類(lèi)的操作。
(本圖是使用ICCAVR編譯器的代碼生成器產(chǎn)生的部分代碼,并不完善)
5700c3d40b02b6247043eb48f1b8914.png (20.12 KB, 下載次數(shù): 112)
下載附件
2019-6-9 17:07 上傳
|
評(píng)分
-
查看全部評(píng)分
|