关于PIC10F的模拟比较器设置问题

[复制链接]
 楼主| hbsun2007 发表于 2009-7-2 21:27 | 显示全部楼层 |阅读模式
今天碰到一个超自然现象(对于我来说)<br /><br />那就是PIC10F的模拟比较器设置,我想请问OSCCAL的设置对模拟比较器有影响吗?<br /><br />至于出现了什么现象一两句也讲不清~拜托各位帮忙分析一下
 楼主| hbsun2007 发表于 2009-7-3 12:05 | 显示全部楼层

我研究出了一部分

OSCCAL&nbsp;寄存器&nbsp;(地址:05h)&nbsp;&nbsp;&nbsp;<br />R/W-1&nbsp;&nbsp;R/W-1&nbsp;&nbsp;R/W-1&nbsp;&nbsp;R/W-1&nbsp;&nbsp;R/W-1&nbsp;&nbsp;R/W-1&nbsp;&nbsp;R/W-1&nbsp;&nbsp;R/W-0<br />CAL6&nbsp;&nbsp;&nbsp;CAL5&nbsp;&nbsp;&nbsp;CAL4&nbsp;&nbsp;&nbsp;CAL3&nbsp;&nbsp;&nbsp;CAL2&nbsp;&nbsp;&nbsp;CAL1&nbsp;&nbsp;&nbsp;CAL0&nbsp;&nbsp;&nbsp;FOSC4<br /><br /><br />(PIC10F的GP2&nbsp;&nbsp;为T0CKI/GP2/COUT)<br />FOSC4位&nbsp;1&nbsp;=&nbsp;INTOSC/4输出至GP2<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0&nbsp;=&nbsp;GP2/T0CKI/COUT输出至GP2<br /><br />因此猜测是OSCCAL寄存器上电后值不定所引起的&nbsp;为1得到的是错误的结果,为0是我得到的正确结果<br /><br />有什么样的原因会产生这样的结果呢,会不会之前我用C程序写的OSCCAL=0b01111111;<br />烧写进去后然后用汇编对芯片又烧写一次<br /><br />后来用的汇编语言&nbsp;&nbsp;&nbsp;&nbsp;org&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;reset<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;movwf&nbsp;&nbsp;&nbsp;osccal<br />请教各位,这样会产生影响吗?<br /><br />
james012 发表于 2009-7-3 17:52 | 显示全部楼层

OSCCAL 寄存器最好不要改

  
bcaiyo 发表于 2009-7-10 12:57 | 显示全部楼层

应该是芯片做得不够好

在OSCCAL数据一通电就将校正值写入.如果最低位是1.就输出1/4的频率.好久之前用过.记不清了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

87

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部