[技术问答] 修改003的RC发生器频率的疑问

[复制链接]
385|11
 楼主 | 2018-6-3 11:07 | 显示全部楼层 |阅读模式
N76E003 有两个字节的SFR,更改这两个字节的数值,可以直接对HIRC频率产生改变,由于每更改一阶HIRC更改的值是恒定的,且由于HIRC已调整至非常准确的16 MHz,所以对这两个寄存器目前的值直接减去15,就可以得到16.6 MHz的结果。
下列两个字节产生9位的HIRC调整值,每个位更改大约产生16 MHz的0.25%偏差,也就是一阶 40 KHz

手册图表显示的这两个字节。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主 | 2018-6-3 11:08 | 显示全部楼层
下面列出调整HIRC的例程,
  1. sfr RCTRIM0 = 0x84;
  2. sfr RCTRIM1 = 0x85;
  3. bit BIT_TMP;
  4. #define set_IAPEN BIT_TMP=EA;EA=0;TA=0xAA;TA=0x55;CHPCON|=SET_BIT0 ;EA=BIT_TMP
  5. #define set_IAPGO BIT_TMP=EA;EA=0;TA=0xAA;TA=0x55;IAPTRG|=SET_BIT0 ;EA=BIT_TMP
  6. #define clr_IAPEN BIT_TMP=EA;EA=0;TA=0xAA;TA=0x55;CHPCON&=~SET_BIT0;EA=BIT_TMP
  7. unsigned char hircmap0,hircmap1;
  8. unsigned int trimvalue16bit;
  9. void MODIFY_HIRC_VLAUE(void)
  10. {
  11. set_IAPEN;
  12. IAPAL = 0x30;
  13. IAPAH = 0x00;
  14. IAPCN = READ_UID;
  15. set_IAPGO;
  16. hircmap0 = IAPFD;
  17. IAPAL = 0x31;
  18. IAPAH = 0x00;
  19. set_IAPGO;
  20. hircmap1 = IAPFD;
  21. clr_IAPEN;
  22. trimvalue16bit = ((hircmap0<<1)+(hircmap1&0x01));
  23. trimvalue16bit = trimvalue16bit - 15;
  24. hircmap1 = trimvalue16bit&0x01;
  25. hircmap0 = trimvalue16bit>>1;
  26. TA=0XAA;
  27. TA=0X55;
  28. RCTRIM0 = hircmap0;
  29. TA=0XAA;
  30. TA=0X55;
  31. RCTRIM1 = hircmap1;
  32. }
复制代码
但是这个例子里面用的手法是读取的0x30和0x31.为什么不是84和85呢?手册也没有介绍。
 楼主 | 2018-6-3 11:08 | 显示全部楼层
莫非这两对寄存器有关系?
 楼主 | 2018-6-3 11:09 | 显示全部楼层
希望新唐能下次更新手册时候提供这个信息啊,要不然不知道咋回事,稀里糊涂的用,心里不舒服啊,已经好几个人不爽了。
| 2018-6-3 11:34 | 显示全部楼层
可能有映射关系。
| 2018-6-3 13:11 | 显示全部楼层
不知道写例程的人出于何种目的。
| 2018-6-3 13:12 | 显示全部楼层
确实没有提到这个东西,这个应该是芯片隐藏了什么特别的功能。莫非有后门。
| 2018-6-3 13:53 | 显示全部楼层
这个我当初也没有多想,直接复制了这一段代码。
| 2018-6-3 17:51 | 显示全部楼层
虽然是个小问题,看你们这些单身讨论的很起劲,让我小白收获良多。
| 2018-6-4 23:17 | 显示全部楼层
应该有一些不太重要的地方,人家没说。不过我们能实现修改频率就行了
| 2018-6-5 19:42 | 显示全部楼层
不管那么多了,直接用这一段就行了。
| 2018-7-12 16:27 | 显示全部楼层
今天刚好看到这里,原因大概是RCTRIM0、RCTRIM1两个寄存器可以被修改,从0x84/0x85里面读参数的话,就不是原厂校准的16M的误差参数,而0x30/0x31里存的就是原厂出厂的16M校准参数,由于该值一直固定,不能修改,所以应该从这里读值,而减去15,是因为15*40K Hz=0.6M Hz,刚好为16.6M Hz,从这里也可看出,如果是加上15,可能就是15.4M Hz,依次类推,可以修改工作频率,虽然并无卵用
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式
我要创建版块 申请成为版主

论坛热帖

快速回复 返回顶部 返回列表