为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

单片机学习

2011-12-27 4页 doc 119KB 16阅读

用户头像

is_311195

暂无简介

举报
单片机学习程序必须按如下格式书写:     ORG     0000H                ; 程序一定从0开始写起     SJMP    START               ; 转入主程序     ORG     0030H                ; 主程序从0030H开始,空出中断入口地址 START:     ……     END                                 ; 程序结束,一个程序只能有一个END   实验一  D/A转换 (1)锯齿波     ORG...
单片机学习
程序必须按如下格式写:     ORG     0000H                ; 程序一定从0开始写起     SJMP    START               ; 转入主程序     ORG     0030H                ; 主程序从0030H开始,空出中断入口地址 START:     ……     END                                 ; 程序结束,一个程序只能有一个END   实验一  D/A转换 (1)锯齿波     ORG     0000H                ; 程序一定从0开始写起     SJMP    START               ; 转入主程序     ORG     0030H                ; 主程序从0030H开始,空出中断入口地址 START:     MOV     DPTR, #0F000H        ; D/A转换地址,必须满足启动要求 LOOP:     MOVX    @DPTR, A                ; 启动D/A转换,A没有必要赋初值     INC     A                                  ; 调整送出的数字量     SJMP    LOOP                        ; 进行下一次循环,不加延时周期最短     END                                        ; 程序结束,一个程序只能有一个END    (2)三角波     ORG     0000H                ; 程序一定从0开始写起     SJMP    START               ; 转入主程序     ORG     0030H                ; 主程序从0030H开始,空出中断入口地址 START:     MOV     DPTR, #0F000H        ; D/A转换地址,必须满足启动要求 LOOP_UP:                                 ; 三角波上升部分     MOVX    @DPTR, A               ; 启动D/A转换,A没有必要赋初值     INC     A                                 ; 增量调整送出的数字量     CJNE    A, #0FFH, LOOP_UP; 判断数字量是否到达最大值 LOOP_DOWN:                          ; 三角波下降部分     MOVX    @DPTR, A              ; 启动D/A转换     DEC     A                               ; 减量调整送出的数字量     CJNE    A, #0, LOOP_DOWN; 判断数字量是否到达最小值     SJMP    LOOP_UP                ; 进行下一个三角波周期     END                                      ; 程序结束,一个程序只能有一个END   实验二  A/D转换     ORG     0000H                ; 程序一定从0开始写起     SJMP    START               ; 转入主程序     ORG     0030H                ; 主程序从0030H开始,空出中断入口地址 START:     MOV     DPTR, #0F000H        ; A/D转换地址,必须满足启动要求,选转换通道0 LOOP:     MOVX    @DPTR, A                ; 启动A/D转换,A值对启动无影响     JNB     P3.3, $                         ; 查询转换是否结束(EOC = P3.3,低电平时仍在转换)     MOVX    A, @DPTR                ; 取出转换结果,转换结束时执行此指令     MOV     P1, A                          ; 转换结果送8位发光二极管显示     SJMP    LOOP                         ; 进行下一次转换循环     END                                         ; 程序结束,一个程序只能有一个END   模拟量与数字量的关系可以换算出来,呈线性关系:     模拟量0V对应数字量00H;     模拟量5V对应数字量FFH;         可以计算出模拟量与数字量的关系如下:  输入模拟量/V  0  +1  +2  +2.5  +3  +4  +5  输出数字量  00H  33H 66H  80H  99H  CCH  FFH  (转自老师博客)
/
本文档为【单片机学习】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索