网站导航免费论文 原创论文 论文搜索 作业答案 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 设计资源 > 单片机 > 正文
实战十六《用数码管显示的单通道模拟量采集器》
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: Admin 发布时间: 10/06/19
始化
 ;***** *****************
ATOD:
 banksel ADCON1
 movlw B'10001110'                 ;转换结果右对齐,除RA0为模拟输入口外,其他RA口跟RE口均为普通数字口
 movwf ADCON1
 CLRF  STATUS
 movlw B'01000001'                 ;转换时钟频率为内部时钟的1/8,AN0通道,允许ADC工作,暂时不开启AD转换
 movwf ADCON0
 ;*****  ************************
 movlw 0x00
 movwf  disbuf
 movwf  disbuf+1
 movwf  disbuf+2

 CLRF   STATUS
 BTFSS  INTCON,T0IF                ;等待和循环检测TMR0溢出中断标志位
 GOTO   $-1                        ;如果没有发生TMR0溢出中断则返回循环检测
 BCF    INTCON,T0IF                ;保证足够的采样时间
 movlw 0xa0                        ;TMRO初值
 movwf TMR0                
 bsf    ADCON0,GO                  ;开始转换
ADWAIT:
 btfsc ADCON0,GO
 goto ADWAIT                       ;等待转换完成
 banksel ADRESH
 movf ADRESH,w                     ;读电压值高2位
 CLRF STATUS
 movwf vrevh
 BANKSEL ADRESL
 movf ADRESL,w                     ;读电压低8位
 CLRF STATUS
 movwf vrevl                       ;装值放入接收寄存器VERVH,VERVL,为节省时间
                                   ;采样值可以直接放入SOUH,SOU,但运算不方便
 ;*******测试用B'1100001111'**********************
; movlw 0x03                        ;这里可以手动往VREVH,VrevL两个寄存器输入10位AD值,以便用来测试是否能
                                   ;在LED上显示正确的电压值,如:30F=B'1100001111'(10位采样AD值);
                                   ;30F的实际值是3.823V,那么在LED上将显示3.82,寄存器21,22,23的值分别为3,8,2
 ;movwf vrevh                       ;程序正常采样时这四句话要屏蔽;
; movlw 0x0f
; movwf vrevl
 ;************************************************
 movf vrevh,w
 movwf SOUH                        ;将被乘数放入SOUH,SOU
 movf vrevl,w
 movwf

网学推荐

免费论文

原创论文

浏览:
设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 电话:013574892963 QQ:3710167 邮箱:Educs@163.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 Www.myeducs.Cn All Rights Reserved
湘ICP备09003080号