51写的0809AD转换程序.doc_第1页
51写的0809AD转换程序.doc_第2页
51写的0809AD转换程序.doc_第3页
51写的0809AD转换程序.doc_第4页
51写的0809AD转换程序.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

;模数转换8位,最小精度0.02,;ADC 0809;外部频率500KHZ; -; 0.00.3位控制-|p0 p2 |-|-/8-显示段控制; 0.40.7按键-| |; | |; | |; | |-ALE-CLOCK; | |; | |-p3.5- OE; A/D 8BIT-|p1 P3 |-P3.4-EOC; | |-p3.3-START/ALE; | |-P3.0P3.2-显示位控制; -;转换顺序,先选通地址,再SAA脉冲信号,延时10MS,等待EOC为高,从P1口读入,(也可以P2口读入);作为动态自动扫描时,用33H存显示的通道,并赋给P3口,而P3口高位全为一,保证数据的有效读入;晶振12MHZ;30,31,32-=显示字,33H-8BIT,34H-MODE,35H-BIT CONTROL,36-显示通道字 37H-10 38H-FFHSTA BIT P3.6;START 11010 000ALE BIT P3.3 ; ALEEOC BIT P3.4OE BIT P3.5DYBJ BIT 20H.0 ;大于比较XYBJ BIT 20H.1 ;小于比较CCBJ BIT 20H.2 ;存储电压标记;*程序开始初始化*ORG 0000HSTART:MOV P0,#0FFHMOV P1,#0FFHMOV P3,#0D0HMOV P2,#0FFHMOV 20H,#00H ;延时初始化MOV R5,#25MOV R6,#50MOV R7,#50MOV 30H,#0BFH; - 显示初始化 显示位 2MOV 31H,#0BFH ; - 显示初始化 显示位 3MOV 32H,#0BFH ; - 显示初始化 显示位4MOV 33H,#00H ;BIT CONTROL -8MOV 34H,#00H ;MODE SELECT COUNTERMOV 36H,#0BFH ; - 显示初始化 显示位1; -存储区初始化-MOV 50H,#00HMOV 51H,#00HMOV 52H,#00HMOV 53H,#00HMOV 54H,#00HMOV 55H,#00HMOV 56H,#00HMOV 57H,#00HCALL XIANSHIAJMP ITMODETS;-DELAY: ;10 MSDJNZ R5,$MOV R5,#25 ;提高扫描次数DJNZ R6, DELAYMOV R6,#50RET;*显示部分800MS*XIANSHI:MOV P2,36HCLR P0.0CALL DELAYSETB P0.0MOV P2,30HCLR P0.1CALL DELAYSETB P0.1MOV P2,31HCLR P0.2CALL DELAYSETB P0.2MOV P2,32HCLR P0.3CALL DELAYSETB P0.3DJNZ R7,XIANSHIMOV R7,#50RET;-模式部分-ITMODETS:;智能模式提示MOV 33H,#00HMOV 36H,#0A4H ;ZMOV 30H,#0C8H ;NMOV 31H,#0A3H ;oMOV 32H,#0A3H ;oCALL XIANSHIITMODE: ;智能模式JNB P0.4,AUTOMODETSCALL WBQZMOV A,21HCJNE A,#00H,ITMODE0JMP ITMODE1ITMODE0:CALL TDXIANSHICALL XIANSHI ;延长时间ITMODE1:CALL TDADD1AJMP ITMODE;-CUN CHU MODE-STOREMODETS: ;智能选择,循环显示MOV R1,#50HMOV 33H,#00HMOV 36H,#0C6H ;CMOV 30H,#0C6H ;CMOV 31H,#0A3H ;oMOV 32H,#0A3H ;oCALL XIANSHIJNB P0.4,STOREMODETS;防止按键时间过长,跳过该模式STOREMODE: ;存储模式;初始化R1JNB P0.4,ITMODETSMOV 21H,R1MOV A,21HCJNE A,#00H, STMODEJMP STMODE0STMODE:CALL CCTDSTMODE0:CALL TDADD1INC R1CJNE R1,#58H,STOREMODEMOV R1,#50HAJMP STOREMODE;-AUTO MODE-AUTOMODETS:MOV 33H,#00HMOV 36H,#0A4H ;ZMOV 30H,#0A1H ;dMOV 31H,#0A3H ;oMOV 32H,#0A3H ;oCALL XIANSHIAUTOMODE: ;自动模式JNB P0.4,MANMODETSCALL TZXCALL TDADD1AJMP AUTOMODE;-MAN MODE-MANMODETS:MOV 33H,#00HMOV 36H,#092H ;SMOV 30H,#0A1H ;dMOV 31H,#0A3H ;oMOV 32H,#0A3H ;oCALL XIANSHIMANMODE: ; 手动模式 ,具有电压存储功能JNB P0.4,STOREMODETSCALL TZXJB P0.6, MMDCALL DELAYJB P0.6, MMDCALL TDADD1 ;通道加一 按键检测AJMP MANMODEMMD:JB P0.7,MMD0CALL DELAYJB P0.7,MMD0CALL TDPLUS1 ;通道减一 按键检测AJMP MANMODEMMD0: ;存储通道电压按键检测JB P0.5,MANMODECALL DELAYJB P0.5,MANMODEMOV R1,#50H ;按通道存储MOV A, 33HADD A, R1MOV R1,AMOV R1,21H ; 加入存储动作提示MOV 36H,#0C6HMOV 30H,#0C6HMOV 31H,#0BFHMOV 32H,#0BFHCALL XIANSHIJMP MANMODE;-一体化部分-TZX:;通道,转换,显示一体化CALL TDXIANSHICALL WBQZCALL XIANSHIRETCCTD: ;存储通道,编码,显示一体化CALL TDXIANSHICALL CONVERTCALL XIANSHIRET;-通道显示转化部分-TDXIANSHI: ;通道字的转换MOV A,33HMOV DPTR,#XSSMOVC A,A+DPTRMOV 36H,ARETTDADD1: ;通道加一MOV A,33HINC ACJNE A,#08H,TDTZMOV 33H,#00HRETTDTZ: ;通道调整MOV 33H,ARETTDPLUS1: ;通道减一MOV A,33HDEC ACJNE A,#0FFH,TDTZ;通道调整MOV 33H,#00HRET;+计数部分 JISHI BU FEN+;以下为电压查询部分,可直接调用-WBQZ: ;外部取值MOV 20H,#00HMOV P2,#0FFHMOV 35H,33HORL 33H,#0D0HMOV P3,33HMOV 33H,35HSETB ALECLR STAJNB EOC,$MOV P1,#0FFH ; 高阻态SETB OEMOV A,P1MOV 21H,ACONVERT: ;电压查询转换MOV 30H,#2MOV 31H,#5MOV 32H,#00HCLR OEAJMP SWCXSWCX:MOV A,30HMOV DPTR,#ZSB;整数表,存的是二进制电压MOVC A,A+DPTRCJNE A,21H,JXC;继续查AJMP SWCC;首位查出JXC:SUBB A,21HJC ADD0 AJMP PLUS0PLUS0: DEC 30H JB XYBJ,ZWCX;中为查询 CLR C SETB DYBJ AJMP SWCXADD0: JB DYBJ,ZWCX INC 30H CLR C SETB XYBJ AJMP SWCXZWCX: ;中为查询,根据30H的值,找出表单 MOV A,30H CX0V: CJNE A,#00H,CX1V MOV DPTR,#TAB0V AJMP ZWXC CX1V: CJNE A,#01H,CX2V MOV DPTR,#TAB1V AJMP ZWXC;中位详查 CX2V: CJNE A,#02H,CX3V MOV DPTR,#TAB2V AJMP ZWXC CX3V: CJNE A,#03H,CX4V MOV DPTR,#TAB3V AJMP ZWXC CX4V: CJNE A,#04H,WRONG MOV DPTR,#TAB4V AJMP ZWXCWRONG: MOV P2,#079H;E CPL P0.3 CALL DELAY;20MS DJNZ R7,WRONG MOV R7,#20 AJMP XIANSHI;显示上次测量电压600MS后,就重新测量ZWXC: MOV 20H,#00HZWXC1: MOV A,31H MOVC A,A+DPTR MOV 22H,A CJNE A,21H,BJ AJMP ZWCCBJ: SUBB A,21H JC ADD1 AJMP PLUS1PLUS1: DEC 31H JB XYBJ,MWCX;中为查询 CLR C SETB DYBJ AJMP ZWXC1ADD1: JB DYBJ,MWCX INC 31H CLR C SETB XYBJ AJMP ZWXC1MWCX: ;调整22H的值为前一值,查询溢出时,调整为9 CLR C MOV A,31H MOVC A,A+DPTR MOV 22H,AMWCX0:; MOV A,22H INC 22H; INC 32H MOV A,22H CJNE A,21H,MWCX0 MOV A,#5 SUBB A,32H JC MWYC JZ MWYC MOV A,32H RL A MOV 32H,A AJMP CBQZMWYC: MOV 32H,#9 JMP CBQZSWCC: MOV 31H,#0ZWCC: MOV 32H,#0CBQZ: MOV DPTR,#DDS;带点数 MOV A,30H MOVC A,A+DPTR MOV 30H,A MOV DPTR,#XSS;显示数查询 MOV A,31H MOVC A,A+DPTR MOV 31H,A MOV A,32H MOVC A,A+DPTR MOV 32H,A RETZSB: DB 00H, 33H ,66H, 99H,0CCH,0FFHDDS: DB 040H;0. 带点数 DB 079H;1. DB 024H;2. DB 030H;3. DB 019H;4. DB 012H;5.XSS: DB 0C0H;0 显示数字 DB 0F9H;1 DB 0A4H;2 DB 0B0H;3 DB 099H;4 DB 092H;5 DB 082H;6 DB 0F8H;7 DB 080H;8 DB 090H;9 电压表单TAB0V: DB 00H, 05H, 0AH, 0FH, 14H, 19H, 1EH, 23H, 28H, 2DH, 33H ; 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1TAB1V: DB 33H, 38H, 3DH, 42H, 47H, 4CH, 51H, 56H, 5BH, 60H, 66H ; 1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2TAB2V: DB 66H, 6BH, 70H, 75H, 7AH, 7FH, 84H, 89H, 8EH, 93H, 99H ; 2.0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论