4位一体式共阴数码管资料及程序

4位一体式共阴数码管资料及程序
4位一体式共阴数码管资料及程序

ARK SR420561k SR410561K 四位一体数码管的引脚图判断

市面上卖的数码管一般都不会有DATASHEET或者说明文件,具体我也查了几个厂家,厂家基本都是在该元件的功能和具体电压电流值做些介绍,其他涉及到引脚排列,引脚图和封装图是不会给出的。

原因可能是1 涉及商业机密? 2厂家不屑给出,因为很好判断。

但是这样可难为初学者了,所以为了方便大家查找,在这里ZG工作室会陆续推出各种数码管和点阵管的引脚

排列。

4位一体数码管,其内部段已连接好,引脚如图所示(数码管的正面朝自己,小数点在下方)。a、b、c、d、

e、f、g、dP为段引脚,1、2、3、4分别表示四个数码管的位。

数码管正面朝向自己、小数点在下方;然后上方的引脚从左到右为1-2-3-4-5-6 ;

下方的引脚从右到左为7--8-9-10-11-12;

(可能和原理图封装脚不一样,本例只是告诉大家如何快速识别)

SEG1 表示控制第一个数码管SEG2表示控制第2个数码管、依此类推。

注意:ARK SR420561k SR410561K的引脚排列是一模一样的!只

ark sr420561k 共阴极

ark sr410561k 共阳极

#include

#include

#define uchar unsigned char

#define uint unsigned int

unsigned char code pattern_P0[]={

0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xff };//数码管管脚定义0~F 共16个数

uchar DSY_Buffer[4]={0,0,0,0}; //定义4位缓冲区

void DelayMS(unsigned int x) //延时函数

{ unsigned char i;

while (x--)

{

for (i=0;i<200;i++);

}

}

void main() //主函数

{

uchar i,j=0;

P0 = 0x00;

P2 = 0x00;

while(1)

{

for(i=0;i<21;i++);

{

P0 = ~pattern_P0[j];

j=(j+1)%16;

// j++;

DelayMS(300);

}

}

for(j=0;j<21;j++)

{

P2= DSY_Buffer[i];

DelayMS(300);

}

}

4乘4矩阵键盘输入数码管显示四位数

综合课程设计三相步进电机控制器电路的设计 学生姓名__________

指导教师_________ 课程设计任务书 一、设计说明 步进电机是工业过程控制及仪表控制中的主控元件之一,作为执行元件其特点为能够快速起启停、精度高且能直接接收数字量,由于这些特点使其在定位场合得到了广泛的应用。 设计一个三相步进电机控制器,使其能够控制步进电机的工作状态,如步进电机正、反转,步进电机的工作方式等。 用键盘设定步进电机的工作频率,工作方式,并用数码管显示设定值,可以通过按键来更换显示内容。用示波器观测三相的输出波形,并用数码管显示电路的工作状态。 二、技术指标 步进电机的工作频率为:<10kHz 三、设计要求 1.进行方案论证,提出一个合理的设计方案并进行理论设计; 2.对所设计的方案部分进行调试; 3.在选择器件时,应考虑成本。 4.设计测量调试电路。 四、实验要求 1.根据技术指标制定实验方案;验证所设计的电路。 2.进行实验数据处理和分析。 五、推荐参考资料 1?谢自美?电子线路设计?实验?测试.[M]武汉:华中理工大学出版社,2000 年 2. 阎石. 数字电子技术基础. [M] 北京:高等教育出版社,2006年 3. 童诗白、华成英.模拟电子技术基础. [M] 北京:高等教育出版社,2006年 4..付家才. 电子实验与实践. [M] 北京:高等教育出版社,2004年 5.沙占友、李学芝著.中外数字万用表电路原理与维修技术. [M] 北京:人民 邮电出版社,1993年

六、按照要求撰写课程设计报告成绩评定表

一、概述 本次毕设的题目是:三相步进电机控制电路的设计。本次毕设使用80C51单片机作为主控芯片,利用ULN2003A集成电路作为三相步进电机的驱动电路,采用单极性驱动方式,使三相步进电机能在(1)三相单三拍,(2)三相双三拍, (3)三相六拍三种工作方式下正常工作;能实现的功能有:启动/停止控制、方向控制;速度控制;用LED数码管显示工作方式。键盘输入工作频率。本次课程设计采用80C51单片机作为主控芯片,程序采用C语言来编写,驱动电路采用ULN2003A集成电路,显示采用 7SEG-MPX4-CC卩四位共阴数码管,P0接段码,并用8只1K欧左右电阻上拉。P2的4位10 口接位选码。正转,数码管显示1。反转,数码管显示2.不转,数码管显示0.采用Proteus软件进行仿真。在Keil uVsuon3编程环境下编程和编译生成HEX文件,导入到 80C51单片机,实现对各个模块的控制,实现我们所需要的功能。 本次课程是对毕业设计的基础设计,即实现4x4键盘输入,数码管显示输入数字的设计。 二、方案论证 1步进电机驱动方案选择 方案1 :使用功率三极管等电子器件搭建成功率驱动电路来驱动电机的运行。这种方案的驱动电路的优点是使用电子器件联接,电路比较简单,但容易受 干扰,信号不够稳定,缺点是器件较大而不便电路的集成,使用时很不方便,联接时容易出错误。 方案2:使用专门的电机驱动芯片ULN2003A来驱动电机运行。驱动芯片的优点是便于电路的集成,且驱动电路简单,驱动信号很稳定,不易受外界环境的干扰,因而设计的三相步进电机控制系统性能更好。 通过对两种方案的比较,我选择方案2使用ULN2003A S机驱动芯片来作为驱动。 2数码管显示方案选择 方案1:把所需要显示的数据通过专用的七段显示译码器(例如7448)的转换输出给LED显示屏。优点是输出比较简单,可以简化程序,但增加了芯片的费用,电路也比较复杂。 方案2:通过程序把所要的数据转化为七段显示的数据,直接通过单片机接 口来显示,其优点是简化了电路,但增加了软件编写的负担。 通过对两种方案进行比较,我选择通过软件编写来输出显示信号,即单片机直接和显示器相连。 3控制状态的读取 方案1:把按键接到单片机的中断口,若有按键按下,单片机接收到中断信 号,再通过软件编写的中断程序来执行中断,优点是接线简单,简化了电路,但软件编写较为复杂,不易掌握。

eda设计4位数码管显示

module seg_714( input clk, input rst, output reg clkout_5ms, output reg clkout_1s, output reg [7:0] cadp, output reg [3:0] AN ); reg [31:0] cnt_5ms; reg [31:0] cnt_1s; reg [1:0] x; always @ (posedge clk or posedge rst) if(rst==1) cnt_5ms<=0; else if(cnt_5ms==499999) cnt_5ms<=0; else cnt_5ms<=cnt_5ms+1; always @ (posedge clk or posedge rst) if(rst==1) clkout_5ms<=0; else if(cnt_5ms<=249999) clkout_5ms<=0; else clkout_5ms<=1; always @ (posedge clkout_5ms or posedge rst) if(rst==1) x<=0; else x<=x+1; always @ (x or rst) if(rst==1) AN=4'b1111; else if(clkout_1s==0) AN=4'b1111; else case(x) 0 : begin AN=4'b0111; cadp = 8'b00000011; end 1 : begin AN=4'b1011; cadp = 8'b11000001; end 2 : begin AN=4'b1101; cadp = 8'b00100101; end 3 : begin AN=4'b1110; cadp = 8'b10011010; end default cadp=0; endcase always @ (posedge clk or posedge rst) if(rst==1) cnt_1s<=0; else if(cnt_1s==99999999) cnt_1s<=0; else cnt_1s<=cnt_1s+1; always @ (posedge clk or posedge rst) if(rst==1) clkout_1s<=0; else if(cnt_1s<=49999999) clkout_1s<=0; else clkout_1s<=1; endmodule

串行口串入并出做段码的四位数码管显示控制电路

3.6显示电路及其相关元件介绍 3.6.1 7段数码管及74LS164介绍 数码管是由发光二极管组成的显示器[13],有7段和“米”字段之分,如图3-9所示的段数码管有共阴极和共阳极接法两种。共阳极数码管的发光二极管的阳极连接在一起,通常此公共阳极接+5V,当某个发光二极管的阴极为低电平时,发光二极管电亮,相应的端被显示。 图3-9 七段数码管结构 74LS164是8位串入/并出的移位寄存器[14],无并行输出控制端,在串行输入过程中,其输出状态会不断的变换。其真值表如表3-3所示。 表3-3 74LS164真值表 Q A0、Q B0和Q H0是在稳态输入状态输入条件建立之前Q A、Q B和Q H相应的电平; Q An和Q Bn是最近时钟脉冲在上升沿转换之前Q An和Q Bn的电平,表示移一位。

图3-10 显示电路 3.6.2数码管显示电路介绍 显示电路有静态和动态两种。所谓动态显示就是在执行相应的显示指令时才会点亮相应的数码管,相关指令执行完后就会熄灭,依靠人的视觉暂留给人一种数码管被一直点亮的感觉,而实际上数码管是闪烁的,应用于程序不大的系统中;而静态显示是是当数码管显示某一个字符时,相应的发光二极管恒定地导通或截止。 考虑到本设计程序并不庞大,所以选用四位7段数码管组成动态显示电路。如图3-10所示。单片机的串行口工作于模式0[15],即同步移位寄存器模式。数据由RXD端发送,同步移位脉冲由TXD端输出。通过74LS164转换为并行输出,构成4位7段数码管的段选。数码管的位选分别由单片机的P3.3、P3.4、P3.5和P3.7 口构成。 图中的四个PNP型三极管用于控制四个数码管的选通,反相器7404是为了

4位七段数码管循环显示

课程报告 课程新型单片机实践题目 4位7段数码管二级学院 班级 姓名 学号 指导教师 设计时间

常州工学院《新型单片机》设计任务书学院:专业:班级:

绪论 当今世界,电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。因此点阵式显示器件的研制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。目前,点阵式显示器件具体包括LED显示模块和LCD显示模块等。现在发展的LCD比较先进,LCD的优点较为明显,他体积小,容易控制,功能强,价格适宜,能够适应显示器的发展方向,因而在通信、家电、大屏幕投影等领域得到了越来越广泛的应用;随着社会经济的迅猛发展,工业生产逐渐实现了自动化,其中,设备的工作状态和生产过程状态的显示与监控起到了非常重要的作用,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,他可以显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型,显示亮度较高,并且对环境条件要求比较低。LED显示又可以分为单色显示和双色显示,可以按照需要的大小、形状和颜色进行组合,并用单片机控制实现各种文字或图形的变化,达到宣传和提示的目的。据不完全统计,1991年,全国LED显示屏的产值还不到亿元人民币,而在1993年,仅蓝通公司一家企业的显示屏产值即达1亿多人民币。 由于LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活.适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所.该项目广泛涉及了计算机及电子技术中的电源技术,单片机技术,数据通讯技术,显示技术,存储技术,系统软件技术,接口及驱动等技术.我国经济发展迅猛,对信息传播有越来越高的要求.可以相信,LED电子显示屏以其色彩鲜亮夺目,大的显示信息量,寿命长,耗电量小,重量轻,空间尺寸小,稳定性高,易于操作,安装和维护等特点,将在社会经济发展中扮演越来越重要的角色。

实验四八位七段数码管动态显示电路的设计

八位七段数码管动态显示电路的设计 一、实验目的 1、了解数码管的工作原理。 2、学习七段数码管显示译码器的设计。 3、学习VHDL的CASE语句及多层次设计方法。 二、实验原理 七段数码管是电子开发过程中常用的输出显示设备。在实验系统中使用的是两个四位一体、共阴极型七段数码管。其单个静态数码管如下图4-4-1所示。 图4-1 静态七段数码管 由于七段数码管公共端连接到GND(共阴极型),当数码管的中的那一个段被输入高电平,则相应的这一段被点亮。反之则不亮。共阳极性的数码管与之相么。四位一体的七段数码管在单个静态数码管的基础上加入了用于选择哪一位数码管的位选信号端口。八个数码管的a、b、c、d、e、f、g、h、dp都连在了一起,8个数码管分别由各自的位选信号来控制,被选通的数码管显示数据,其余关闭。 三、实验内容 本实验要求完成的任务是在时钟信号的作用下,通过输入的键值在数码管上显示相应的键值。在实验中时,数字时钟选择1024HZ作为扫描时钟,用四个拨动开关做为输入,当四个拨动开关置为一个二进制数时,在数码管上显示其十六进制的值。 四、实验步骤 1、打开QUARTUSII软件,新建一个工程。 2、建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框。 3、按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,用户可参照光 盘中提供的示例程序。 4、编写完VHDL程序后,保存起来。方法同实验一。

5、对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。 6、编译仿真无误后,根据用户自己的要求进行管脚分配。分配完成后,再进行全编译 一次,以使管脚分配生效。 7、根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。 如果是调用的本书提供的VHDL代码,则实验连线如下: CLK:FPGA时钟信号,接数字时钟CLOCK3,并将这组时钟设为1024HZ。 KEY[3..0]:数码管显示输入信号,分别接拨动开关的S4,S3,S2,S1。 LEDAG[6..0]:数码管显示信号,接数码管的G、F、E、D、C、B、A。 SEL[2..0]:数码管的位选信号,接数码管的SEL2、SEL1、SEL0。 8、用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与 自己的编程思想一致。 五、实验现象与结果 以设计的参考示例为例,当设计文件加载到目标器件后,将数字信号源模块的时钟选择为1464HZ,拨动四位拨动开关,使其为一个数值,则八个数码管均显示拨动开关所表示的十六进制的值。

4位七段数码管循环显示

课程报告 课程新型单片机实践题目4位7段数码管二级学院 班级 姓名 学号 指导教师 设计时间

常州工学院《新型单片机》设计任务书学院:专业:班级:

绪论 当今世界,电子技术迅猛发展,点阵式显示器件作为现代信息显示的重要媒体,在金融证券、体育、机场、交通、商业、广告宣传、邮电电信、指挥调度、国防军事等许多领域中得到了广泛应用。因此点阵式显示器件的研制、生产也的到了迅速的发展,并逐步形成产业,成为光电子行业的新兴产业领域。目前,点阵式显示器件具体包括LED显示模块和LCD显示模块等。现在发展的LCD比较先进,LCD的优点较为明显,他体积小,容易控制,功能强,价格适宜,能够适应显示器的发展方向,因而在通信、家电、大屏幕投影等领域得到了越来越广泛的应用;随着社会经济的迅猛发展,工业生产逐渐实现了自动化,其中,设备的工作状态和生产过程状态的显示与监控起到了非常重要的作用,对于那些需要显示的信息量不是很大,分辨率不是很高,又需要制造成本相对比较低的场合,使用大、小屏幕LED点阵显示器是比较经济适用的,他可以显示字符、数字、汉字和简单图形,可以根据需要使用不同字号、字型,显示亮度较高,并且对环境条件要求比较低。LED显示又可以分为单色显示和双色显示,可以按照需要的大小、形状和颜色进行组合,并用单片机控制实现各种文字或图形的变化,达到宣传和提示的目的。据不完全统计,1991年,全国LED显示屏的产值还不到亿元人民币,而在1993年,仅蓝通公司一家企业的显示屏产值即达1亿多人民币。 由于LED电子显示屏具有所显内容信息量大,外形美观大方,操作使用方便灵活.适用于火车,汽车站,码头,金融证券市场,文化中心,信息中心体育设施等公共场所.该项目广泛涉及了计算机及电子技术中的电源技术,单片机技术,数据通讯技术,显示技术,存储技术,系统软件技术,接口及驱动等技术.我国经济发展迅猛,对信息传播有越来越高的要求.可以相信,LED电子显示屏以其色彩鲜亮夺目,大的显示信息量,寿命长,耗电量小,重量轻,空间尺寸小,稳定性高,易于操作,安装和维护等特点,将在社会经济发展中扮演越来越重要的角色。

51单片机(四位数码管的显示)程序[1]

51单片机(四位数码管的显示)程序 基于单片机V1或V2实验系统,编写一个程序,实现以下功能:1)首先在数码管 上显示P ”个字符;2)等待按键,如按了任何一个键,则将这 4个字符清除, 改为显示0000”个字符(为数字的0)。 E3最佳答案 下面这个程序是4x4距阵键盘丄ED 数码管显示,一共可以到0-F 显示,你可以稍微 改一下就可以实现你的功能了,如还有问题请发信息,希望能帮上你! #i nclude un sig ned char code Dig[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1 ,0x86,0x8e}; //gongyang 数码管 0-F 代码 void key_delay(void) { int t; for(t=0;t<500;t++); } un sig ned char k; //设置全局变量k 为键盘的键值 键盘延时函数 键盘扫描函数 ***************************** */ //延时函数

void keyscan(void) //键盘初始化 //有键按下? //延时 //确认真的有键按下? //使行线 P2.4 为低电平,其余行为高电平 //a 作为缓存 //开始执行行列扫描 { case 0xee:k=15;break; case 0xde:k=11;break; case 0xbe:k=7;break; case 0x7e:k=3;break; default:P2 = 0xfd; //使行线 P2.5 为低电平,其余行为高电平 a = P2; switch (a)//键盘扫描函数 { unsigned char a; P2 = 0xf0; if(P2!=0xf0) { key_delay(); if(P2!=0xf0) { P2 = 0xfe; key_delay(); a = P2; switch (a)

四位数码管的显示程序

大家可以参考下: 我也没调试过大家有问题可以给我留言我的邮箱zhangyi061322@https://www.360docs.net/doc/c68623694.html, 基于单片机V1或V2实验系统,编写一个程序,实现以下功能:1)首先在数码管上显示“P_ _ _”4个字符;2)等待按键,如按了任何一个键,则将这4个字符清除,改为显示“0000”4个字符(为数字的0)。 最佳答案 下面这个程序是4x4距阵键盘,LED数码管显示,一共可以到0-F显示,你可以稍微改一下就可以实现你的功能了,如还有问题请发信息,希望能帮上你! #include unsigned char code Dig[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1 ,0x86,0x8e}; //gongyang数码管0-F 代码 unsigned char k; //设置全局变量k 为键盘的键值 /************************************键盘延时函数****************************/ void key_delay(void) //延时函数 { int t; for(t=0;t<500;t++); } /************************************键盘扫描函数******************************/ void keyscan(void) //键盘扫描函数 { unsigned char a; P2 = 0xf0; //键盘初始化 if(P2!=0xf0) //有键按下? { key_delay(); //延时 if(P2!=0xf0) //确认真的有键按下? { P2 = 0xfe; //使行线P2.4为低电平,其余行为高电平 key_delay(); a = P2; //a作为缓存 switch (a) //开始执行行列扫描 { case 0xee:k=15;break; case 0xde:k=11;break; case 0xbe:k=7;break; case 0x7e:k=3;break; default:P2 = 0xfd; //使行线P2.5为低电平,其余行为高电平

51单片机控制4个数码管显示09999

//使用AT89c51单片机控制四个数码管动态显示0-9999 ,12MHz #include void jiayi();//加1函数 void chufa();//除法函数 void xianshi();//显示函数 void delay();//延时函数 sbit P2_0=P2^0;//个位位码 sbit P2_1=P2^1;//十位位码 sbit P2_2=P2^2;//百位位码 sbit P2_3=P2^3;//千位位码 unsigned char qianwei,baiwei,shiwei,gewei; unsigned int count=0; unsigned char code dis[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //共阳极0-9 void main() { while(1) { jiayi(); chufa(); xianshi(); } } void chufa()//将数字的各个位拆开 { qianwei=count/1000;//千位数 baiwei=count%1000/100; //百位数 shiwei=count%100/10; //十位数 gewei=count%10; //个位数 } void jiayi() { count=count+1; if(count==10000) count=0; } void delay()//延时 { unsigned int i,j; for(i=0;i<10;i++) { for(j=0;j<200;j++); } } void xianshi()//显示当前数值

FPGA 四位数码管显示

module LED_Display(clk,seg,dp,an); input clk; //输入时钟 output[6:0] seg; //7个公共段选信号,从低到高对应七段数码管的ABCDEFG output dp; //小数点段选信号DP output[3:0] an; //4 位数码管的位选信号 reg [15:0] count_for_clk = 0; //分频计数器,65536 分频 reg [3:0] an_reg = 0; reg [6:0] seg_reg = 0; assign seg=seg_reg; //7 个段选赋值 assign dp=1; //小数点段选赋值 assign an=an_reg; //4 个位选赋值 parameter //七段数码管显示数字0-9 的段选值 zero = 7'b100_0000, one = 7'b111_1001, two = 7'b010_0100, three = 7'b011_0000, four = 7'b001_1001, five = 7'b001_0010, six = 7'b000_0010, seven = 7'b111_1000, eight = 7'b000_0000, nine = 7'b001_0000; //分频计数器 always@(posedge clk) begin count_for_clk<=count_for_clk+1; end //段选寄存器赋值,4 位数码管分时复用 always@(posedge clk) begin case(count_for_clk[15:14]) 0: seg_reg<=one; //数码管1 段选 1: seg_reg<=two; //数码管2 段选 2: seg_reg<=three; //数码管3 段选 3: seg_reg<=four; //数码管4 段选 endcase end //位选寄存器赋值,每次只选通一位数码管 always@(posedge clk) begin case(count_for_clk[15:14]) 0: an_reg<=4'b0111; //选通数码管1 1: an_reg<=4'b1011; //选通数码管2

四位共阳数码管的使用

四位数码管的探究 (1) 硬件准备 (1) 软件准备 (2) 控制思路: (2) 下面是实际的焊接之中,考虑到实际电路的连接顺序,采用下面的连接。 (4) 两位数码管源程序:00-99 (4) 异曲同工:0000——9999 (5) 更进一步:四位数字时钟 (7) 7

四位数码管的探究 联系邮箱qianfanguijin@https://www.360docs.net/doc/c68623694.html, 7 四位数码管的探究 硬件准备 四位共阳数码管一块,1K 电阻4只。数码管的引脚图如下所示: 使用的单片机是STC12C2052,位选可以使用P1接口控制。 参照下面数据手册的内容,可以看出P3.5,3.4,3.3,3.2均能够作为I/O 接口以推挽方式使用。由于数码管所能承受的电流较小,所以外加1K 的限流电阻。 单片机P3.5,3.4,3.3,3.2四个接口可以作为数码阳极一端,利用推挽方式输出高电平,P1接口作为数码管的段选,输出低电平,驱动每一段数码管,这就为设想的实现取得了理论的基础。证明了使用20脚单片机控制数码管产生时钟的效果是切实可行的。下面关键的部分就成了数码管的编程阶段了。 下面将使用单片机控制数码管产生时钟的效果。由于单片机的计时是由软件延时的方法产

单片机,一个神奇的东西 2 生,所以说误差会有很大。因此本作品仅供娱乐。初期的想法是加入闹钟的概念。但是由于闹钟的定时不易调整,只能通过计算机编写软件定闹,这样就不是时钟的简洁的目的。另外,由于当单片机控制蜂鸣器响的时候,单片机控制数码管的部分势必会停止,这样又会影响时钟的准确性。因此,首先要实现的只是单片机的简易时钟功能或者说只是一个最大为1小时的秒表。 软件准备 将单片机的I/O 接口设置成推挽输出。 P1M0=0X00; P1M1=0XFF; P3M0=0X00; P3M1=0XFF; 控制思路: 第三四位作为秒表的秒针部分,每秒钟变化一次。当第四位由0变到9时,第四位自动清零,第三位由0变成1,实现加一。 软件的实现分为两部分。首先先实现后两位的秒针功能,先将前两位置之。下面是编程的设想。 由于数码管的引脚是共阳极,所有的阳极都是连接在一起的,因此不能同时给所有的阳极供电,如果那样的话,所有的数码管会有相同的显示方式。考虑到这一情况,只能采用和点阵屏类似的扫描方法,即将数码管分成四个一位的情况,然后每个4ms 扫描一次的方法。

6位7段LED数码管显示要点

目录 1. 设计目的与要求..................................................... - 1 - 1.1 设计目的...................................................... - 1 - 1.2 设计环境...................................................... - 1 - 1.3 设计要求...................................................... - 1 - 2. 设计的方案与基本原理............................................... - 2 - 2.1 6 位 8 段数码管工作原理....................................... - 2 - 2.2 实验箱上 SPCE061A控制 6 位 8 段数码管的显示................... - 3 - 2.3 动态显示原理.................................................. - 4 - 2.4 unSP IDE2.0.0 简介............................................ - 6 - 2.5 系统硬件连接.................................................. - 7 - 3. 程序设计........................................................... - 8 - 3.1主程序......................................................... - 8 - 3.2 中断服务程序.................................................. - 9 - 4.调试............................................................... - 12 - 4.1 实验步骤..................................................... - 12 - 4.2 调试结果..................................................... - 12 - 5.总结............................................................... - 14 - 6.参考资料........................................................... - 15 - 附录设计程序汇总.................................................... - 16 -

4个数码管的显示

假设30H、31H、32H、33H、34H、35H、36H各单元的低四位为对应的4个数码管的显示数字,高四位为0。 MOV SCON,#00H SETB P1.3 SETB P1.4 . . . M1: LCALL DISP CLR P1.0 CLR P1.1 CLR P1.2 JNB P1.3,KEY JNB P1.4,KEY SJMP M1 KEY: LCALL DELY CLR P1.0 SETB P1.1 SETB P1.2 JNB P1.3,KEY1 JNB P1.4,KEY2 SETB P1.0 CLR P1.1 SETB P1.2 JNB P1.3,KEY3 JNB P1.4,KEY4 SETB P1.0 SETB P1.1 CLR P1.2 JNB P1.3,KEY5 JNB P1.4,KEY6 SJMP M1 KEY1: LCALL DISP

JNB P1.3,KEY1 LCALL PRO1 SJMP M1 KEY2: JNB P1.4,KEY2 LCALL PRO2 SJMP M1 KEY3: LCALL PRO3 SJMP M1 KEY4: LCALL PRO4 SJMP M1 KEY5: LCALL PRO5 SJMP M1 KEY6: LCALL PRO6 SJMP M1 PRO1: . . . RET PRO2: . . . RET PRO3: . . . RET PRO4: . . . RET PRO5: . . . RET

PRO6: . . . RET DISP: MOV A,30H MOV DPTR,#TAB MOVC A,@A+DPTR MOV SBUF,A DISP1: JNB TI,DISP1 CLR TI MOV DPTR,#7FFFH MOV A,#0FEH MOVX @DPTR,A LCALL DELY MOV A,31H MOV DPTR,#TAB MOVC A,@A+DPTR MOV SBUF,A DISP2: JNB TI,DISP2 CLR TI MOV DPTR,#7FFFH MOV A,#0FDH MOVX @DPTR,A LCALL DELY MOV A,32H MOV DPTR,#TAB MOVC A,@A+DPTR MOV SBUF,A DISP3: JNB TI,DISP3 CLR TI MOV DPTR,#7FFFH MOV A,#0FBH MOVX @DPTR,A LCALL DELY MOV A,33H MOV DPTR,#TAB MOVC A,@A+DPTR MOV SBUF,A DISP4: JNB TI,DISP4 CLR TI MOV DPTR,#7FFFH MOV A,#0F7H MOVX @DPTR,A

四位拨动开关控制一位数码管显示

课程设计说明书 课程名称:通信电子线路 设计题目:四位拨动开关控制一位数码管显示院系:电子信息与电气工程学院 学生姓名: 学号: 专业班级: 指导教师: 2012年 5 月18 日

课程设计任务书设计题目四位拨动开关控制一位数码管显示 学生姓名所在院系电子信息与电 气工程学院 专业、年级、班 设计要求: 1.具有电源开关及指示灯,有复位按键; 2.用DIP开关的低四位为输入,控制输出端数码管显示器的输出。实现如下功能:上电后默认 为“8”,调整4位DIP开关按二进制输入,按确定键后数码管显示对应的数字“0”-“F”。 学生应完成的工作:学生应完成的工作: 1)通过单片机原理课程设计,使之较系统地、全面地掌握单片机应用系统的基本设计方法,设计 步骤,熟悉和掌电路参数的计算。 2)多位同学共同研究设计出最佳方案。 3) 通过查阅手册和文献资料,培养学生分析和解决实际问题的能力与技巧。 4) 进一步熟悉软件的正确使用方法,原理图设计。 5) 学会撰写课程设计总结报告。 6) 培养严肃认真的工作作风和严谨的科学态度。 参考文献阅读: [1] 张毅刚.单片机原理及应用.北京:高等教育出版社,2009.11 [2] 杜树春.单片机C语言和汇编语言混合编程实例详解.北京:北京航空航天大学出版社,2006.6 [3] 谢嘉奎.电子线路(第四版).北京:高等教育出版社,2004. [4] 臧春华.电子线路设计与应用.北京:高等教育出版社,2005. 工作计划: 5月7日至11日――――原理图设计 5月12日至13日――――程序设计 5月14日至16日――――电路安装 5 月17日――――——电路调试 5月18日――――设计验收、设计报告 任务下达日期:2012年 5 月7 日 任务完成日期:2012年 5 月18 日 指导教师(签名):学生(签名):

四位数码管及引脚图

4位数码管[浏览次数:约68764次] ?四位数码管是一种半导体发光器件,其基本单元是发光二极管。能显示4个数码管叫四位数码管。数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码 管多一个发光二极管单元(多一个小数点显示);按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高 电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。 目录 ?4位数码管的驱动方式 ?4位数码管的引脚图 ?4位数码管的参数 ?4位数码管区分共阴阳极的方法 4位数码管的驱动方式 ?1、静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 2、数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将 所有数码管的8个显示笔划"a,b,c,d,e,f,g,dp"的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。

4位7段数码管显示计算器

1前言 随着社会的发展,科学的进步,人们的生活水平在逐步的提高,尤其是微电子技术的发展,犹如雨后春笋般的变化。电子产品的更新速度快就不足惊奇了。计算器在人们的日常中是比较的常见的电子产品之一。如何使计算器技术更加的成熟,充分利用已有的软件和硬件条件,设计出更出色的计算器,使其更好的为各个行业服务,成了如今电子领域的研究课题。一块大而复杂的模拟电路花费了巨大的精力,繁多的元器件增加了设计的成本。而现在,只需要一块几厘米平方的单片机,写入简单的程序,就可以使您以前的电路简单很多。 计算器的未来是小型化和轻便化,如使用太阳能提供电池的计算器,使用ASIC设计的计算器,如使用纯软件实现的计算器等,随着社会的发展,知识的更新,各行各业的需要带动了电子产品的发展,未来的智能化计算器将是我们的发展方向,更希望成为现代社会应用广泛的计算工具。 本次设计采用STC89C52单片机、矩阵键盘和液晶显示器等器件实现模拟计算器硬件功能电路。通过掌握对字符液晶显示模块工作原理的理解及运用,如初始化、清屏、显示、调用及外特性有较清楚的认识,实现运用LCD显示计算结果;掌握液晶显示模块的驱动和编程,设计LCD和单片机的接口电路,以及利用单片机对液晶模块的驱动和操作;并通过运用C语言来实现其软件部分的设计,充分分析内部逻辑的概念,进行软件和硬件调试,最终完成对电路功能的软件仿真以及硬件实现。本系统能实现加、减、乘、清零和显示结果等功能。

2总体方案设计 2.1 设计内容 本设计为设计一种简单计算器数字输入及显示控制电路,具体要求如下: 1、利用AT89C52单片机进行数据处理。 2、运用矩阵键盘实现数据及功能输入。 3、使用数码管模拟计算器数字的输入及结果显示。 4、计算器能进行加、减、乘、除的简单计算及显示结果。 2.2设计方案比较 方案一:通过运用以AT89S52单片机为核心,加以外部电源供电、11.0592MHZ的晶振时钟电路、复位电路、矩阵键盘电路、4位7段数码管电路,来实现简单计算器的系统设计。其原理框图如图2-1所示: 图2-1 4位7段数码管显示计算器原理框图 方案二:通过利用STC89C52单片机为数据运算核心;外部电源电路提供+5V电源使整个硬件系统正常工作;以MAX232芯片为核心的下载电路实现程序下载到单片机;外部连接4*4矩阵键盘提供数据输入和功能键;以11.0592MHZ晶振为基准的时钟电路;使用1602LCD实现输入数据和运算结果的显示。其原理框图如图2-2所示:

实验四 数码管显示

实验四数码管显示 1. 驱动原理 数码管由7个发光二极管组成,行成一个日字形,它门可以共阴极,也可以共阳极.通过解码电路得到的数码接通相应的发光二极而形成相应的字,这就是它的工作原理. 基本的半导体数码管是由7个条状的发光二极管(LED)按图1所示排列而成的,可实现数字"0~9"及少量字符的显示。另外为了显示小数点,增加了1个点状的发光二极管,因此数码管就由8个LED组成,我们分别把这些发光二极管命名为 "a,b,c,d,e,f,g,dp",排列顺序如下图1。 图1:数码管引脚图及外形图 2. 数码管的结构及分类 特别提示:注意段码和位码的概念;会找出不同接法的段码分析方法。 数码管按各发光二极管电极的连接方式分为共阳数码管和共阴数码管两种共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。当某一字段的阳极为低电平时,相应字段就不亮。共阴数码管内部连接如图3所示。 共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管。共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。当某一字段的阴极为高电平时,相应字段就不亮。共阳数码管内部连接如图2所示。

图2:共阳数码管内部连接图图3:共阴数码管内部连接图 二、多位数码管的驱动方法 A.静态法 静态显示驱动:静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要5×8=40根I/O端口来驱动,要知道一个89S51单片机可用的I/O端口才32个呢:),实际应用时必须增加译码驱动器

数码管动态显示实验报告

实验四数码管动态显示实验一 一、实验要求 1.在Proteus软件中画好51单片机最小核心电路,包括复位电路和晶振电路 2.在电路中增加四个7段数码管(共阳/共阴自选),将P1口作数据输出口与7段数码管 数据引脚相连,P2.0~P2.3引脚输出选控制信号 3.在Keil软件中编写程序,采用动态显示法,实现数码管分别显示数字1,2,3,4 二、实验目的 1.巩固Proteus软件和Keil软件的使用方法 2.学习端口输入输出的高级应用 3.掌握7段数码管的连接方式和动态显示法 4.掌握查表程序和延时等子程序的设计 三.实验说明 本实验是将单片机的P1口做为输出口,将四个数码管的七段引脚分别接到P1.0至P1.7。由于电路中采用共阳极的数码管,所以当P1端口相应的引脚为0时,对应的数码管段点亮。程序中预设了数字0-9的段码。由于是让四个数码管显示不同的数值,所以要用扫描的方式来实现。因此定义了scan函数,接到单片机的p2.0至p2.3 在实验中,预设的数字段码表存放在数组TAB中,由于段码表是固定的,因此存储类型可设为code。 在Proteus软件中按照要求画出电路,再利用Keil软件按需要实现的功能编写c程序,生成Hex文件,把Hex文件导到Proteus软件中进行仿真。为了能够更好的验证实验要求,在编写程序时需要延时0.5s,能让人眼更好的分辨;89C51的一个机器周期包含12个时钟脉冲,而我们采用的是12MHz晶振,每一个时钟脉冲的时间是1/12us,所以一个机器周期为1us。在keil程序中,子函数的实现是用void delay_ms(int x),其中x为1时是代表1ms。四、硬件原理图及程序设计 (一)硬件原理图设计 电路中P1.0到P1.7为数码管七段端口的控制口,排阻RP1阻值为220Ω,p2.0到p2.3为数码管的扫描信号。AT89c51单片机的9脚(RST)为复位引脚,当RST为高电平的时间达到2个机器周期时系统就会被复位;31引脚(EA)为存取外部存储器使能引脚,当EA 为高电平是使用单片机内部存储器,当EA为低电平时单片机则使用外部存储器。18、19引脚是接晶振脚。而接地和电源端在软件中已经接好,所以不用在引线。 如下图所示:

相关主题
相关文档
最新文档