智能中国象棋棋盘的开发

智能中国象棋棋盘的开发

ID:3925630

大小:219.18 KB

页数:4页

时间:2017-11-25

智能中国象棋棋盘的开发_第1页
智能中国象棋棋盘的开发_第2页
智能中国象棋棋盘的开发_第3页
智能中国象棋棋盘的开发_第4页
资源描述:

《智能中国象棋棋盘的开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第1期(第12卷)中国计量学院学报№.1(Vol.12)2001年6月JOURNALOFCHINAINSTITUTEOFMETROLOGYJun.2001【文章编号】100421540(2001)0120090204智能中国象棋棋盘的开发高志华,沈小丽(中国计量学院机电工程学院,浙江杭州310032)【摘要】文章介绍一种基于单片机89C52的智能型中国象棋棋盘,该棋盘具有自动计时、自动计着子数、自动判超时、自动判误着等功能L简述了其硬件和软件设计的基本思想L【关键词】单片机89C52;中国象棋棋盘;数

2、据编码【中图分类号】TP399;G891.2【文献标识码】A中国象棋有很多爱好者,有很多的各种中国象棋的比赛L在各种中国象棋的比赛中都需要进行人工(由棋手或别人)计时、计着子数,甚为不便L本文介绍的是一种用单片机89C52实现的智能型中国象棋棋盘,该棋盘具有自动计时、自动计着子数、自动判超时、自动判误着等功能L这种智能型中国象棋棋盘目前国内无先例L1基本原理概述中国象棋棋子是置于棋盘交叉点的固定位置的,双方轮流各走一着子,直至某方的将(或帅)被将吃L棋子“车”、“马”、“炮”等各有各的行棋规则L比赛时

3、,双方轮流计时(思考方计时),并在一定的时间内各方须下完规定的着子数L由于中国象棋棋子是置于棋盘交叉点固定位置的,本文介绍的中国象棋棋盘,在各交叉点下设计了一个光电接受管,检测各相关的点上有无棋子,行棋前对各方的棋子进行编码分类(包括棋子的种类码和位置码),行棋时一直跟踪各个棋子的种类码和位置码,并不断修改它们的位置码,直至棋局结束L行棋时,由于是各方轮流走一子,通过各移动棋子的编码,可知是哪一方的何类棋子在移动L不同的棋子可由不同的程序进行判断其是否行棋有违规现象等L一方棋子行棋移动定位后,即可由计

4、时程序自动启动另一方开始计时,直至某方的规定时间用完即判超时负;或一方的将(或帅)被吃;或一方按下停止键认输,即棋局结束L在比赛开始前须设定各方的行棋规定用时,也可设定各方的规定时间着子数,超过规定时间未走完着子数的一方即判负L这样就不需要棋手每走一子,人工去按一下时钟(计时器),也不需有第三人去进行计着子数的工作了,可实现全自动的功能L2硬件结构简介硬件结构如图1所示L中国象棋棋盘有10×9=90个交叉点,用四片8255进行检测(一片8255有24个输入点可检测,四片8255可检测96个点),双方的

5、计时时钟和计着子数的显示以及键盘输入由键盘显示专用芯片8279完成L单片机选用89C52,该单片机具有8K内部可电改写的程【收稿日期】2001202216【作者简介】高志华(1956—),男(汉族),浙江杭州人,高级工程师L92中国计量学院学报2001年[1]序存储器、256字节内部RAM、32根可编程输入输出口等功能L其中89C52的P0口作为低8位地址线和8位数据线,P0.0和P0.1分别接四片8255的A0、A1脚和8279的A0脚;89C52的P2口输出的P2.4、P2.5、P2.6、P2.7

6、分别作为四片8255的选通信号,四片8255的PA口地址分别是7F00H、BF00H、DF00H、EF00H,PB口的地址分别是7F01H、BF01H、DF01H、EF01H,PC口地址分别是7F02H、BF02H、DF02H、EF02H;8279的选通信号接89C52的P2.2脚,8279的中断请求信[2-3]号接89C52的INT1脚L时钟电路如图1所示,晶振32768HZ经4060构成的分频电路分频组成一个四分之一秒的时钟基准电路L基准时钟信号输入到单片机89C52的中断口INT0,供单片机作计

7、时标准时钟用L四次INT0中断,秒计时加1,同时刷新时钟显示缓存区并调用显示子程序L由于中国象棋棋盘有90个着子点要检测,考虑到成本问题,设计使用了最简单的光电接收电路,将每个着子点的检测状态输入到8255的IöO口上,供[4]图1硬件结构电路图单片机89C52巡检判断L在棋盘旁边设计了双方计时显示器5位(一位时、两位分、两位秒),和双方的计着子数显示各两位L这样可显示的计时时间每方最大为近两小时,最大计着子数为每方99着L在棋盘旁边设计了16个按键,分别用于数字0~9,和设置键、开始键、停止键等功能

8、键L3软件设计主程序(图2)主要完成初始化设置,以及棋盘各类棋子的编码设置L开始按键按下后,由主程序不断检测8255所得到的棋盘各位置的变化值,根据不同的棋子的变化,转去执行相应的棋子走子或吃子等处理程序L由于下棋者有不同的行棋动作习惯,本智能棋盘设有如下行棋规则:3红先黑后;3棋子落定后,不得悔棋;3吃棋拿棋后,不得悔棋;3吃棋时,应先拿起己方棋子,后拿起被吃棋子,再将己方棋子放在被吃棋子的位置上L如“车”吃“马”,应先拿起自己的“车”,然后去拿起对方

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。