篮球赛计时计分器,单片机课程设计
加减分控制。按键开关K5~K8一端接地,另一端输入与单片机
AT89S51的P3.5、P3.4、P0.2、P0.1。当K5~K8四个按键的任何一
个一位按下时,单片机发生中断,从而使相应LED显示。因为按键
开关按下时为低电平。例如:现在以乙队加分为例,来说明整个过程。
假设比赛刚开始,双方比分为000 000,某一时刻后,当乙队加分时,
则按下K7,这时K7=0(低电平),单片机AT89S51的P3.2脚为低电
平,使其外部中断INT0发生中断,从而调用中断服务程序,将要显
示的数据从程序中定义的LED显示常数表TAB中取出06H(因为
LED显示常数表TAB的偏移地址为33H,33H首先是指向LED显示
常数表TAB中第一个数据3FH的,当K7按下时,相当于将33H地
址加1,这时便指向第二数据06H)经串行口发送端P3.0送至串/并
转换器CD4094的输入端第2脚(数据输入DATA)。由于串行口的
工作方式设置为方式0。所以在串行数据通过RXD引脚输出时,则
TXD引脚会输出多位时钟作为移位脉冲。将8位数据顺利送到
CD4094中。另外在RXD引脚输出数据的同时,单片机P3.7脚输出
高电平给CD4094的第1脚STR(使能端控制),使前一片CD4094
中的8位数据从QS移位至下一片CD4094输入端的第2脚。在RXD
引脚输出数据过程中,连续使单片机P3.7脚输出6次高电平,这样
便使6片CD4094中得到不同的显示代码。然后使单片机P3.7脚输
出低电平,将6片CD4094中显示代码送LED显示器显示,便得到
显示为000 001。
因为,在程序中定义33H、34H、35H、36H、37H、38H,6个