欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    浙大单片机液晶显示模拟多通道数据采集(共7页).doc

    • 资源ID:14441673       资源大小:46.50KB        全文页数:7页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    浙大单片机液晶显示模拟多通道数据采集(共7页).doc

    精选优质文档-倾情为你奉上专业: 电子信息工程 姓名: 学号: 日期: 6月21日 地点: 东三411 实验报告课程名称: 微机原理与接口技术 指导老师: 陆玲霞 成绩:_实验名称:液晶显示模拟多通道数据采集系统 实验类型:_同组学生姓名:_一、 实验目的1、掌握和理解单片机总线工作模式下各信号线的跳变及相应的时序。特别要了解ALE及RD、WR信号线在总线方式下的时序。2、在总线方式下各相应指令的结构。3、外围接口芯片的地址选择方式。4、了解LCD模块的使用说明及特别是指令说明。二、 实验内容采用总线方式构架一个多路数据采集系统。并将采样数据分二行在液晶显示模块上进行实时显示。随着被采样电压值的变化液晶显示器显示的值跟随变化(即连续采样)。显示数值为实际的电压值。C H 4: xx H CH5:xx HC H 6: xx H CH0:xx H三、 实验要求1、ADC0809 对三路数据【通道4、通道5、通道6】进行采样,同时将通道4的采样结果送人DAC0832进行DA转换,再将DA输出电压接到AD的通道0进行转换并将4个通道的实际值分分二行发送到液晶显示器上进行显示。显示效果如上图所示。2、通过实验建立微处理器总线构架及系统内地址选择的等基本概念3、掌握A/D转换器ADC0809、DAC0832及液晶显示模块的工作原理。4、编写A/D、D/A转换及液晶显示模块的实验程序。四、 LIST文件和注释ORG 0000H0000 2100 AJMP MAIN ORG 0003H0003 4177 AJMP INTDATA;中断服务子程序 ORG 0100H;数据采集程序0100 7830 MAIN:MOV R0,#30H;数据缓冲区首地址0102 7A03 MOV R2,#3;采集三个通道0104 MOV DPTR,#2004H;指向模拟量输入通道40107 C2D5 START:CLR F0;中断发生标志清零0109 F0 MOVX DPTR,A;启动A/D转换010A D288 SETB IT0;设置外部中断0为边沿触发010C D2A8 SETB EX0;允许外部中断0010E D2AF SETB EA;开中断0110 30D5FD LOOP:JNB F0,LOOP;等待中断发生0113 DAF2 DJNZ R2,START;判断3个模拟量是否转换结束 DATRANS:0115 MOV DPTR,#2100H;DA转换0118 E530 MOV A,30H011A F0 MOVX DPTR,A011B MOV DPTR,#2200H011E F0 MOVX DPTR,A ADAGAIN: ;模拟量通道0输出做AD转换011F 7833 MOV R0,#33H;数据存入数据存储器33H单元0121 MOV DPTR,#2000H;指向模拟量输入通道00124 C2D5 CLR F0;清中断发生标志0126 F0 MOVX DPTR,A;启动A/D0127 D288 SETB IT0;置外部中断0为边沿触发0129 D2A8 SETB EX0;允许外部中断0012B D2AF SETB EA;开中断012D 30D5FD LOOP1:JNB F0,LOOP1;判断中断发生标志是否为0 0130 LCDS:MOV DPTR,#2300H;液晶初始化,指向写指令口0133 C2D5 CLR F00135 12026B INIT:LCALL RDBUSY;判LCD“忙”?0138 7438 MOV A,#38H;系统设置,8位2行5×7点阵013A F0 MOVX DPTR,A013B 12026B LCALL RDBUSY;判LCD“忙”?013E 7401 MOV A,#01H;清屏0140 F0 MOVX DPTR,A0141 12026B LCALL RDBUSY;判LCD“忙”?0144 7402 MOV A,#02H;光标回到第一行第一列0146 F0 MOVX DPTR,A0147 12026B LCALL RDBUSY;判LCD“忙”?014A 7406 MOV A,#06H;显示地址加1模式014C F0 MOVX DPTR,A014D 12026B LCALL RDBUSY;判LCD“忙”?0150 740F MOV A,#0FH0152 F0 MOVX DPTR,A;打开显示 TRANS:;ASCII码转换程序0153 90028E MOV DPTR,#TABLE;指向ASCII码表首址0156 E530 MOV A,30H;取模拟量通道4的数据0158 75F010 MOV B,#10H;将高低位分开015B 84 DIV AB015C 93 MOVC A,A+DPTR;高位查表存入20H单元015D F520 MOV 20H,A015F E5F0 MOV A,B;低位查表存入21H单元0161 93 MOVC A,A+DPTR0162 F521 MOV 21H,A 0164 E531 MOV A,31H;取模拟量通道5的数据0166 75F010 MOV B,#10H;将高低位分开0169 84 DIV AB016A 93 MOVC A,A+DPTR;高位查表存入22H单元016B F522 MOV 22H,A016D E5F0 MOV A,B;低位查表存入23H单元016F 93 MOVC A,A+DPTR0170 F523 MOV 23H,A 0172 E532 MOV A,32H;取模拟量通道6的数据0174 75F010 MOV B,#10H;将高低位分开0177 84 DIV AB0178 93 MOVC A,A+DPTR;高位查表存入24H单元0179 F524 MOV 24H,A017B E5F0 MOV A,B;低位查表存入25H单元017D 93 MOVC A,A+DPTR017E F525 MOV 25H,A 0180 E533 MOV A,33H;取模拟量通道0的数据0182 75F010 MOV B,#10H;将高低位分开0185 84 DIV AB0186 93 MOVC A,A+DPTR;高位查表存入26H单元0187 F526 MOV 26H,A0189 E5F0 MOV A,B;低位查表存入27H单元018B 93 MOVC A,A+DPTR018C F527 MOV 27H,A DISPLAY1:018E MOV DPTR,#2300H;指向写指令口0191 12026B LCALL RDBUSY0194 7480 MOV A,#80H;设置数据显示位置为00H0196 F0 MOVX DPTR,A0197 12026B LCALL RDBUSY019A MOV DPTR,#2302H;指向写数据口019D 7443 MOV A,#43H;显示“C”019F F0 MOVX DPTR,A01A0 12026B LCALL RDBUSY01A3 7448 MOV A,#48H;显示“H”01A5 F0 MOVX DPTR,A01A6 12026B LCALL RDBUSY01A9 7434 MOV A,#34H;显示“4”01AB F0 MOVX DPTR,A01AC 12026B LCALL RDBUSY01AF 743A MOV A,#3AH;显示“:”01B1 F0 MOVX DPTR,A01B2 12026B LCALL RDBUSY01B5 E520 MOV A,20H;显示通道4转换的数据的高位01B7 F0 MOVX DPTR,A01B8 12026B LCALL RDBUSY01BB E521 MOV A,21H;显示通道4转换的数据的低位01BD F0 MOVX DPTR,A01BE 12026B LCALL RDBUSY01C1 7448 MOV A,#48H;显示“H”01C3 F0 MOVX DPTR,A01C4 12026B LCALL RDBUSY01C7 7420 MOV A,#20H;一个空格01C9 F0 MOVX DPTR,A DISPLAY2:01CA 12026B LCALL RDBUSY01CD 7443 MOV A,#43H;显示“C”01CF F0 MOVX DPTR,A01D0 12026B LCALL RDBUSY01D3 7448 MOV A,#48H;显示“H”01D5 F0 MOVX DPTR,A01D6 12026B LCALL RDBUSY01D9 7435 MOV A,#35H;显示“5”01DB F0 MOVX DPTR,A01DC 12026B LCALL RDBUSY01DF 743A MOV A,#3AH;显示“:”01E1 F0 MOVX DPTR,A01E2 12026B LCALL RDBUSY01E5 E522 MOV A,22H;显示通道5转换的数据的高位01E7 F0 MOVX DPTR,A01E8 12026B LCALL RDBUSY01EB E523 MOV A,23H;显示通道5转换的数据的低位01ED F0 MOVX DPTR,A01EE 12026B LCALL RDBUSY01F1 7448 MOV A,#48H;显示“H”01F3 F0 MOVX DPTR,A01F4 12026B LCALL RDBUSY01F7 7420 MOV A,#20H;一个空格01F9 F0 MOVX DPTR,A DISPLAY3:01FA MOV DPTR,#2300H01FD 12026B LCALL RDBUSY0200 74C0 MOV A,#0C0H;换行0202 F0 MOVX DPTR,A0203 12026B LCALL RDBUSY0206 MOV DPTR,#2302H;指向写数据口0209 7443 MOV A,#43H;显示“C”020B F0 MOVX DPTR,A020C 12026B LCALL RDBUSY020F 7448 MOV A,#48H;显示“H”0211 F0 MOVX DPTR,A0212 12026B LCALL RDBUSY0215 7436 MOV A,#36H;显示“6”0217 F0 MOVX DPTR,A0218 12026B LCALL RDBUSY021B 743A MOV A,#3AH;显示“:”021D F0 MOVX DPTR,A021E 12026B LCALL RDBUSY0221 E524 MOV A,24H;显示通道6转换的数据的高位0223 F0 MOVX DPTR,A0224 12026B LCALL RDBUSY0227 E525 MOV A,25H;显示通道6转换的数据的低位0229 F0 MOVX DPTR,A022A 12026B LCALL RDBUSY022D 7448 MOV A,#48H;显示“H”022F F0 MOVX DPTR,A0230 12026B LCALL RDBUSY0233 7420 MOV A,#20H;一个空格0235 F0 MOVX DPTR,A DISPLAY4:0236 12026B LCALL RDBUSY0239 7443 MOV A,#43H;显示“C”023B F0 MOVX DPTR,A023C 12026B LCALL RDBUSY023F 7448 MOV A,#48H;显示“H”0241 F0 MOVX DPTR,A0242 12026B LCALL RDBUSY0245 7430 MOV A,#30H;显示“0”0247 F0 MOVX DPTR,A0248 12026B LCALL RDBUSY024B 743A MOV A,#3AH;显示“:”024D F0 MOVX DPTR,A024E 12026B LCALL RDBUSY0251 E526 MOV A,26H;显示通道0转换的数据的高位0253 F0 MOVX DPTR,A0254 12026B LCALL RDBUSY0257 E527 MOV A,27H;显示通道0转换的数据的低位0259 F0 MOVX DPTR,A025A 12026B LCALL RDBUSY025D 7448 MOV A,#48H;显示“H”025F F0 MOVX DPTR,A0260 12026B LCALL RDBUSY0263 7420 MOV A,#20H;一个空格0265 F0 MOVX DPTR,A0266 12027E LCALL DELAY;调用延时子程序0269 2100 AJMP MAIN;跳转到MAIN重复上述操作 RDBUSY:;判LCD“忙”子程序026B C082 PUSH DPL;DPTR低位入栈026D MOV DPTR,#2301H;指向状态口 HERE:;读状态是否为“忙”?0270 E0 MOVX A,DPTR0271 20E7FC JB ACC.7,HERE0274 D082 POP DPL;DPTR低位出栈0276 22 RET 0277 E0 INTDATA:MOVX A,DPTR;中断服务子程序:读转换数据0278 F6 MOV R0,A;将数据存入片内数据存储器0279 08 INC R0;存储单元地址加1027A A3 INC DPTR;指向下一个模拟量输入通道027B D2D5 SETB F0;置中断发生位027D 32 RETI DELAY:;延时子程序,防止液晶闪烁027E 7540F0 MOV 40H,#0F0H0281 7541F0 MOV 41H,#0F0H DDELAY: DDDELAY:0284 D541FD DJNZ 41H,DDDELAY0287 7541F0 MOV 41H,#0F0H028A D540F7 DJNZ 40H,DDELAY028D 22 RET 028E 0291 0294 0297 029A 029D 46 TABLE:DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H,45H,46H;ASCII码表五、心得体会本次实验综合性较强,对单片机初学者来说有一定的难度,但是不失为一次很好的锻炼。通过本次实验,我加深了对理论课上学到的知识的理解,尤其是LCD的使用,在实验中遇到了许多问题,比如液晶显示屏一直闪烁、数据量显示一直为乱码、改变电位器液晶显示不发生变化等。这些问题在耐心寻找问题和询问老师后都得到了解决。在深化对单片机扩展和接口技术理解的同时也收获了信心和成就感。专心-专注-专业

    注意事项

    本文(浙大单片机液晶显示模拟多通道数据采集(共7页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开