礼品代发网

礼品代发网

收录130107113题,礼品代发网免费搜题解答

今日已更新0道题

pic16f1936如何编程-pic16f877a程序实例

2025-11-08 06:22:48  

pic16f1936如何编程-pic16f877a程序实例

优质解答

先说说咋回事。新芯片16F1936和旧芯片877A编程有点像,但关键地方不一样。比如定时器设置,877A用TMR0和TAC1,1936用TMR1和TMR2。ADC转换的话,877A要分两步读取ADRESH和ADRESL,1936直接用ADC1H和ADC1L。还有配置寄存器不同,877A用CMCON,1936用CMCON1和CMCON2。

为啥是这个答案呢?查资料发现,877A是8位ADC,转换结果占8位,所以得两个寄存器存数据。而1936升级到10位ADC,结果占10位,但数据还是分高低字节存。比如看程序实例,877A代码里ADRESH和ADRESL分别读,而1936直接读ADC1H和ADC1L。数据手册里写明1936的ADC模块有10位分辨率,对应数据总线占用10位,所以高低字节组合起来。还有定时器配置,877A的TAC1最大到65355,1936的TMR2能到65535,所以计数范围大一级。这些差异导致程序实例里定时器初值和ADC读取方式不一样,但基本操作逻辑还是相通的。

本题链接:

定时器配置ADC转换