您的位置:网站首页 > 电器维修资料网 > 正文 >
PIC单片机A/D转换知识
来源: 日期:2013-11-20 18:38:17 人气:标签:
adcon1的第6、5、4位,在a/d转换中未派上用场,读作“0”。adcon1的第3、2、1、0位(bit3、bit2、bitl和bit0),是管理pic16f87x引脚功能(a或d)的选择,例如在下文c程序中,设adconl=ox8a时,选择pic16f873a的ano(rao.)、an1(ral)ra4(an4)、ra5(an5)为模拟量输入、(an6、an7为数字量输入),an3、an2参考电压设置端(+、-)。
(2)a/d转换结果寄存器adresh、adresl。因pic16f87x的a/d转换值是10位的二进制数(代码),而a/d转换的结果是存放在指定的结果寄存器中,因结果寄存器是8位的,所以a/d转换结果的10位数,利用adresh存放a/d的高字节;利用adresl存放a/d的低字节。存放方法是利用前述的adcon1的第7位(bit)adfm进行选择,当令adfm=1时,a/d转换结果的低8位存放在adrel中;高两位存放在adresh中;当令adfm=o时,a/d转换结果的低两位存放在adresl中,余下的高8位存放在adresh中,这由c语言设计者自由选择。若对a/d转换代码的分辨率要求不高(如实验程序),可取a/d转换的高8位而舍去低2位,以使c程序简化。
(3)a/d转换控制寄存器adcono。
adcono的功能是用于控制a/d转换的操作,其相关位的功能如下图所示。
图中adcono的第0位(bit0),adon是a/d转换允许位(俗称打开a/d转换),当令adon=1时,打开的a/d转换;adon=o时,关闭a/d转换。adcono的第1位,未使用读作o。
adcono的第2位go/done的反也是重要的功能位:在adon=1时,若令go/done的反=1,启动a/d转换;若令go/done的反=0,a/d转换完成。
adcono的5~3位(bit5、bit4和bit3)chs2、chs1、chso是a/d转换模拟通道的选择,对pic16f873a芯片,有下述关系:
adcono的第7、6位即adcs1和adcso,是a/d转换时钟选择位,有以下关系:
此外,在a/d转换时,还会用到外围接口中断标志寄存器pir1的标志位adif(bit6)和外围接口中断使能寄存器pie1的使能位adie。
当令adif=1时,代表a/d转换已完成;adif=o时,a/d转换未完成。
当令adie=1时,打开a/d转换中断;adie=o时,关闭a/d转换中断。
【看看这篇文章在百度的收录情况】
相关文章
- 上一篇: 5110液晶屏的操作指令和时序
- 下一篇: NFS服务在计算机系统中的作用