图4.5.13.系统板上硬件连线  把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8"> 图4.5.13.系统板上硬件连线  把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8" />
at89s51单片机试验及实践教程之广告灯(利用取表方式)

at89s51单片机试验及实践教程之广告灯(利用取表方式)

ID:22612153

大小:57.00 KB

页数:5页

时间:2018-10-30

at89s51单片机试验及实践教程之广告灯(利用取表方式)_第1页
at89s51单片机试验及实践教程之广告灯(利用取表方式)_第2页
at89s51单片机试验及实践教程之广告灯(利用取表方式)_第3页
at89s51单片机试验及实践教程之广告灯(利用取表方式)_第4页
at89s51单片机试验及实践教程之广告灯(利用取表方式)_第5页
资源描述:

《at89s51单片机试验及实践教程之广告灯(利用取表方式)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、AT89S51单片机试验及实践教程之广告灯(利用取表方式)

2、第1...lunouseg(this)">图4.5.13.系统板上硬件连线  把“单片机系统”区域中的P1.0-P1.7用8芯排线连接到“八路发光二极管指示模块”区域中的L1-L8端口上,要求:P1.0对应着L1,P1.1对应着L2,……,P1.7对应着L8。4.程序设计内容在用表格进行程序设计的时候,要用以下的指令来完成•利用MOVDPTR,#DATA16的指令来使数据指针寄存器指到表的开头。•利用MOVCA,@A+DPTR的

3、指令,根据累加器的值再加上DPTR的值,就可以使程序计数器PC指到表格内所要取出的数据。因此,只要把控制码建成一个表,而利用MOVC 工,@A+DPTR做取码的操作,就可方便地处理一些复杂的控制动作,取表过程如下图所示:5.程序框图500)this.style.ouseg(this)">图4.5.26.汇编源程序ORG0START:MOVDPTR,#TABLELOOP:CLRAMOVCA,A+DPTRCJNEA,#01H,LOOP1JMPSTARTLOOP1:MOVP1,AMOVR3,#20LCALLDELAY

4、INCDPTRJMPLOOPDELAY:MOVR4,#20D1:MOVR5,#248DJNZR5,$DJNZR4,D1DJNZR3,DELAYRETTABLE:DB0FEH,0FDH,0FBH,0F7HDB0EFH,0DFH,0BFH,07FHDB0FEH,0FDH,0FBH,0F7HDB0EFH,0DFH,0BFH,07FHDB07FH,0BFH,0DFH,0EFHDB0F7H,0FBH,0FDH,0FEHDB07FH,0BFH,0DFH,0EFHDB0F7H,0FBH,0FDH,0FEHDB00H,0FFH

5、,00H,0FFHDB01HEND7.C语言源程序#includeunsignedcharcodetable[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0x00,0xff,0x00,0xff,0x01};unsignedchari;

6、voiddelay(void){unsignedcharm,n,s;for(m=20;m>0;m--)for(n=20;n>0;n--)for(s=248;s>0;s--);}voidmain(void){while(1){if(table[i]!=0x01){P1=table[i];i++;delay();}else{i=0;}}}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。