PIC单片机adc转换并显示
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
PIC单片机adc转 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)