C单片机的程序设计实用.pptx

上传人:莉*** 文档编号:87547802 上传时间:2023-04-16 格式:PPTX 页数:16 大小:287.83KB
返回 下载 相关 举报
C单片机的程序设计实用.pptx_第1页
第1页 / 共16页
C单片机的程序设计实用.pptx_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《C单片机的程序设计实用.pptx》由会员分享,可在线阅读,更多相关《C单片机的程序设计实用.pptx(16页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、1汇编语言指令类型P135MCS-51单片机汇编语言,包含两类不同性质的指令。(1)基本指令:即指令系统中的指令。它们都是机器能够执行的指令,每一条指令都有对应的机器码。(2)伪指令:汇编时用于控制汇编的指令。它们都是机器不执行的指令,无机器码。(3)宏指令:用以代替汇编语言源程序中重复使用的程序段的一种语句,汇编时产生相应的目标代码。第1页/共16页2汇编语言组成汇编语言源程序是由汇编语句(指令)组成。汇编语言一般由四部分组成。其典型的汇编语句格式如下:标号:操作码操作数;注释 START:MOVA,30H;A(30H)第2页/共16页3伪指令:P137(1)EQU:赋值。给变量标号赋予一个

2、确定的数值。TTYEQU1080HMOV DPTR,TTY(2)DL:定义标号值(与EQU区别:可对同一标号多次赋值)COUNTDL2300HCOUNTDL2300H+1(3)DB:定义字节数据。把数据以字节数的形式存放在存储器单元中。MMM:DB 0EH,0B1H,0BH,70H,5H,0A4H,1DH,14H(4)DW:定义字数据。按字的形式把数据存放在存储单元中。(5)DS:定义存储区。从指定的地址单元开始,保留一定数量存储单元。BASE DS 100H(6)ORG:汇编起始地址(7)END:汇编结束第3页/共16页45.2 汇编语言程序设计1分析问题2确定算法3设计程序流程图4分配内存

3、单元5编写汇编语言源程序6调试程序第4页/共16页5五种基本程序结构5.2.1 顺序结构5.2.2 选择结构(分支)5.2.3 循环结构5.2.4 子程序5.2.5 中断服务程序第5页/共16页6LED显示器第6页/共16页7第7页/共16页8第8页/共16页9org 00hljmp mainmain:mov sp,#68hLOOP1:MOV R0,#0 MOV DPTR,#TAB1LOOP2:MOV A,R0 MOVC A,A+DPTR MOV P2,A LCALL DELAY LCALL DELAY LCALL DELAY LCALL DELAY INC R0 CJNE R0,#10,LO

4、OP2 ljmp LOOP1 DELAY:MOV R2,#255DEL1:MOV R1,#255 DJNZ R1,$DJNZ R2,DEL1 RETTAB1:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHend第9页/共16页10#include#include#define uchar unsigned charuchar data_led10=0 x3F,0 x06,0 x5B,0 x4F,0 x66,0 x6D,0 x7D,0 x07,0 x7F,0 x6F;void delay()uchar i1,i2;for(i1=0;i1255;i1+)for

5、(i2=0;i2255;i2+)_nop_();_nop_();_nop_();_nop_();void main()uchar i;while(1)for(i=0;i0Y=100 X=0 求出Y值,将Y值存入31H单元。X X0解:根据数据的符号位判别该数的正负,若最高位为0,再判别该数是否为0。程序流程如下图所示。第11页/共16页12A为负数?取数,A(30H)开始结束A=0?YNNA|X|A64HAX+2存数,(31H)(A)Y第12页/共16页13第13页/共16页14作业P177:6补充作业:用C语言编写LIBU5_2的程序。第14页/共16页15#include#include#

6、define uchar unsigned char#define ram(unsigned char*)0 x00)/定义ram为指向单片机ram地址空间unsigned char 数据类型的指针,指针值为0 /这样可直接用ram0 xnn或*(ram+0 xnn)访问256字节内部ramvoid main()uchar i;ram0 x30=0 x55;i=ram0 x30;if(i=0)ram0 x31=100;else if(i0 x80)ram0 x31=i+2;else i=i&0 x7f;/符号为清零 i=i-1;i=0 x7f-i;/得到绝对值 while(1)_nop_();第15页/共16页16感谢您的欣赏!第16页/共16页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

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

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