欢迎来到泰骏兴电子,大家有问题可以直接联系管理员QQ:233619809单片机 QQ群:59194556 各位游客也可以注册玩玩,享受更多权益。温馨提示:本网站仅提供平台学习以及渠道,一切后果自行承担,还望广大用户提高自我意识,请不要轻易相信他人,请不要轻易相信他人,请不要轻易相信他人。为了更好的管理论坛工作,所以现在使用邮箱注册,如果以前的邮箱不能修改的,请联系管理员代为修改

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 108|回复: 0

基于STC的8路抢答器设计

[复制链接]
发表于 2023-1-3 19:41:32 | 显示全部楼层 |阅读模式




  1. #include "liquidcrystal1602.h"
  2. #define uint unsigned int
  3. #define uchar unsigned char

  4. sbit lb=P2^1;
  5. #define buzz_on lb=0;
  6. #define buzz_off lb=1;
  7. sbit qh=P2^0;
  8. void fmq(uchar q,uint w)
  9. {
  10.                         uchar e;
  11.                         for(e=0;e<q;e++)
  12.         {
  13.                         buzz_on;
  14.                         delay_ms(w);
  15.                         buzz_off;
  16.                         delay_ms(w);
  17.         }
  18. }
  19. void main()
  20. {
  21.                         liquid1602crystal();
  22.                         display_characters1602(0,3,"Responder");
  23.                         fmq(1,100);
  24.                         while(1)
  25.         {
  26.                         if(P1!=0xff)
  27.                 {
  28.                         P3=P1;
  29.                         switch(P1)
  30.                         {
  31.                          case 0xfe:display_characters1602(1,0,"congratulations1");fmq(1,10);break;
  32.                          case 0xfd:display_characters1602(1,0,"congratulations2");fmq(2,10);break;
  33.                          case 0xfb:display_characters1602(1,0,"congratulations3");fmq(3,10);break;
  34.                          case 0xf7:display_characters1602(1,0,"congratulations4");fmq(4,10);break;
  35.                          case 0xef:display_characters1602(1,0,"congratulations5");fmq(5,10);break;
  36.                          case 0xdf:display_characters1602(1,0,"congratulations6");fmq(6,10);break;
  37.                          case 0xbf:display_characters1602(1,0,"congratulations7");fmq(7,10);break;
  38.                          case 0x7f:display_characters1602(1,0,"congratulations8");fmq(8,10);break;
  39.                         }
  40.                         while(1)
  41.                         {
  42.                         if(qh==0)
  43.                                 {
  44.                         P3=0xff;
  45.                         display_characters1602(1,0," Rush to answer ");
  46.                         break;
  47.                                 }
  48.                         }
  49.                 }
  50.         }
  51. }
复制代码
实际上多路抢答器的程序很简单,短短几句话就搞定了



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
高级模式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|泰骏兴电子科技有限公司 ( 粤ICP备2023060260号-1 ) 单片机爱好者

GMT+8, 2026-1-10 12:08

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表