教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 资格考试 >

VB和单片机串口通信实训报告

来源:网络收集 时间:2026-08-08
导读: VB+单片机联合实训,制作弹球游戏 VB和单片机实训报告 实训项目:弹球游戏设计 班级:**** 组长:*** 学号:* 组员:*** 学号:* *** 学号:* 指导老师:*** 年12月28日 2010 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

sh …… 此处隐藏:4076字,全部文档内容请下载后查看。喜欢就下载吧 ……

VB和单片机串口通信实训报告.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/105817.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)