单片机实验-A/D和D/A转换

发布者:EuphoricVoyage最新更新时间:2022-09-13 来源: csdn关键字:单片机  转换 手机看文章 扫描二维码
随时随地手机看文章

ORG     0000H 

DATAR0  EQU     50H         ;定义保存采集现场数据单元 

        LJMP    MAIN 

        ORG     000BH       ;定义定时/计数器 T0 中断入口地址 

        LJMP    T0P 

        ORG     0100H 

MAIN :  MOV     SP , #60H    ;设置中断指针 

        MOV     TMOD,#01H   ;设置定时/计数器 T0 为工作方式 1、定时 

        MOV     TL0 ,#0D0H  ;设置定时常数 

        MOV     TH0 ,#80H 

        SETB    TR0         ;开启定时/计数器 T0 

        SETB    ET0         ;打开定时/计数器 T0 中断允许开关 

        SETB    EA          ;打开总开关 

        MOV     DPTR,#3000H  ;设置第三通道地址                   

        MOVX    @DPTR,A     ;启动第三通道转换       

LOOP:   LCALL   DATA1 

        LCALL   DISPLAY 

        SJMP    LOOP 

T0P:    MOV    TL0,#0D0H    ;重新设置定时常数 

        MOV    TH0,#80H 

        MOV    DPTR,#3000H  ;将第三通道地址送 DPTR 

        MOVX   A,@DPTR      ;读取转换值 

        MOV    DATAR0,A     ;保留转换值 

        MOVX   @DPTR,A      ;重启第三通道转换 

        RETI 

        DATA1:              ;显示格式转换子程序 

        MOV     79H,#03H 

        MOV     7AH,#11H 

        MOV     A,DATAR0 

        ANL     A,#0F0H 

        SWAP    A 

        MOV     7BH,A 

        MOV     A,DATAR0 

        ANL     A,#0FH 

        MOV     7CH,A             

        RET        

DISPLAY:                  

      MOV    R0,#79H       ;显示缓冲区首地址送 R0 

      MOV    R3,#01H       ;字位码送 R3 保存 

      MOV    A,R3 

LD0:  MOV    P2,A          ;字位码送位码端口 P2,点亮该位 

      MOV    A,@R0         ;取出一位要显示的数据 

      MOV    DPTR,#TAB1    ;表首地址送 DPTR 

      MOVC   A,@A+DPTR     ;查表获取该数据的字型码            

DIR1: MOV    P0,A          ;字型码送段码端口 P0 

      ACALL  DL11          ;调用延时子程序 

      INC    R0            ;缓冲区地址+1 

      MOV    A,R3          ;取出位码 

      JB     ACC.5,LD1     ;判断 6 位数码管显示完吗?显示完转 LD1 

      RL     A             ;未完,左移一位 

      MOV    R3,A          ;保存位码 

      AJMP   LD0 

LD1:  RET                  ;子程序返回 

TAB1: DB     0C0H,0F9H,0A4H,0B0H,99H,92H 

      DB     82H,0F8H,80H,90H,88H,83H,0C6H,0A1H            

      DB     86H,8EH,0BFH,0FFH,0FFH 

DL11: MOV    R7,#02H 

DL:   MOV    R6,#0FFH 

DL6:  DJNZ   R6,DL6 

      DJNZ   R7,DL 

      RET 

      END 

这里写图片描述

ORG 0000H

LJMP MAIN

ORG 000BH

AJMP LOOP

ORG 001BH

AJMP LOOP1

ORG 0030H

MAIN:MOV SP,#60H

     MOV DPTR,#7FFFH

     MOV TMOD,#11H

     MOV TH0,#3CH

     MOV TL0,#0B0H

     MOV TH1,#3CH

     MOV TL1,#0B0H

     SETB EA

     SETB ET0

     SETB ET1

     SETB TR0

     SJMP $

LOOP:MOV A,#0F2H

     MOVX @DPTR,A

     CLR TR0

     MOV TH0,#3CH

     MOV TL0,#0B0H

     SETB TR1

     RETI

LOOP1:MOV A,#01H

     MOVX @DPTR,A

     CLR TR1

     MOV TH1,#3CH

     MOV TL1,#0B0H

     SETB TR0

     RETI

     END

这里写图片描述

这里写图片描述


关键字:单片机  转换 引用地址:单片机实验-A/D和D/A转换

上一篇:单片机-串口与PC通信
下一篇:单片机-多分支实验

推荐阅读最新更新时间:2024-11-12 15:50

5英寸屏+骁龙410芯 OPPO入门机A51曝光
    最近获得工信部入网许可的新机不少,OPPO也有一款,不过是入门级别的。该机采用一块5英寸720P屏幕,内置一颗高通骁龙410处理器,与此前曝光的A31外形比较接近。   其他配置方面,该机将搭载2GB运行内存+16GB机身存储,拍照方面则是500万像素前置镜头+800万像素后置镜头组合,后置电池容量为2420毫安时,不支持拆卸。     OPPO A31售价为999元,从型号上看,这款OPPO A51应该比前者定位稍高一点儿,但预计售价也将保持在千元级别。它支持移动4G网络,近期应该就会推出。
[手机便携]
单片机AVR微控制器蓄电池充放电控制器的设计
本设计采用AVR单片机Mega16L作为核心,可同时控制两块539CH-1型蓄电池的充、放电过程。Mega16L通过串行总线接收上位机的命令,然后通过SPI总线将数据发送给TLV5638。单片机通过多路模拟开关CD4053将TLV5638的两路D/A输出送入信号调整电路,从而完成对充放电电流的控制。放电过程中,Mega16L通过控制8D锁存器74LS573和复合管阵列ULN2081控制放电电阻接入。系统框图如图1所示。 图1 系统原理框图硬件设计   硬件系统包括串行通信电路、充电和放电控制电路、继电器驱动电路等模块。 通信电路   单片机通过串口与上位机通信。Mega16L端口为TTL电平,而上位机串口为RS232C标准接口
[单片机]
<font color='red'>单片机</font>AVR<font color='red'>微控制器</font>蓄电池充放电控制器的设计
如何快速零基础到入门51单片机(三)
单片机介绍 单片机:在一片集成电路芯片上集成微处理器(CPU)、存储器(ROM和RAM)、I/O接口、定时器、中断系统等电路,从而构成了单芯片微型计算机,也就是单片机(single chip Microcomputer)也叫微控制器(MCU)。 https://pic1.zhimg.com/80/v2-7110e1c15a3e3d73697d21841407db97_1440w.jpg 单片机的性能与计算机相比计算机要高出非常多。正是因为早期的电脑为了性能丰富导致体积大、造价昂贵,人们只需要它的部分功能,就把主要的一些器件拿出来组成了新的物品就是单片机。 所以单片机的优点就是体积小、结构简单、而且成本很低。 单片机的工作流程
[单片机]
罗德RS SMF100A信号发生器维修案例
故障现象 输出电平超差大 检测过程 经检测,仪器3G以下,20G左右输出电平超差大,放大滤波微波开关单元损坏。 维修过程 更换放大滤波微波开关单元损坏组件,调整检测仪器。 维修结果 仪器开机后,输出电平正常,完成修复。
[测试测量]
罗德RS SMF100<font color='red'>A</font>信号发生器维修案例
51单片机——按键操作
在51单片机开发板上,对按键设置进行操作,其中包括按键的按下,显示对应位置,以及按键密码锁 1.按下按键显示对应位置 main.c #include REGX52.H #include Delay.h #include LCD1602.h #include MatrixKey.h unsigned char KeyNum; void main() { LCD_Init(); LCD_ShowString(1,1, helloworld ); while(1) { KeyNum=MatrixKey(); if(KeyNum) { LCD_ShowNum(2,1,KeyNum,
[单片机]
【51单片机】 火焰传感器用法及代码
这里用的是4线,3线的原理也是一样的。 IO口在程序中自定义,下面用的是P3^0 #include regx51.h void main() { while(1) { P2=0xff; //初始化led if(P3_0==0) //传感器检测到火焰信号 P2=0x00; //led全亮 } } 接线: AO:模拟输出信号 DO:数字输出信号 本文只用数字输出信号DO–接P3^0口,Vcc、Gnd分别是电源和接地
[单片机]
【51<font color='red'>单片机</font>】 火焰传感器用法及代码
PIC单片机对家庭防盗传感器的设计
PI C12C508/509是8脚封装的8位 单片机 ,极适合于嵌入到各种电子装置中做智能开发,下面介绍二个较为简洁的实例电路,供参考学习。 灯光亮度调节器 根据房间亮度自动调节电灯亮度 手动调节电灯亮度 家庭防盗传感器 非法进入声/光报警 单片机 自动报警/状态保存 手动开启/关闭系统
[单片机]
PIC<font color='red'>单片机</font>对家庭防盗传感器的设计
51单片机8位数码管电子时钟仿真图及源代码
利用8位数码管显示时间,原理与4位数码管显示的基本一样 仿真图: 程序源代码: 本程序已经通过在线软件仿真和硬件制作. org 0000h ;程序开始入口地址 sjmp main ;跳转至主程序 org 000bh ;T0中断入口地址 ljmp inti0 ;跳转至T0中断程序 org 001bh ;T1中断入口地址 ljmp inti1 ;跳转至T1中断程序 org 0030h main:mov tmod,#11h ;设T0、T1为模式1 mov ie,#8ah ;开T0、T1允许中断 mov th0,#4ch ;赋T0 50ms初值 mov tl0,#00h mov th1,#4ch ;赋T1 50ms初值 mov t
[单片机]
51<font color='red'>单片机</font>8位数码管电子时钟仿真图及源代码
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved