微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC单片机adc转换并显示

PIC单片机adc转换并显示

时间:11-29 来源:互联网 点击:

62H,1;否则将高4位加上低4位

MOVFW 62H;

ANDLW B11110000;

SUBLW 0A0H ;加后判断是否大于或等于0A0H

BCF STATUS,C;

BTFSS STATUS,Z;

GOTO DA4;否则退出

MOVLW B00001111;是

ANDWF 62H,1;则去掉高4位并进位

BSF STATUS,C;置进位标志

DA4 MOVFW 62H;

RETURN;

;**************************************************************

; 定时中断数码管显示程序

;**************************************************************

ZD01 BTFSS INTCON,T0IF;判断是否产生定时中断

GOTO ZD03;否跳出是继续执行

MOVWF W_TEMP;W备份到W_TEMP中

SWAPF STATUS,0;STATUS半字交换后送W

CLRF STATUS;选择体0为当前体备份

MOVWF STATUS_TEMP;将原来的STATUS送体0上的

MOVF PCLATH,0;PCLATH送W

MOVWF PCLATH_TEMP;W送备份寄存器中

CLRF PCLATH ;设置为0页

BCF INTCON,T0IF

BSF STATUS,RP0;体1

BCF STATUS,RP1;

MOVLW 0;

MOVWF TRISB;RB口设为输出口

MOVWF TRISD;RD口设为输出口

BCF STATUS,RP0;体0

BCF STATUS,RP1;

MOVLW 0FFH;

MOVWF PORTB;RB口输出高电平

MOVLW 0

MOVWF PORTD;RD口输出低电平起清屏作用

MOVFW INDF;间接寻址显示数据

CALL Q1;查数据表

MOVWF PORTB;显示断码输出到RB口

INCF FSR,1;间接寻址地址加1

MOVFW 41H ;位码

MOVWF PORTD;位码输出到RD口

RLF 41H,0;处理C

RLF 41H,1;左移位码

DECFSZ 40H,1;判断是否显示完4位

GOTO ZD02;否则继续显示

MOVLW 5;显示位数

MOVWF 40H;

MOVLW B00000001;位码

MOVWF 41H;

MOVLW 5AH;

MOVWF FSR ;间接寻址

ZD02

MOVLW 0FFH;

MOVFW TMR0;重装初值

; 恢复现场

CLRF STATUS;恢复到体0

MOVF PCLATH_TEMP,0;开始恢复数据

MOVWF PCLATH;恢复PCLATH

SWAPF STATUS_TEMP,0

MOVWF STATUS;恢复STATUS

SWAPF W_TEMP,1;半字交换后放回

SWAPF W_TEMP,0;再半字交换后送W

ZD03

RETFIE ;中断返回

ADC1 BSF STATUS,RP0;体1

BCF STATUS,RP1

MOVLW 0FFH

MOVWF TRISA;设置A口为输入口

MOVLW B10001110;设置ADC转换格式为右对齐并选RA0位AD口

MOVWF ADCON1

BCF STATUS,RP0;选择体0

BCF STATUS,RP1

MOVLW B11000001 ;选择ADC时钟频率选择RA0位AD通道使能ADC

MOVWF ADCON0

BSF ADCON0,GO;开始AD转换

BTFSC ADCON0,GO;判断是否转换完成

GOTO $-1

BSF ADCON0,GO;清完成标志

MOVFW ADRESH;将转换完成高位数存到50H

MOVWF 50H

BSF STATUS,RP0;体1

BCF STATUS,RP1

MOVFW ADRESL;将转换完成数存到51H

BCF STATUS,RP0;体0

BCF STATUS,RP1

MOVWF 51H

RETURN

M001 MOVLW 1

MOVWF 30H

M002 MOVLW D24

MOVWF 31H

M003 MOVLW D250

MOVWF 32H

DECFSZ 32H,1

GOTO $-1

DECFSZ 31H,1

GOTO M003

DECFSZ 30H,1

GOTO M002

RETURN

END

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top