有at89c51单片机的四路抢答器的仿真和程序吗?想了解一下

作者&投稿:濯鸿 (若有异议请与网页底部的电邮联系)
用AT89C51单片机设计程序和仿真图~

说了等于没说,有仿真图和程序,但要做什么呢?
给你发一个8路抢答器的吧。
#include#define uchar unsigned charuchar table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f};sbit rstkey=P2^2;sbit speaker=P2^0;void delay()//延时约400毫秒{uchar i,j;for(i=0;i<200;i++)for(j=0;j<250;j++);}main(){uchar i,key;P2=0xff;while(1){i=0;P1=table[i];while(1){key=P3;if(key!=0)break;}switch(key){case 0x01:i=1;break;case 0x02:i=2;break;case 0x04:i=3;break;case 0x08:i=4;break;case 0x10:i=5;break;case 0x20:i=6;break;case 0x40:i=7;break;case 0x80:i=8;break;default:break;}P1=table[i];//显示按下抢答器的号P0=key;//显示按下键号的LEDwhile(1){if(rstkey==0)break;//主持人按下复位键则重新开始speaker=~speaker;//否则蜂鸣器报警delay();}}}

这么简单都不会,我们当时都用出发器,单片机都简单,用p0口,if语句,如果一个被抢答了,其它禁止,然后清零


#include

#define uint unsigned int

#define uchar unsigned char

sbit D0=P0^0;//指示灯

sbit beep=P0^1;//蜂鸣器

sbit K0=P0^2;//开始抢答按键

sbit S1=P0^3;//答题计时键

sbit S2=P0^4;//开始抢答时间调整键

sbit S3=P0^5;//答题计时时间调整键

sbit K1=P2^0;//1号选手抢答按键

sbit K2=P2^1;//2号选手抢答按键

sbit K3=P2^2;//3号选手抢答按键

sbit K4=P2^3;//4号选手抢答按键

sbit K5=P2^4;//5号选手抢答按键

sbit K6=P2^5;//6号选手抢答按键

sbit K7=P2^6;//7号选手抢答按键

sbit K8=P2^7;//8号选手抢答按键

char s;

uchar num=0;

char time1;//抢答时间

char time2;//答题限时时间

uint m,n;//T0,T1定时器定一秒时

bit flag1,flag2,flag3,flag4; //标志位

bit aa,bb;//时间调整标志位

//延时子函数

void delay(uint z)

{

uint x,y;

for(x=z;x>0;x--)

for(y=120;y>0;y--);

}

uchar code table1[]={

//共阴数码管段码值

0x3f,0x06,0x5b,0x4f,

0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,

0x39,0x5e,0x79,0x71

};

uchar code table2[]={

//共阴数码管位码值

0xf7,0xfb,

0xfd,0xfe

};

//初始化子函数

void init()

{

TMOD=0x11;

TH0=(65536-2000)/256;
……等 字数有限发不了这么多。



暂时没时间帮你新写了,不好意思。给你提供一条思路:硬件方面四个按钮一端公共接地,另一端兵分两路,一路接单片机除P3外的IO口,一路接四输入与非门,与非门输出接中断口。软件部分:按下按钮后中断,中断服务程序指示哪一位选手抢答(可能是亮灯,可能是数码管),进入空循环等待按下重置按钮(可能是单片机最小系统的RST,也可能是你另外接了一个按钮作复位),中断返回或系统重置。


单片机AT89C51各个引脚的作用
我是多年的单片机工程师,下面的讲解你参考一下 .单片机的40个引脚大致可分为4类:1 电源 2 时钟 3 控制 4 I\/O引脚。.下面详细讲解 .⒈ 电源:⑴ VCC - 芯片电源,接+5V ⑵ VSS - 接地端 .⒉ 时钟:XTAL1、XTAL2 -这个时钟相当于公共汽车,带动数据在单片机内的各个寄存器,进行传送。.⒊...

AT89C51和AT89S51的区别?
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机...XTAL2:片内振荡器反相放大器的输出端。AT89S51主要性能参数1、4kBytesFlash片内程序存储器;2、128bytes的随机存取数据存储器(RAM);3、32个外部双向输入\/...

如何自制at89c51\/at80c51的最小系统单片机
给你一个89C52的最小系统,和89C51、80C51通用。最小系统:能让单片机工作的最少条件,对于这两种51单片机,需要电源、晶振、复位电路、EA就可以组成一个最小系统,图给你发了,按照图片上的连接方法和参数,一定可以做成这个最小系统。还有你说的晶振可以更换,你可以使用晶振的孔座,和单片机的孔座...

求单片机AT89C51的中英文资料
AT89C51尤其很好适用于得益于它的处理速度和增强型片上外围功能集,诸如:汽车动力控制,车辆动态悬挂,反锁制动和稳定性控制应用。由于这些决定性应用,市场需要一种可靠的具有低干扰潜伏响应The monolithic integrated circuit widely applies to the trade: Such asmodem, motor control system, air ...

51单片机基本的电路里29,30,31三个引脚需不需要接啊
不一定需要接。以AT89C51单片机为例,第29脚是PSEN(外部存储器读选通信号),如果没有外接存储器的话,就不需要接。第30脚是ALE\/PROG(地址锁存允许信号):如果没有使用地址锁存器的话,也不需要接。第31脚是EA\/VPP(程序存储器的内外部选通),接低电平从外部程序存储器读指令,如果接高电平则从...

关于AT89C51单片机P0引脚的疑惑
单片机的引脚输出电压电流一般有多少 :IO口的置1时一般输出3.3-5V的电压(这和给单片机供电的电压一样得的)能否把单片机某个管脚置1 使其输出高电平点亮一盏LED灯:这个要看需要驱动的LED的工作电压和工作电流 如果单片某个引脚置1 但是在其输出口接地 这个引脚单片机内部识别是0还是1:单片...

单片机AT89c51的特点
一个全双工串行通信口,片内振荡器及时钟电路。AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时\/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

谁能给我介绍下89c51单片机 要尽量的详细
同时,Atmel不再接受89CXX的定单,大家在市场上见到的89C51实际都是Atmel前期生产的巨量库存而以。如果市场需要,Atmel当然也可以再恢复生产AT89C51。89S51相对于89C51增加的新功能包括:-- 新增加很多功能,性能有了较大提升,价格基本不变,甚至比89C51更低!-- ISP在线编程功能,这个功能的优势在于改写...

单片机AT89c51和AT89S51有什么不一样?
AT89S51与AT89C51相比,外型管脚完全相同,AT89C51的HEX程序无须任何转换可直接在AT89S51运行,结果一样。AT89S比AT89C51新增了一些功能,支持在线编程和看门狗是其中主要特点。它们之间主要区别在于以下几点:1.引脚功能:管脚几乎相同,在AT89S51中P1.5,P1.6,P1.7具有第二功能,即这3个引脚的第二功能组成了...

用单片机AT89C51制作电子秒表,需要用什么元器件。
元件:89c51,四位共阴极数码管,非自锁按键,10K电阻,10uf电解电容,30pf瓷片电容,10k排阻,晶振 留个邮箱,我把Proteus仿真图发给你,以下是程序,临时写的,Proteus测试正常,不知道符不符合你的要求,你可以自己再稍作修改。用的是12M晶振 include<reg51.h> define uchar unsigned char define uint...

安国市19719992143: 89c51做4路抢答器,求大神帮我做一个,急需.要求用汇编语言.还要有protues的仿真图! -
舒蒋适利: ORG 0000H JMP BEGIN ORG 0030H TABLE: ; 共阴极数码管显示代码表 DB 3FH,06H,5BH,4FH,66H ;01234 DB 6DH,7DH,07H,7FH,6fh ;56789 DELAY: MOV R5,#20 LOOP4: MOV R6,#50H ;延时20X20ms LOOP5: MOV R7,#100 DJNZ R7,...

安国市19719992143: 请各路大师教我怎么用AT89C51做抢答器,最好是用C语言写的程序.我急急急,拜托好心人了 -
舒蒋适利: 这是我这里的抢答器,你可以对照着看看#include<reg51.h> sbit key1=P3^0;//定义按键位置 需要切换到独立按键模式 sbit key2=P3^1; sbit key3=P3^2; sbit key4=P3^3;/******************************************************************//* 主函数 *//*******...

安国市19719992143: 用单片机AT89C51设计十路智力竞赛抢答器怎么设计 -
舒蒋适利: P1口按键输入,P0口输出LED8段数码管. 用switch 处理P1口的数据,看是否有键按下,如果有键按下,则进入switch处理函数,看是什么键码,对应键码控制P0口输出对应的数字.最后再来一个while按键释放程序.搞定~!因为你需要用10路,但是P1口直接连接的话只有8路,还有2路接不到.所以在输入给P1前,需要加上一个编码器,可以用74LS148或者74HC148优先编码器,8路的输入经过编码器3路输出给P1口,剩下2路直接与P1口闲置的IO口相连,这样就按键输入OK了

安国市19719992143: 用AT89C51的芯片可以做抢答器吗? -
舒蒋适利: 肯定可以阿,单片机一般什么都可以做的,最简单的方法就是把抢答的开关联到单片机的引脚,单片机不断的扫描这些口.

安国市19719992143: 急求基于单片机的4路电子抢答器c语言程序 -
舒蒋适利: 2、实现现象:同时按键抢答,先按的键有效,其他按键锁死 复位后重新开始抢答 3、硬件要求:按键 LED灯原理:最先按下按键者有效,其他均无效------------------------------------------------*/#include<reg52.h> //包含头文件,一般情况不需要改动,...

安国市19719992143: 用AT89C51制作无线抢答器
舒蒋适利: protues一般都不能仿真像红外遥控和无线收发的. 但是我想到一种不知道是否可以模拟,就是将无线收发模块去掉,把两个单片机的发射脚和接收端分别连接在一起(化无线为有线,调试好之后再接上无线收发模块绝对能用)进行编程,实物调程序我是这么做的,很方便,仿真没有试过,你可以试试.

安国市19719992143: 求大神做一个51单片机的四路抢答器,要汇编程序,电路图,和分析过程,还有4天答辩, -
舒蒋适利: 有一个八路的发给你吧,供参考 ORG 0000H JMP BEGIN ORG 0030H TABLE: ; 共阴极数码管显示代e68a84e8a2ade79fa5e9819331333332393338码表 DB 3FH,06H,5BH,4FH,66H ;12345 DB 6DH,7DH,07H,7FH ;6789 DELAY: MOV R5,#20...

安国市19719992143: 简易电子抢答器设计.要用到单片机AT89C51和c语言设计.题见下面,急用跪求.,谢谢,在线等待、 -
舒蒋适利: 好的

安国市19719992143: 我想用单片机AT89C51做个8路抢答器能不能用USB做电源
舒蒋适利: USB接口的供电电压为5V,最大电流500mA 只要你的抢答器功率不超过usb接口供电功率就可以. 如果你不需要通信的话,把USB当电源使把 在USB四根线上这样定义的 VCC Data- Data+ GND 接两根就可以了

安国市19719992143: 从那里可以找到用汇编语言编写的四路抢答控制程序 -
舒蒋适利: ORG 0000H AJMP START ORG 0030H START:MOV P0,#00H;显示 MOV P2,#0FFH; JNB P1.0,PULSE;开始 LOOP:;MOV P3,#0FFH JNB PI.0,LOOP5 JNB P1.1,LOOP1; 判断指令 JNB P1.2,LOOP2 JNB P1.3,LOOP3 JNB P1.4,LOOP4 ...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网