VB和单片机串口通信实训报告
VB+单片机联合实训,制作弹球游戏
VB和单片机实训报告
实训项目:弹球游戏设计
班级:****
组长:*** 学号:* 组员:*** 学号:*
*** 学号:*
指导老师:***
年12月28日
2010
VB+单片机联合实训,制作弹球游戏
一、实训任务
设计一个一个弹球游戏,要求:能在电脑上和单片机上操作,单片机和电脑用串口连接。并且电脑上的操作和单片机上的操作不能有冲突,两种操作要同时可以运行,过程中不需要切换。
二、程序代码 1、VB程序代码
Dim x As Boolean Dim y As Boolean Dim k As Boolean Dim DengJ As Integer Dim G As Integer Dim N As Integer Dim M As Integer Dim time As Integer Dim key As Integer Dim Zhuank As Integer Dim score As Integer Dim p_status As Integer Dim i As Integer
Private Sub Command1_Click()
If Option1.Value = True Then Option2.Value = False And Option3.Value = False If Option2.Value = True Then Option1.Value = False And Option3.Value = False If Option3.Value = True Then Option1.Value = False And Option2.Value = False p_status = 1
Timer1.Interval = 100 Label2.Caption = 0 time = 0
Picture1.SetFocus '开始 Timer1.Enabled = True '小球移动 Timer2.Enabled = True '计时开始 p_life = 3 '显示生命数3条
VB+单片机联合实训,制作弹球游戏
gameover.Visible = False '隐藏游戏结束文本 Label6.Caption = 2 '生命值减一 k = True
Command3.Enabled = True DengJ = 0 End Sub '结束按钮
Private Sub Command2_Click() End End Sub
Private Sub Command3_Click()
If Command3.Caption = "暂停" Then p_status = 0
Timer1.Enabled = False
Timer2.Enabled = False '把定时器都关闭 Timer3.Enabled = False
Label8.Visible = True '游戏暂停文本 Command1.Enabled = False Command2.Enabled = False Command3.Caption = "继续" Else
p_status = 1
Picture1.SetFocus
Timer1.Enabled = True Timer2.Enabled = True Timer3.Enabled = True Label8.Visible = False
Command1.Enabled = True Command2.Enabled = True Command3.Caption = "暂停" End If End Sub
Private Sub Form_Load()
MSComm1.PortOpen = True
dangb.Left = 3120 '挡板位置初始化 Timer1.Interval = 100 Label8.Visible = False gameover.Visible = False Timer2.Enabled = False Label4.Caption = "" Label6.Caption = 3
Command1.Enabled = False
VB+单片机联合实训,制作弹球游戏
Command3.Enabled = False score = 0 time = 0 M = 0
shape1.Left = dangb.Left + dangb.Width / 2 - 200 '球位置初始化 shape1.Top = dangb.Top - shape1.Height p_status = 0 x = False y = False
For i = 0 To 30 '检查砖块 bk(i).Visible = True Next i
Timer4.Enabled = False Timer5.Enabled = False End Sub
Private Sub MSComm1_OnComm() ST = MSComm1.Input
If ST = "E" Then '游戏开始 If DengJ = 1 Then
Call Command1_Click End If End If
If ST = "F" Then '游戏暂停 If p_status = 1 Then p_status = 0
Timer1.Enabled = False
Timer2.Enabled = False '把定时器都关闭 Timer3.Enabled = False
Label8.Visible = True '游戏暂停文本 Command1.Enabled = False Command2.Enabled = False Command3.Caption = "继续" N = N + 1 End If
If N = 2 Then
Picture1.SetFocus
Timer1.Enabled = True Timer2.Enabled = True Timer3.Enabled = True Label8.Visible = False
Command1.Enabled = True Command2.Enabled = True
VB+单片机联合实训,制作弹球游戏
Command3.Caption = "暂停" N = 0
p_status = 1 End If End If
If ST = "G" Then End End If
If ST = 0 Then
Call Command1_Click End If
If ST = "A" Then '按下A左移 Timer4.Enabled = True Call Timer4_Timer End If
If ST = "C" Then '按下C右移 Timer5.Enabled = True Call Timer5_Timer End If
If ST = "H" Then M = M + 1 If ST = "I" Then M = M - 1
If M = 1 Then Option1.Value = True: Option3.Value = False: Option2.Value = False If M = 2 Then Option1.Value = False: Option2.Value = True: Option3.Value = False If M = 3 Then Option3.Value = True: Option2.Value = False: Option1.Value = False If M > 3 Then M = 3 If M < 0 Then M = 1 End Sub
Private Sub Option1_Click() Timer1.Interval = 150 Timer3.Interval = 75
Command1.Enabled = True DengJ = 1 End Sub
Private Sub Option2_Click() Timer1.Interval = 100 Timer3.Interval = 50
VB+单片机联合实训,制作弹球游戏
Command1.Enabled = True DengJ = 1 End Sub
Private Sub Option3_Click() Timer1.Interval = 50 Timer3.Interval = 25
Command1.Enabled = True DengJ = 1 End Sub
Private Sub Picture1_KeyDown(KeyCode As Integer, Shift As Integer) key = KeyCode If p_status = 1 Then Select Case KeyCode
Case 37 '如果按下左,使板子向左移动 If dangb.Left <= 0 Then dangb.Left = 0 Else
dangb.Left = dangb.Left - 300 End If
Case 39 '如果按下右,使板子向右移动 If dangb.Left >= 7935 - dangb.Width Then dangb.Left = 7935 - dangb.Width Else
dangb.Left = dangb.Left + 300 End If End Select End If
End Sub '鼠标控制
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
If p_status = 1 Then If x < 0 Then x = 0 End If
If x > 7935 Then x = 7935 End If
dangb.Left = x - dangb.Width / 2 End If End Sub
VB+单片机联合实训,制作弹球游戏
Private Sub Timer1_Timer() If p_status = 1 Then If x = False Then
shape1.Left = shape1.Left - 200 Else
shape1.Left = shape1.Left + 200 End If
If y = False Then
相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析




