(整理)编写LED显示0-9数字的PLC控制程序

合集下载

点阵式LED“0~9”数字显示

点阵式LED“0~9”数字显示

点阵式LED“0~9”数字显示摘要:简要介绍51单片机的主要性能、内部结构及其各引脚功能,概述其应用原理。

MCS-51单片机是美国INTEL公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品。

简述点阵式LED工作原理、内部结构及其应用,并通过89C51单片机和点阵式LED进行显示“0~9”的设计。

关键字:51单片机点阵式LED “0~9”数字显示Abstract:Briefly the main properties of 51 single chip, the internal structure and function of each pin, an overview of the application principle. MCS-51 microcontroller is a U.S. INTEL company launched products in 1980, compared with the MCS-48 microcontroller, and its structure is more advanced and more powerful, based on the increase in the original circuit units and more instructions, instructions up to 111, MCS-51 microcontroller products can be quite successful, until now, MCS-51 series or compatible microcomputer application is still the mainstream product. Dot Matrix LED briefly the working principle of the internal structure and its applications, and by 89C51 And Dot Matrix LED to display "0 9" design.Keyword:51 Microcontroller Dot Matrix LED "0 ~ 9" digital display目录1. 51单片机------------------------------------------------------------------------------------------41.1 51单片机简介-----------------------------------------------------------------------------41.2 89C51单片机的封装及引脚功能----------------------------------------------51.3 89C51单片机的内部结构----------------------------------------------------------72. LED点阵-------------------------------------------------------------------------------------------92.1 8X8 LED点阵结构图-----------------------------------------------------------------92.2 相关知识------------------------------------------------------------------------------------102.3 8X8 LED工作原理--------------------------------------------------------------------113. 电路设计------------------------------------------------------------------------------------------113.1 电路原理图---------------------------------------------------------------------------------113.2 点阵与单片机的连接----------------------------------------------------------------124. 程序设计-----------------------------------------------------------------------------------------124.1 数字“0~9”点阵显示代码的形成----------------------------------------------124.2 程序代码------------------------------------------------------------------------------------165. 电路PCB图及其3D图--------------------------------------------------------------186. 总结--------------------------------------------------------------------------------------------------207. 参考文献-----------------------------------------------------------------------------------------20一、51单片机1.1 51单片机简介MCS-51单片机是美国INTEL公司于1980年推出的产品,MCS-51系列单片机主要包括8031、8051和8751等通用产品,其主要功能如下:·8位CPU·4kbytes 程序存储器(ROM)·128bytes的数据存储器(RAM)·32条I/O口线·111条指令,大部分为单字节指令·21个专用寄存器·2个可编程定时/计数器·5个中断源,2个优先级·一个全双工串行通信口·外部数据存储器寻址空间为64kB·外部程序存储器寻址空间为64kB·逻辑操作位寻址功能·双列直插40PinDIP封装·单一+5V电源供电MCS-51以其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“名机”,为以后的其它单片机的发展奠定了基础。

LED数码管自动显示数字的控制

LED数码管自动显示数字的控制

找出其起动条件和停止条件 转换实现的条件是它的前级步为活动步,并 且满足相应的转换条件,如果步M0.1要变为活动 步,条件是它的前级步M0.0为活动步,且转换满 足转换条件I0.0。在起保停电路中,将代表前级 步的M0.0的常开触点和代表转换条件的I0.0的常 开触点串联,作为控制M0.1的起动电路。 当步M0.1为活动步且满足转换条件T37时,步 M0.2变为活动步,这时步M0.1应变为不活动步, 因此可以将M0.2为1作为使步M0.1变为不活动步 的停止条件。 同时在程序中将M0.0的常开触点与起动电路 并联作为保持条件。
然后每隔1秒LED数码管显示的数字自动增1,直至9
再显示0,如此实现数字0-9自动递增循环显示。 3. 当启动开关K断开后,LED数码管全灭。
顺序功能图
注意:
对于步的动作中的输出量的处理分两种情况: ① 某一输出量仅在某一步中为ON时,可以将它
的线圈与对应步的存储器位的线圈并联;
②某一输出量在几步中都为ON时,则将代表各
有关步的存储器位的常开触点并联后一起驱动 该输出的线圈。如果某些输出在连续的几步中 均为ON,可以用置位与复位指令进行控制。
锅炉的鼓风机和引风机控制二相关知识顺序功能图m00m01m02m03sm01i00t37i01t38q00t37q00q01q00t38转换初始步转换条件有向连线动作步使用起保停电路的顺序控制梯形图设计方法m00m01m02m03sm01i00启动t37i01t38q00t37q00q01q00t38顺序功能图转换实现的条件是它的前级步为活动步并且满足相应的转换条件如果步m0
LED数码管自动循环 显示数字的控制
一、任务提出
控制要求如下:
1. PLC开机后,LED数码管初始状态为全灭。

单只数码管循环显示0~9

单只数码管循环显示0~9

单只数码管循环显示0~9【任务】在单个数码管上循环显示数字0~9,实现类似于计时(或计数)显示的功能。

【硬件平台】在51单片机最小系统的基础上,以端口P0控制一个七段数码管。

为提高驱动能力,增加了上拉排阻RP1(10k)。

【编程思路】因为这里使用了共阴数码管,所以当P0端口相应引脚为高电平时,点亮相应的数码段。

0~9的段码按相同的时间间隔从单片机内存读到P0口,由此产生从0到9的循环显示效果。

先写下前面三板斧,内涵不赘述:#include <reg51.h>#define uchar unsigned char#define uint unsigned int因为0~9的段码是固定的,不妨将其保存为code类型的数组。

注意是共阴接法,比如要显示“0”,那么P0端口的各引脚电平为:a=b=c=d=e=f=1,g=0,闲置的P0.7=0(按字节给端口赋值,所以闲置位也赋值),表示为二进制是P0.7gfedcba=00111111,对应的十六进制为0x3F。

其余段码可类似分析:uchar code display_code[ ]={0x3F,0x06,0x5B,0x4F,0x66,0x66,0x6D,0x7D,0x7F,0x6F,0x00 }; //0x00表示段码全灭显示不同的数字之间要有时间间隔,须定义一个延时函数以便主函数调用实现间隔延时:最后编写主函数:【代码展示】#include <reg51.h>#define uchar unsigned char#define uint unsigned intuchar codedisplay_code[ ]={0x3F,0x06,0x5B,0x4F,0x66,0x66,0x6D,0x7D,0x 7F,0x6F,0x00};void delay(uint x){uchar i;while(x--) for(i=0;i<100;i++);}void main(){uchar i=0; //定义数组下标变量,用以遍历数组P0=0x00; //数码管初始不亮while(1){P0=display_code[i]; //0~9对应的段码送给P0口,显示9后段码熄灭(0x00)i=(i+1)%10;//从0循环到9,超过10后又回到0,%为取余数算符}}。

LED数码显示控制的PLC编程

LED数码显示控制的PLC编程

LED数码显示控制的PLC编程(2007-11-28 18:52:17)转载分类:PLC学习标签:学习公社参考程序描述:按下启动按钮后,由八组LED发光二极管模拟的八段数码管开始显示:先是一段段显示,显示次序是A、B、C、D、E、F、G、H,随后显示数字及字符,显示次序是0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F,断开启动按钮程序停止运行。

方法一:用SHRB指令用M10.0~M10.7 M11.0~M11.7 M12.0~M12.7的24个位表示显示的24种状态的控制位。

将下面这段语句指令全部复制,然后开一个记事本文件,粘贴进去。

ORGANIZATION_BLOCK MAIN:OB1TITLE=POU CommentBEGINNetwork 1 // Network Title// Network CommentLD I0.0LPSAN T38= M0.1LRDTON T38, 15LPPAN T37TON T37, 10Network 2LD M12.7O M0.1= M0.0Network 3LD T37SHRB M0.0, M10.0, 24 Network 4 // Network Title // Network CommentLD M10.0O M11.0O M11.2O M11.3O M11.5O M11.6O M11.7O M12.0O M12.1O M12.2O M12.4O M12.6O M12.7= Q0.0Network 5LD M10.1O M11.0O M11.1O M11.3 O M11.4 O M11.7 O M12.0 O M12.1 O M12.2 O M12.5 = Q0.1 Network 6 LD M10.2 O M11.0 O M11.1 O M11.3 O M11.4 O M11.5 O M11.6 O M11.7 O M12.0 O M12.1 O M12.3 O M12.5= Q0.2 Network 7 LD M10.3 O M11.0 O M11.2 O M11.3 O M11.5 O M11.6 O M12.0 O M12.1 O M12.3 O M12.4 O M12.5 O M12.6 = Q0.3 Network 8 LD M10.4 O M11.0 O M11.2 O M11.6 O M12.0O M12.3 O M12.4 O M12.5 O M12.6 O M12.7 = Q0.4 Network 9 LD M10.5 O M11.0 O M11.4 O M11.5 O M11.6 O M12.0 O M12.1 O M12.2 O M12.3 O M12.4 O M12.6 O M12.7 = Q0.5 Network 10O M11.2O M11.3O M11.4O M11.5O M11.6O M12.0O M12.1O M12.2O M12.3O M12.5O M12.6O M12.7= Q0.6Network 11LD M10.7= Q0.7END_ORGANIZATION_BLOCK SUBROUTINE_BLOCK SBR_0:SBR0 TITLE=POU CommentBEGINNetwork 1 // Network Title// Network CommentEND_SUBROUTINE_BLOCKINTERRUPT_BLOCK INT_0:INT0TITLE=POU CommentBEGINNetwork 1 // Network Title// Network CommentEND_INTERRUPT_BLOCK做好了txt记事本文件,再将它导入PLC中,文件类型是“所有”我就拿我做的实验来讲解,我用的是7段码,Q0.1~Q0.7分别对应着7段如果要显示数字2,那么就如下图,即Q0.1、Q0.2、Q0.4、Q0.5、Q0.7工作。

0-9汇编程序说明书

0-9汇编程序说明书

汇编0-9程序机电工程学院班级:机电0 9 3 2 姓名:学号:指导老师:日期:2011年6月20日LED数码管0~9循环显示说明书一、程序清单1、AT89C51单片机一个2、共阴数码管一个3、电阻8个4、电线9根5、金属板一块二、设计要求利用单片机的P0端口的P0.0-P0.7连接到一个共阴数码管的a-h的笔段上,数码管的公共端接地。

在数码管上循环显示0-9数字,时间间隔1秒。

三、设计思路1、先用汇编编写好0~9循环的程序2、用Proteus画好电路图3、用Proteus检测程序是不是正确4、再用硬件根据Proteus所画的电路图进行实物连接5、实物模拟LED数码管显示0~9循环程序四、显示原理1、LED数码显示器是由若干个发光二极管组成的,当发光二极管导通时,相应的点或线断发光,将这些二极管排成一定图形,控制不同组合的二极管导通,就可以显示出不同的字形。

2、八段显示器数码管分共阳极和共阴极,内部原理结构如图所示。

本次使用的是共阴极数码管。

3、流程图数码管显示程序流程如图所示。

数码管显示程序流程图五、电路图六、程序ORG 0HAJMP MAINORG 0BHSJMP INT0SMAIN:MOV TMOD,#01HSETB EASETB ET0SETB TR0MOV TH0,#3CHMOV TL0,#0B0HCLR P2.6MOV R3,#1MOV A,R3MOV R0,#20MOV P1,#3FHSJMP $INT0S:DJNZ R0,NEXTMOV DPTR,#TABMOVC A,@A+DPTRMOV P1,AINC R3MOV A,R3CJNE R3,#10,LMOV R3,#0MOV A,R3L:MOV R0,#20NEXT:MOV TH0,#3CHMOV TL0,#0B0HRETITAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END七、程序仿真图八、总结经过本次的课题研究使我对C语言的操作更加的娴熟了,并能解决一般碰到的难题。

LED点阵0到9显示

LED点阵0到9显示

单片机c语言<>欢迎进入51单片机学习网论坛讨论本站新域名开通 中国单片机编程技术普及推广第一站!25.点阵式LED“0-9”数字显示技术1.实验任务利用8X8点阵显示数字0到9的数字。

2.电路原理图图4.25.13.硬件系统连线(1).把“单片机系统”区域中的P1端口用8芯排芯连接到“点阵模块”区域中的“DR1-DR8”端口上;(2).把“单片机系统”区域中的P3端口用8芯排芯连接到“点阵模块”区域中的“DC1-DC8”端口上;4.程序设计内容(1).数字0-9点阵显示代码的形成如下图所示,假设显示数字“0”123 456 7 8●●●●●●●●●●●●●●●●00 00 3E 41 41 41 3E 00因此,形成的列代码为00H,00H,3EH,41H,41H,3EH,00H,00H;只要把这些代码分别送到相应的列线上面,即可实现“0”的数字显示。

送显示代码过程如下所示送第一列线代码到P3端口,同时置第一行线为“0”,其它行线为“1”,延时2ms左右,送第二列线代码到P3端口,同时置第二行线为“0”,其它行线为“1”,延时2ms左右,如此下去,直到送完最后一列代码,又从头开始送。

数字“1”代码建立如下图所示123 456 7 8●●●●●●●●●●其显示代码为00H,00H,00H,00H,21H,7FH,01H,00H 数字“2”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●●●●00H,00H,27H,45H,45H,45H,39H,00H数字“3”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●●00H,00H,22H,49H,49H,49H,36H,00H数字“4”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●00H,00H,0CH,14H,24H,7FH,04H,00H 数字“5”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●●●●00H,00H,72H,51H,51H,51H,4EH,00H 数字“6”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●●●●00H,00H,3EH,49H,49H,49H,26H,00H 数字“7”代码建立如下图所示123 456 7 8●●●●●●●●●●●00H,00H,40H,40H,40H,4FH,70H,00H 数字“8”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●●●●00H,00H,36H,49H,49H,49H,36H,00H 数字“9”代码建立如下图所示123 456 7 8●●●●●●●●●●●●●●●●●00H,00H,32H,49H,49H,49H,3EH,00H 5.汇编源程序TIM EQU 30HCNTA EQU 31HCNTB EQU 32HORG 00HLJMP STARTORG 0BHLJMP T0XORG 30HSTART: MOV TIM,#00HMOV CNTA,#00HMOV CNTB,#00HMOV TMOD,#01HMOV TH0,#(65536-4000)/256MOV TL0,#(65536-4000) MOD 256SETB TR0SETB ET0SETB EASJMP $T0X:MOV TH0,#(65536-4000)/256MOV TL0,#(65536-4000) MOD 256MOV DPTR,#TABMOV A,CNTAMOVC A,@A+DPTRMOV P3,AMOV DPTR,#DIGITMOV A,CNTBMOV B,#8MUL ABADD A,CNTAMOVC A,@A+DPTRMOV P1,AINC CNTAMOV A,CNTACJNE A,#8,NEXTMOV CNTA,#00HNEXT: INC TIMMOV A,TIMCJNE A,#250,NEXMOV TIM,#00HINC CNTBMOV A,CNTBCJNE A,#10,NEXMOV CNTB,#00HNEX: RETITAB: DB 0FEH,0FDH,0FBH,0F7H,0EFH,0DFH,0BFH,07FH DIGIT: DB 00H,00H,3EH,41H,41H,41H,3EH,00HDB 00H,00H,00H,00H,21H,7FH,01H,00HDB 00H,00H,27H,45H,45H,45H,39H,00HDB 00H,00H,22H,49H,49H,49H,36H,00HDB 00H,00H,0CH,14H,24H,7FH,04H,00HDB 00H,00H,72H,51H,51H,51H,4EH,00HDB 00H,00H,3EH,49H,49H,49H,26H,00HDB 00H,00H,40H,40H,40H,4FH,70H,00HDB 00H,00H,36H,49H,49H,49H,36H,00HDB 00H,00H,32H,49H,49H,49H,3EH,00HEND6.C语言源程序#include <AT89X52.H>unsigned char code tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char code digittab[10][8]={ {0x00,0x00,0x3e,0x41,0x41,0x41,0x3e,0x00}, //0 {0x00,0x00,0x00,0x00,0x21,0x7f,0x01,0x00}, //1{0x00,0x00,0x27,0x45,0x45,0x45,0x39,0x00}, //2{0x00,0x00,0x22,0x49,0x49,0x49,0x36,0x00}, //3{0x00,0x00,0x0c,0x14,0x24,0x7f,0x04,0x00}, //4{0x00,0x00,0x72,0x51,0x51,0x51,0x4e,0x00}, //5{0x00,0x00,0x3e,0x49,0x49,0x49,0x26,0x00}, //6{0x00,0x00,0x40,0x40,0x40,0x4f,0x70,0x00}, //7{0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00}, //8{0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00} //9};unsigned int timecount;unsigned char cnta;unsigned char cntb;void main(void){TMOD=0x01;TH0=(65536-3000)/256;TL0=(65536-3000)%256;TR0=1;ET0=1;EA=1;while(1){;}}void t0(void) interrupt 1 using 0 {TH0=(65536-3000)/256;TL0=(65536-3000)%256;P3=tab[cnta];P1=digittab[cntb][cnta];cnta++;if(cnta==8){cnta=0;}timecount++;if(timecount==333){timecount=0;cntb++;if(cntb==10) {cntb=0; }}}。

电气控制与PLC11.2 LED译码显示00-99

电气控制与PLC11.2  LED译码显示00-99

2.指令格式及段显示①
2.指令格式及段显示②
二、 脉冲生成指令 EU/ED
1.指令功能 EU指令:在EU指令前的逻辑运算结果有一
个上升沿时(由OFF→ON)产生一个宽度 为一个扫描周期的脉冲。 ED指令:在ED指令前的逻辑运算结果有一 个下降沿时(由ON → OFF )产生一个宽 度为一个扫描周期的脉冲。
2.指令格式:见下表。
四、累加器AC
累加器是用来暂存数据的寄存器,它可以用来存放 运算数据、中间数据和结果。
CPU提供了4个 32位的累加器,其地址编号为 AC0~AC3。
累加器的可用长度为32位,可采用字节、字、双字 的存取方式,按字节、字只能存取累加器的低8位 或低16位,双字可以存取累加器全部的32 位。
2. 当启动开关S闭合后,两个LED数码管显示 数字“00”;然后每隔1秒LED数码管显示的 数字自动增1,直至“99”再显示“00”,如此 实现数字“00”至“99”自动递增循环显示。
3. 当启动开关S断开后,两个LED数码管全灭, 不再显示任何数字。
【设计思路】
一、段译码指令SEG
1.指令功能:使能输入有效时,将字节 型输入数据IN的低4位有效数字产生相 应的七段码,并将其输出到OUT所指 定的字节单元。
两位LED数码管 自动循环显示数字控制
(利用功能指令编程)
【学习目标】
★理解传送指令MOV、段译码指令SEG 和整数计算指令的使用方法。
★了解累加器和脉冲指令的使用方法。 ★理解掌握00~99设计思路和编程方法。
【任务描述】
控制要求如下:
1. PLC开机后,两个LED数码管的初始状态 为全灭。
五、整数运算指令

PLC设计数码管循环显示

PLC设计数码管循环显示

设计任务及指标用LED数码管间隔显示数字,按下SO依次间隔2s循环显示0~9十个数字,按S1依次间隔2s显示0~9中奇数,5秒后,依次间隔2s显示0~9 中偶数,并且实现奇偶的循环。

在显示的过程中,只要有一键按下,就立即实现该键的功能,且计数初值为相应循环的初值。

设计思路:设计可以分为循环模式切换的控制部分、间隔2s的循环控制部分、编码部分和输出部分四大模块。

1.循环模式切换的控制部分:定义:X000:0~9循环X001 :奇偶循环M200 :用来切换显示模式的中间继电器M203 :用来恢复初值的中间继电器工作过程:按下X000时,M200不得电,M200的触点不工作,实现0~9 循环的所有中间继电器接通,并且在X000的启动下,其中的显示0的中间继电器M0开始工作;当按下X001时,M200得电,M200的触点工作,使奇偶循环的所有中间继电器接通,实现切换。

同时,当X000与X001中只要任意一个按下时,M203得电,M203的常闭触点断开,使第2~10组控制显示的中间继电器与时间继电器失电,从而保证只有第一组能工作,防止在切换过程中出现两组同时工作导致乱码。

梯形图如下:2•间隔2s 的循环控制部分:定义:控制显示的部分M0显示0、M1显示1、M2显示2、M3显示3、M4显示4、 M5显示5、M6显示6、M7显示7、M8显示& M9显示9;M10显示1、M11显示3、M12显示5、M13显示7、M14显示9、 M15显示0、M16显示2、M17显示4、M18显示6、M19显示8;间隔2s 的循环部分:T0~T9的延迟时间为2s , T10的延迟时间为5s ;工作过程:起动时按下X000, M0开始工作,显示0,T0也开始工作;2s 后T0的常开触点闭合,M1开始工作,显示1,同时M1的常闭触点断开,使得M0失电。

重复上述过程,即可实现0~9的循环显示;此时 按下X001, M200 M203工作,M203的常闭触点断开使 M1~M 、M11~M1、T1~T9失电,M200的常开触点闭合,常闭触点断开,使得 M0~M9-直 处于断开,M10~M1接通;与此同时,X001按下使得M10上电显示1, 其工作过程与0~9循环时一样,区别在于此时T4处于断开T10接通代 替T4工作,以此来实现奇偶变换时5s 的延时。

数码管动态显示,显示从1到9,每一位显示一个数字(单片机)

数码管动态显示,显示从1到9,每一位显示一个数字(单片机)

数码管动态显⽰,显⽰从1到9,每⼀位显⽰⼀个数字(单⽚机)//object: 动态显⽰数码管,从1显⽰到9//writer:mike//time: 2020,11,14#include<reg52.h>sbit wei = P2^7;sbit du = P2^6;//数组的类型指的是每⼀个元素的类型, code则指定存储在代码区,⽽⾮code 指存户在内存中。

unsigned int code data1[10] = {0x3F,//00x06,//10x5B,//20x4F,//30x66,//40x6D,//50x7D,//60x07,//70x7F,//80x6F//9};void delay(unsigned int);void main(){while(1){//⾸先打开位选wei = 1;P0 = 0xfe; //让第⼀位显⽰//关闭位选wei = 0;//打开段选du = 1;//显⽰数字1P0 = data1[1];//关闭段选du = 0;//点亮第⼀位之后,延时⼀段时间delay(1);//针对第⼆位数码管//打开位选wei = 1;//设置位选P0 = 0xfd;//关闭位选wei = 0;//打开段选du = 1;//设置段选P0 = data1[2];//关闭段选du = 0;delay(1);//针对第三位数码管//打开位选wei = 1;//设置位选P0 = 0xfb;//关闭位选wei = 0;//打开段选du = 1;//设置段选P0 = data1[3];//关闭段选du = 0;delay(1);//针对第四位数码管//打开位选wei = 1;wei = 0;//打开段选du = 1;//设置段选P0 = data1[4];//关闭段选du = 0;delay(1);//针对第五位数码管 //打开位选wei = 1;//设置位选P0 = 0xef;//关闭位选wei = 0;//打开段选du = 1;//设置段选P0 = data1[5];//关闭段选du = 0;delay(1);//针对第六位数码管 //打开位选wei = 1;//设置位选P0 = 0xdf;//关闭位选wei = 0;//打开段选du = 1;//设置段选P0 = data1[6];//关闭段选du = 0;delay(1);//针对第七位数码管 //打开位选wei = 1;//设置位选P0 = 0xbf;//关闭位选wei = 0;//打开段选du = 1;//设置段选P0 = data1[7];//关闭段选du = 0;delay(1);//针对第⼋位数码管 //打开位选wei = 1;//设置位选P0 = 0x7f;//关闭位选wei = 0;//打开段选du = 1;//设置段选P0 = data1[8];//关闭段选du = 0;delay(1);/* //针对第九位数码管 //打开位选wei = 1;//设置位选wei = 0xff;//关闭位选wei = 0;du = data1[9];//关闭段选du = 0;*/}}void delay(unsigned int x) {unsigned a, b;for(a=x;a>0;a--){for(b=120;b>0;b--); }}。

8×8LED点阵显示数字0到9

8×8LED点阵显示数字0到9

页脚内容1单片机技术课程设计说明书设计课题:8×8 点阵专业(系)电气学院班 级学生姓名指导老师目录1.课程设计目的 (4)2.课程设计题目和要求 (4)3.设计内容 (4)3.1系统功能的描述 (4)3.2系统硬件设计 (5)3.1.1 AT89S51芯片的介绍 (5)3.2.2 时钟电路的设计 (8)3.2.3 复位电路的设计 (8)3.2.4驱动电路的设计 (9)3.2.5 8×8LED点阵 (10)3.3系统软件设计 (11)3.3.1 计数器初值计算 (11)3.3.2 数字0到9点阵显示代码的形成 (11)页脚内容23.3.3 程序流程图 (13)3.2.4 源程序 (14)4.设计总结 (17)页脚内容3单片机课程设计报告1.课程设计目的(1)巩固和提高学过的基础知识和专业知识。

(2)提高运用所学的知识进行独立思考和综合分析、解决实际问题的能力。

(3)培养掌握正确的思维方法和利用软件和硬件解决实际问题的基本技能。

(4)增加对单片机的认识,加深对单片机理论方面的理解。

(5)掌握单片机的内部功能模块的应用,如定时器/计数器、中断、片内外存贮器、I/O口、串行口通讯等。

(6)熟练掌握汇编语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力。

2.课程设计题目和要求(1)课程设计题目:单片机控制的跑马灯设计(2)要求:利用8×8LED点阵显示数字0到93.设计内容3.1系统功能的描述用单片机控制8×8LED点阵滚动显示数字0到9,利用硬件与软件相结合的方法,通过单片机将数字的代码分别送到相应的列线上面,经过软件编程使二极管从0到9依次显示数字,如此循环。

页脚内容4单片机课程设计报告3.2 系统硬件设计图1 系统框图显示的硬件方式采用以AT89S51单片机为核心的电路来实现,主要由AT89S51芯片、时钟电路、复位电路、驱动电路、8×8LED点阵5部分组成,系统框图如图1所示。

PLC课程设计-LED灯数码显示控制

PLC课程设计-LED灯数码显示控制

P L C课程设计-L E D灯数码显示控制-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN成绩可编程逻辑控制器课程设计报告题目LED灯数码显示控制系别专业名称班级学号姓名指导教师目录一、引言 (5)二、系统总体方案设计 (5)系统硬件配制及组成原理 (5)PLC各组成部件及作用 (5)PLC的分类 (6)LED数码管的结构及工作原理 (7)系统变量定义及分配表 (8)系统接线图设计 (8)三、控制系统设计 (9)控制程序设计思想 (9)控制程序时序图设计 (9)四、系统调试及结果分析 (9)系统调试及解决的问题 (9)结果分析 (10)五、结束语 (10)六、参考文献 (10)附录 (11)LED 数码显示控制一、实验目的了解并掌握LED 数码显示控制中的应用及其编程方法。

二、控制要求按下启动按钮后,由八组LED 发光二极管模拟的八段数码管开始显示:一一显示各段,之后一次显示0、1、2、3、4、5、6、7、8、9、A 、B 、C 、D 、E 、F 再返回初始显示,并循环不止。

三、LED 数码显示控制的实验面板图:四、实验设备1、安装了STEP7-Micro/WIN32编程软件的计算机一台2、PC/PPI 编程电缆一根3、锁紧导线苦干五、实验步骤1、根据上表进行输入输出接线;2、编写程序,并把程序输入STEP7中;3、检查输入程序无误以后,将程序下载到主机内,并且把PLC 的工作模式达到RUN 模式;4、拨动输入开关SD ,观察输出LED 的显示结果。

输入 接线 SD启动 输出 接线A B C D E F G H ABCDEFGH一、引言《可编程逻辑控制器》课程设计是该课程的一个重要教学环节,既有别于毕业设计,又不同于课堂教学。

它需要学生统筹运用所学基本理论、基本方法对现实生活中的实际系统进行设计和调试。

本课程设计是以LED数码管和PLC控制为基础,通过了解PLC的基本编程方法及LED数码管的原理,用顺序控制法实现:按下启动按钮,由八组LED发光二极管模拟的八段数码管开始显示,显示次序是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F再返回初始显示,并循环不止的控制要求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使LED数码管d段亮
(1)建设项目概况。Y004
环境总经济价值=环境使用价值+环境非使用价值LED数码管e段
另外,环境影响评价三个层次的意义,环境影响评价的资质管理、分类管理,建设项目环境影响评价的内容,规划环境影响评价文件的内容,环境价值的衡量还可能是将来考试的重点。使LED数码管e段亮
(三)安全预评价程序Y005
66
OUT
Y002
83
OR
M109
100
OUT
Y007
117
67
LD
M104
84
OR
M113
101
LDI
X001
118
68
OR
M109
85
OR
M114
102
FNC
40
119
4、梯形图
5、程序调试
1)打开FX2N-48MR编程元件,新建文件,在打开的软件中输入上述梯形图程序;
2)编辑完成后,单击“转换”,将程序转换为可执行模式;
安全评价可针对一个特定的对象,也可针对一定的区域范围。
三、数码显示控制语句表
0
X000
13
SP
K30
26
LD
M0
39
OR
M112
1
OR
M1
14
27
FNC
35
40
OR
M114
2
15
ANI
T1
28
M100
41
OR
M115
3
OUT
M1
16
OUT
M10
29
M101
42
OR
M116
4
LD
M1
17
LD
M10
30
11
LD
M1
24
ANI
T2
37
OR
M109
50
OR
M112
12
OUT
T1
25
OUT
M2
38
OR
M111
51
OR
M113
52
OR
M116
69
OR
M111
86
OR
M115
103M101源自53ORM11770
OR
M112
87
OR
M117
104
M118
54
OR
M118
71
OR
M114
88
OR
M118
105
55
编写LED显示0-9数字的PLC控制程序
1、I/O分配表
LED显示控制PLC的I/O点分配表
PLC点名称
连接的外部设备
功能说明
X000
SB0
控制信号
Y000
LED数码管a段
使LED数码管a段亮
Y001
LED数码管b段
使LED数码管b段亮
Y002
LED数码管c段
使LED数码管c段亮
Y003
LED数码管d段
K18
43
OR
M117
5
LNI
M0
18
OR
M2
31
K1
44
OR
M118
6
OUT
T0
19
OUT
M100
32
45
OUT
Y000
7
SP
K20
20
LD
M118
33
46
LD
M102
8
21
OUT
T2
34
47
OR
M109
9
LD
T0
22
SP
K20
35
48
OR
M110
10
OUT
M0
23
36
LD
M101
49
OR
M111
LED数码管f段
使LED数码管f段亮
(3)是否符合区域、流域规划和城市总体规划。Y006
7.作出评价结论LED数码管g段
每名环境影响评价工程师申请登记的类别不得超过2个。使LED数码管g段亮
Y007
LED灯h
使LED灯h亮
[例题-2005年真题]《中华人民共和国环境影响评价法》规定,建设项目可能造成轻度环境影响的,应当编制( )。2、I/O端口接线图
3)打开PLC主机;
4)按照接线图所示接好所有的线路;
5)单击菜单栏中“PLC”,选择“读出”将文件传送到PLC中;
6)单击菜单栏中“PLC”,选择“遥控运行”
7)按下X0按钮,开始执行程序;
8)程序执行完一周期之后,单击“PLC”、“遥控”终止运行,关闭电源,收拾线路即可。
OUT
Y001
72
OR
M115
89
OUT
Y005
106
56
LD
M103
73
OR
M117
90
LD
M107
107
END
57
OR
M109
74
OR
M118
91
OR
M111
108
58
OR
M110
75
OUT
Y003
92
OR
M112
109
59
OR
M112
76
LD
M105
93
OR
M113
110
60
OR
M113
77
OR
M109
94
OR
M114
111
61
OR
M114
78
OR
M111
95
OR
M115
112
62
OR
M115
79
OR
M115
96
OR
M117
113
63
OR
M116
80
OR
M117
97
OR
M118
114
64
OR
M117
81
OUT
Y004
98
OUT
Y006
115
65
OR
M118
82
LD
M106
99
LD
M108
116
相关文档
最新文档