1. 设计思路
本例利用PIC16F877的RB端口中断设计一个抢答器,该抢答器可供不多于4个参赛队或者个人的抢答比赛场合使用。
每个参赛队的座位前安装1只抢答按钮开关和1个信号灯。主持人的座位前安装1只复原按钮开关、1只蜂呜器和1个抢答器工作状态指示灯。
每当主持人发出允许抢答的命令之后,哪个队先按下座位J的按钮开关,该座位的信号灯就先被点亮, 司时封锁其他按钮开关的活动,并且熄灭主掎人座位阝的状态指小灯和发出3声类似于电话振铃的提示声,以声明此次抢答动作已经完成。
在主持人确认后,按下“复原”按钮,状态指示灯重新点亮,并且同时发出“笛、笛”声,为下一次的抢答做好准备。
2.电路设计
电路原理图如图所示。
图 电路原理图
电路中的蜂鸣器FM是一只带有助音腔的压电陶瓷蜂鸣器,用于模拟发出报警声,在FM发声的同时,灯D6也在发光。FM可以看作是一个电容性负载,本身不能流过直流电流。发声的原理是,作用在两个电极极板的电位在发生变化时陶瓷材料就发生弯曲,从而振动空气发出声音。
FM和4只按钮开关SWa~SWd以及4只电阻Ra~Rd都是在演示板的基础上额外添加的。由于端口RB内部具有上拉电阻,只要用软件设置其有效,即可省略在4只端口引脚上外接的上拉电阻。按钮开关和指示灯与座位的对应关系如表所示。
表 按钮开关和指示灯与座位的对应关系
关键字:PIC单片机 RB中断 PIC16F877
引用地址:
PIC单片机的端口RB中断的设计思路及电路设计
推荐阅读最新更新时间:2024-03-16 13:20
PIC单片机的AT24C64通讯设计
该程序实现的功能是: 将I2C_A,I2C_B.。...I2C_K内容写入EEPROM中 同时在EEPROM中读出数据从新写入各个寄存器 LISTP=16C74B #include ERRORLEVEL-302 I2C_AEQU0X20 I2C_BEQU0X21 I2C_CEQU0X22 I2C_DEQU0X23 I2C_EEQU0X24 I2C_FEQU0X25 I2C_GEQU0X26 REG1EQU0X2B REG2EQU0X2C COUN TE QU0X71;I2C BCOUNTEQU0X72;I2C TXBUFEQU0X73;I2C RXBUFEQU0X74;I2C BUSCONEQU0X75;I2C BUSS
[单片机]
pic单片机驱动CAN接口收发数据C语言程序,11位标准标识符
/********************************************* ** 功能描述: CAN口测试,11位标准标识符** *********************************************/ #include p30f6014.h int failmemory ; _FWDT(WDT_OFF); //_FOSC(CSW_FSCM_OFF & XT); _FOSC(CSW_FSCM_OFF & XT_PLL4); unsigned int buffer1; unsigned int buffer2; unsigned int buffer3; unsigned int buffe
[单片机]
PIC单片机CAN总线通讯汇编程序
;该汇编程序实现CAN总线通讯发送缓冲器0向接收缓冲器0发送数据的自测试模式,单片机采用P18F458,其中接收采用中断方式,发送采用查询方式,本例的c51程序请打开 http://www.51hei.com/mcu/555.html ,流程和这个一样的。 LIST P=18F458 INCLUDE "P18F458.INC" CAN_FLAG EQU 0X20 ;定义标志寄存器 ORG 0X00 GOTO MAIN ORG 0X18 GOTO CAN_INTSERVE ;转向中断服务子程序 ORG 0X30 ;*********初始化子程序*************** INITIAL BCF TRISB,2 BSF T
[单片机]
PIC单片机printf()函数重定向
基本信息: 系统:Windows10 编译器:MPLAB X IDE V3.26 + XC8 V1.45 单片机:PIC18F66K22 下载器:PICKit3 一、串口初始化 /* 函数名:void USART1_Init( void ) 功能:使用的是串口1,串口初始化 */ void USART1_Init( void ) { TRISC6 = 1; TRISC7 = 1; // 输入模式,作复用功能 TX91 = 0; // 8位发送 TXEN1 = 1; SYNC1 = 0; // 异步模式 BRGH1 = 1; RX91 = 0
[单片机]
基于PIC单片机的智能型漏电继电器的设计
漏电继电器是一种可在被保护线路漏电电流达到设定值后切断被保护线路供电电源的保护装置,在电力系统中起着非常重要的作用,是保证供电可靠性的基础。随着电子技术和计算机技术的发展,电力系统的继电保护突破了传统的数字式保护继电器,出现了以微处理器为核心的智能保护继电器 。本文利用PIC18F6585型单片机设计了一款智能型漏电继电器,具有自诊断、故障记录、数据通信等多种功能,为故障分析提供便利,且具有较高的可靠性。 1 PIC系列单片机特点 PIC18F6585是由Microchip公司开发、研制和生产的PIC系列单片机,该系列单片机的技术性能具有以下优点 : (1)哈佛总线结构。PIC系列单片机在架构上采用了与众不同
[模拟电子]
PIC单片机警报声程序设计
pIC16c54警报声程序 #include“pic.h” #definebeep_outRA2//音效输出 chartmr_buff; charcycle_buff; charcycle_set; intchange_set; intchange_count; bitchange_flag; voidmain(void) {TRISA=0X0; PORTA=0; OP TI ON=4; cycle_buff=52; cycle_set=100; change_set=196; TMR0=0; while(1) { if(TMR0==0) {TMR0=(cycle_set-1)^0XFF; beep_out=!beep_ou
[单片机]
PIC单片机开发板之流水灯代码
/* 这是自已写的流水灯,速度为500ms */ #include pic.h #define uchar unsigned char #define uint unsigned int __CONFIG(0x3B31); void delay(uint x) { uint a,b; for(a=x;a 0;a--) for(b=110;b 0;b--); } void main() { uchar i; //变量定义最好放在第一行,否则会出错(提示一大堆的错误) TRISD=0x00; TRISC=0x00; PORTC=0x00; //把数码管屏蔽
[单片机]
DS18B20和PIC单片机通讯源程序
ORG PIC54 GOTO MAIN ORG 0 ;---------------------- ;---------------------------- DELAY22 MOVLW D'200' ; DELAY 2*250=500mS MOVWF COUNT1 DE32 MOVLW D'250' ; 8*250=2mS MOVWF COUNT2 DE42 NOP ; 1+2+1=5uS DECFSZ COUNT2,1 GOTO DE42 DECFSZ COUNT1,1 GOTO
[单片机]