LED D灯显示键值
- 格式:doc
- 大小:27.50 KB
- 文档页数:2
Led 灯简易使用说明书
一、 后面板图解说明
菜单 减键 加键 却换/进入 操作说明:
1、 按菜单键可在’IMAGE ’、’DMX ’、’STAT ’、’RUN ’、’AUTO ’、’TEMP ’、’VOX ’、
‘MODE ’8个菜单中选择;
2、 按却换/进入键可以进入相应菜单的子项,且有多个子项时按此键进行子项
之间的却换;
3、 减键和加键进行数值的加减和功能的设置;
4、 在参数设置好后,按菜单键退出此菜单并将参数记忆;
二、 Led 显示功能对照表
三、Dmx512通道说明3通道:
6通道:
9通道:
四、技术指标
1、工作电压:AC220v 50Hz
2、最大功率:<200W
3、亮度:3m距离>3500 CD
4、颜色:R 控制等级0—255
G 控制等级0—255
B 控制等级0—255
W 控制等级0—255
5、频闪:控制等级11——255
6、灯杯角度:15度、30度、45度可选
7、温升:<40度
8、灯体可调角度:>180度
长沙新画佳光电子有限公司
2010-2-8。
一、实验目的1.熟悉教学板电路及其结构。
2.掌握利用μVision C51 软件编辑、调试(包括仿真调试、单步调试)、运行单片机程序的步骤和方法,掌握利用STC-ISP V39软件和下载线将程序写入单片机的方法。
3.通过实验熟悉51单片机的并行I/O口,并掌握它们的应用。
4.掌握矩阵键盘、LED动态显示的工作原理。
二、实验设备PC机一台、实验教学板一块。
三、实验内容1.实验线路如附图所示,51单片机的P0口输出接8个发光二极管的阴极,P2.4经NPN 三极管9011控制发光管的阳极。
P3口支持一个8位行列式键盘,其中P3.4~P3.7供键盘扫描输出,P3.2、P3.3作键盘扫描输入。
实验要求:编程实现键盘对发光二极管的控制,每按一个按键,使对应的二极管点亮。
2.51单片机P0口输出同时接4个数码管的阴极,P2.0~P2.3,经NPN三极管9011接数码管的阳极,该端口用于分别控制相应数码管的导通。
实验要求:编程实现对任意按键动作的次数进行计数(最大99次),同时将计数值实时显示。
四、实验步骤1.将实验板与PC机通过COM口连接。
启动PC机,进入μVision软件环境,选择建立新工程文件,即可开始输入源程序。
2.完成汇编、编译、连接,若有错误,则修改源程序,直至编译、连接通过为止。
3.接上实验板上的电源。
4.运行“STC-ISP V39.EXE”,将程序代码下载到实验板的单片机中。
操作的顺序是:1)选择单片机(MCU TYPE)型号。
如:“STC89C51RC”要与实验板上所装单片机的型号一至。
2)打开文件(Open File)。
即把要下载到单片机的程序文件(已通过编译了的机器码文件——二进制(.Bin)或十六进制(.Hex)的)调到“文件缓冲区”,这时可看到右边的“文件缓冲区”有数字变化。
3)选择串行通信口。
选对时,软件上的小灯会变绿。
否则小灯是灰色。
且在左下窗口提示“出错信息”。
4)下载:按“Download/下载”按键下载。
智能仪器实验报告实验题目:HD7279键盘实验一、实验目的学习 HD7279 的通讯方法。
二、实验内容及原理利用利用总线向 HD7279 写入控制命令并显示键值。
三、实验步骤1、将 CPU 板正确安放在 CPU 接口插座上,跳线帽 JP2 短接在上侧。
2、连线:用导线将 MCU 的 IO1----IO3、INT0 分别连接到 HD7279 的7279_CS、 7279_CLK、 7279_DATA、 7279_KEY;用导线将 HD7279 的 7279_A、7279_B、7279_C、7279_D、7279_E、7279_F、7279_G、7279_DP 分别连接到LED DISP 的 LED_A、LED_B、LED_C、LED_D、LED_E、LED_F、LED_G、 LED_DP;用导线将 HD7279 的 7279_C1、7279_C2、7279_C3、7279_C4 分别连接到LED DISP 的 LED_C1、 LED_C2、 LED_C3、 LED_C4;用导线将 HD7279 的7279_A、7279_B、7279_C、7279_D、7279_E、7279_F、7279_G、7279_DP 分别连接到 KEY 的 KEY7、KEY6、KEY5、KEY4、KEY3、KEY2、KEY1、 KEY8;用导线将 HD7279 的 7279_C1 连接到 KEY 的插孔 KEY。
连接好仿真器。
3、实验箱上电,在 PC 机上打开 Keil C 环境,打开实验程序文件夹HD7279 下的工程文件 HD7279.Uv2,编译程序,上电,进入调试状态,单步运行程序观察每条语句执行后相关寄存器的变化。
4、上电,运行程序,按键,观察 LED 显示的数据是否与键盘一一对应。
HD7279 的中断输出 INT 上。
四、实验结果图一为键盘按下1234,图二为键盘按下5678。
图一键盘输入1234图二键盘输入5678五、实验结论与感悟通过本次实验,学习了HD7279的通讯方法,掌握了利用总线向HD7279写入控制命令并显示键值。
实验一数字IO应用实验—、实验目的1. 了解DSP开发系统的组成和结构2. 在实验设备上完成I/O硬件连接,编写I/O实验程序并运行验证。
3. 内存观察工具的使用二、实验设备计算机,CCS3.1版本软件,DSP仿真器,教学实验箱三、实验原理2.键值读取程序:该部分有两种方法进行键值的判断。
方法1:利用内存观察工具进行观察方法2:利用LED1-LED8的亮灭对应显示键值。
a)外部中断1的应用参照实验五;b)内存观察键值:程序中定义了三个变量“W”“row”和“col”。
“W”代表是CPLD中键盘的扫描数值,“row”和“col”分别代表键盘的行和列,由行和列可以判定按键的位置。
上述三个变量可以在观察窗口中观察的。
c)利用LED灯显示键值原理,参看实验一。
具体的LED灯显示值以查表的形式读出,请参看“”库文件。
本实验的CPLD地址译码说明:基地址:0x0000,当底板片选CS0为低时,分配有效。
CPU的IO空间:基地址+0x0200 LED灯output 8位外部中断用XINT1:由CPLD分配,中断信号由键盘按键产生。
中断下降沿触发。
KEY_DAT_REG(R):基地址+0x0004;四、实验步骤和内容1.2407CPU板JUMP1的1和2脚短接,拨码开关S1的第一位置ON,其余置OFF;2.E300板上的开关SW4的第一位置ON,其余OFF;SW3的第四位置ON其余的SW置OFF“DEBUG→Connect”)4.打开系统项目文件 \e300.test\ normal \05_key interface \;“\Debug\”文件“Debug\Go Main”跳到主程序的开始;7.指定位置设置断点;8.View--〉Watch Window打开变量观察窗口;9. 将变量“w”“row”和“col”添加到观察窗口中,改变变量观察窗口的显示方式为HEX显示。
“Debug--〉Animate”全速运行,然后点击E300板上键盘按键,观察窗口中变量变化,同时LED1-LED8灯也相应变化,指示键值。
K5 键-计数值加1(外部中断0)K6 键-计数值减1(外部中断1)K5 BIT P3.2K6 BIT P3.3DISSTART EQU 40H ;显示单元首地址LED_DATA EQU P0 ;数码管数据口定义COUNT EQU 30H ;计数单元;******************************************************************* ORG 0000HAJMP MAINORG 0003HAJMP INT0_EX0ORG 0013HAJMP INT1_EX1ORG 0050H;*********************************************************; 主程序;*********************************************************MAIN:MOV SP,#60HMOV P0,#0FFHMOV P2,#0FFHMOV COUNT,#00H ;计数单元清零MOV R0,#DISSTARTCLR1:MOV @R0,#00H ;清显存单元INC R0CJNE R0,#DISSTART+3,CLR1CLR IT0 ;INT0为电平触发; SETB IT0 ;INT0为下降沿触发CLR IT1 ;INT1为电平触发; SETB IT1 ;INT1为下降沿触发SETB EASETB EX0SETB EX1MAIN1:ACALL CONVTACALL PLAYAJMP MAIN1;*********************************************************; INT0 外部中断服务子程序 (加计数);*********************************************************INT0_EX0:PUSH ACC ;入栈保护PUSH PSWSETB RS0 ;更换寄存器组CLR RS1CLR EX0 ;关闭INT0中断INC COUNT ;计数值加1MOV R4,#70EX0_PLAY:MOV A,COUNT ;用显示程序进行延时ACALL CONVTACALL PLAYDJNZ R4,EX0_PLAYSETB EX0 ;开启INT0中断POP PSW ;出栈POP ACCRETI;********************************************************* ; INT1 外部中断服务子程序 (减计数);********************************************************* INT1_EX1:PUSH ACC ;入栈保护PUSH PSWSETB RS0 ;更换寄存器组CLR RS1CLR EX1 ;关闭INT1中断DEC COUNT ;计数值减1MOV R4,#70EX1_PLAY:MOV A,COUNT ;用显示程序进行延时ACALL CONVTACALL PLAYDJNZ R4,EX1_PLAYSETB EX1 ;开启INT1中断POP PSW ;出栈POP ACCRETI;********************************************************* ;数据转换 (HEX TO BCD);********************************************************* CONVT:MOV A,COUNT ;计数值处理MOV B,#100DIV ABMOV DISSTART+2,A ;百位存放在DISSTART+2MOV A,#10XCH A,BDIV ABMOV DISSTART+1,A ;十位存放在DISSTART+1MOV DISSTART,B ;个位存放在DISSTARTMOV A,DISSTART+2 ;高位为0,不显示CJNE A,#00H,CONVT1MOV DISSTART+2,#0AHMOV A,DISSTART+1CJNE A,#00H,CONVT1MOV DISSTART+1,#0AHCONVT1:RET;********************************************************* ; 数码管显示子程序;********************************************************* PLAY:MOV R0,#DISSTART ;获得显示单元首地址MOV R1,#0FEH ;从第一个数码管开始MOV R2,#03H ;共显示3位数码管DISP1:MOV A,@R0 ;获得当前位地址MOV DPTR,#TAB_NU ;获得表头MOVC A,@A+DPTR ;查表获得显示数据MOV LED_DATA,A ;送段码MOV P2,R1 ;送位码MOV A,R1 ;准备下一位的位码RL AMOV R1,AINC R0 ;取下一个显存单元地址ACALL DELAY1MS ;延时 1 MSDJNZ R2,DISP1 ;重复显示下一个MOV P2,#0FFH ;关闭显示RET ;显示完成,返回;*********************************************************;延时子程序;********************************************************* DELAY1MS:MOV R6,#5DEL1:MOV R7,#93DJNZ R7,$DJNZ R6,DEL1RET;*********************************************************TAB_NU:DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H???DB 080H,090H,0FFH;*********************************************************END ;结束BEEP BIT P3.7KEYNUM EQU 30HORG 0000HAJMP MAINORG 0050H;**********************************************************; 主程序;********************************************************** MAIN:MOV SP,#60HMOV KEYNUM,#10H ;开机时显示"-"ACALL KEY_PLAYLOOP:ACALL KEY_SCANAJMP LOOP;**********************************************************;矩阵键盘键值查找程序;键值存入30H单元;**********************************************************KEY_SCAN:MOV P1,#0F0H ;置列线为0,行线为1MOV A,P1 ;读入P1口状态ANL A,#0F0H ;保留高4位MOV B,A ;保存数据MOV P1,#0FH ;置列线为1,行线为0MOV A,P1 ;读入P1口状态ANL A,#0FH ;保留低4位ORL A,B ;高四位与低四位重新组合CJNE A,#0FFH,KEY_IN1 ;0FFH为末按键AJMP KEY_END KEY_IN1:MOV B,A ;保存键值MOV DPTR,#KEYTABLE ;置键编码表首址MOV R3,#0FFH ;KEY_IN2:INC R3 ;查表次数加1MOV A,R3MOVC A,@A+DPTR ;取出键码CJNE A,B,KEY_IN3 ;比较MOV A,R3 ;找到,取次数值MOV KEYNUM,A ;送显示单元ACALL KEY_PLAY ;显示键值ACALL BEEP_BL ;蜂鸣器响一声AJMP KEY_ENDKEY_IN3:CJNE A,#00H,KEY_IN2 ;继续查 ;00H为结束码KEY_END:RET;********************************************************** ; 键编码表;********************************************************** KEYTABLE:DB 0EEH,0EDH,0EBH,0E7H,0DEHDB 0DDH,0DBH,0D7H,0BEH,0BDHDB 0BBH,0B7H,07EH,07DH,07BHDB 077H,00H ;00H为结束码;********************************************************** ;;蜂鸣器响一声子程序;;********************************************************** BEEP_BL:MOV R6,#200BL1:ACALL BL2CPL BEEP ;蜂鸣器取反产生驱动脉冲DJNZ R6,BL1SETB BEEP ;关闭蜂鸣器MOV R5,#25ACALL DELAYRETBL2:MOV R7,#220BL3:NOPDJNZ R7,BL3RET;********************************************************** ; 延时子程序;********************************************************** DELAY: ;延时R5×10MSMOV R6,#50DEL1:MOV R7,#100DJNZ R7,$DJNZ R6,DEL1DJNZ R5,DELAYRET;********************************************************** ;键值显示子程序;********************************************************** KEY_PLAY:MOV A,KEYNUM ;要显示的数据MOV DPTR,#TABLE ;置段码表地址MOVC A,@A+DPTR ;查显示数据段码MOV P0,A ;输出段码至P0CLR P2.0 ;第一个数码管亮RET;**********************************************************; 数码管段码表;**********************************************************TABLE:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8HDB 80H,90H,88h,83h,0c6h,0a1h,86h,8eh,0BFH ;0-F,-;**********************************************************END ;结束1位数码管显示矩阵键盘的按下键的键值。
单片机课程设计姓名:陈素云班级:09电力方向2班学号:2设计题目:按键控制1位LED数码管显示0-9 设计要求:通过单片的I/O口与LED数码管所构成的单片机系统的软件编程,使学生掌握简单的单片机系统的设计,同时初步学全用汇编语言和C语言两种方式编程的基本方法。
学生必须采用单片机AT89C51为LED显示屏的控制为核心,分别置“1”或“0”,让某些段的LED 发光,其它的熄灭,然后达到显示不同的字符和图符号的目的. 学生根据前期设计的步骤按照设计报告内容的具体要求,选择前期设计的一个典型题目,写出详尽的课程设计报告,重点内容包括方案论证、完整的电路图、软件系统流程图及开发程序、组装调试内容和总结等。
目录第1节引言 (3)1.1 LED数码显示器概述 (3)1.2 设计任务 (5)1.3设计目的 (6)第2节AT89C51单片机简介 (6)2.1 AT89C51单片机 (6)2.2 单片机管脚图 (7)2.3管脚说明 (7)2.4振荡器特性 (9)第3节设计主程序与硬件电路设计 (9)3.1设计的主程序 (10)3.2系统程序所需硬件 (10)3.2.1所需的硬件 (10)3.2.2所需硬件的结构图 (11)3.3 硬件电路总连接图 (12)第4节程序运行过程 (12)4.1分析步骤 (12)4.2 程序执行过程 (13)第5节程序运行结果 (13)总结参考文献第1节引言还记得我们小时候玩的“火柴棒游戏”吗,几根火柴棒组合起来,能拼成各种各样的图形,LED数码管显示器实际上也是这么一个东西。
在单片机系统中,常常用LED数码数码管显示器来显示各种数字或符号。
LED 数码显示器是单片机嵌入式系统中经常使用的显示器件。
一个“8”字型的显示模块用“a、b、c、d、e、f、g、h” 8 个发光二极管组合而成。
每个发光二极管称为一字段。
LED 数码显示器有共阳极和共阴极两种结构形式。
由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。