⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 experiment.h

📁 综合实验源代码-汉诺塔
💻 H
字号:
/*
 *汉诺塔实验程序
 *Experiment.h
 */
#ifndef __EXPERIMENT__H__
#define __EXPERIMENT__H__

#include"..\ucos-ii\includes.h"          
#include "..\ucos-ii\add\osaddition.h"
#include"..\inc\osfile.h"
#include"..\inc\drv\rtc.h"
#include "..\inc\drv.h"
#include <string.h>
#include "..\ucos-ii\add\list.h"
#include "..\inc\drv\figure.h"
#include "..\inc\drv\display.h"
#include "..\inc\maro.h"
#include "..\template.h"

//__________________________________________________________________
//______________________________________________________Frame_HoriLine 1      |            <--液晶屏
// |              |                  |               |                        |
// |Frame_VerLine1|Inside_VL1        | Inside_VL2    |                        |     
// |______________|_________________ |_______________| Frame_VertLine2        |  
// |              |                  |               |                        | 
// |              |                  |               |                        | 
// |              |                  |               |                        |
// |______________|__________________|_______________|___Frame_HoriLine 2     | 
//                                                                            |                                         |
//____________________________________________________________________________|
//点的位置
//边框
#define FRAME_HORI1_STARTx                                        0
#define FRAME_HORI1_STARTy                                        0
#define FRAME_HORI1_ENDx                                          320
#define FRAME_HORI1_ENDy                                          FRAME_HORI1_STARTy
#define FRAME_HORI2_STARTx                                        0
#define FRAME_HORI2_STARTy                                        240
#define FRAME_HORI2_ENDx                                          320
#define FRAME_HORI2_ENDy                                          FRAME_HORI2_STARTy

#define INSIDE_HORI1_STARTx                                       0
#define INSIDE_HORI1_STARTy                                       (100+FRAME_HORI1_STARTy)
#define INSIDE_HORI1_ENDx                                         FRAME_HORI1_ENDx
#define INSIDE_HORI1_ENDy                                         INSIDE_HORI1_STARTy

//三根柱子
#define INSIDE_VERT1_STARTx                                        (60+FRAME_HORI1_STARTx)
#define INSIDE_VERT1_STARTy                                        120
#define INSIDE_VERT1_ENDx                                          INSIDE_VERT1_STARTx 
#define INSIDE_VERT1_ENDy                                          (FRAME_HORI2_STARTy-4)
#define INSIDE_VERT2_STARTx                                        (100+INSIDE_VERT1_STARTx)
#define INSIDE_VERT2_STARTy                                        INSIDE_VERT1_STARTy
#define INSIDE_VERT2_ENDx                                          INSIDE_VERT2_STARTx
#define INSIDE_VERT2_ENDy                                          INSIDE_VERT1_ENDy
#define INSIDE_VERT3_STARTx                                        (100+INSIDE_VERT2_STARTx)
#define INSIDE_VERT3_STARTy                                        INSIDE_VERT1_STARTy
#define INSIDE_VERT3_ENDx                                          INSIDE_VERT3_STARTx
#define INSIDE_VERT3_ENDy                                          INSIDE_VERT1_ENDy

///////////以下为界面上部的四个字符串的坐标点///////////
#define TEXT1_STARTx                                                      150
#define TEXT1_STARTy                                                      15
#define TEXT2_STARTx                                                      TEXT1_STARTx
#define TEXT2_STARTy                                                      55
#define TEXT3_STARTx                                                      (TEXT1_STARTx+80)
#define TEXT3_STARTy                                                      TEXT1_STARTy
#define TEXT4_STARTx                                                      TEXT3_STARTx
#define TEXT4_STARTy                                                      TEXT2_STARTy

////////////以下为界面上部的框架点///////////
#define RIGHT_HORI1_STARTx                                               0
#define RIGHT_HORI1_STARTy                                               50
#define RIGHT_HORI1_ENDx                                                 320
#define RIGHT_HORI1_ENDy                                                 RIGHT_HORI1_STARTy

// ID 定义
#define ID_GAME_MENU                                             200 
#define ID_TEXTCtrl1                                             201
#define ID_TEXTCtrl2                                             202
#define ID_TEXTCtrl3                                             203
#define ID_TEXTCtrl4                                             204

#define Menu_GameStart                                         0
#define Menu_GameSet                                           1

#define MAX_LEVEL												6

void InitInterface();

void InitCtrl();

void InitFrameDown();

void InitFrameUp();

void InitText();

void onMenuSelChange(u32 CtrlID, int CurrentSel);

void onKey(int nkey, int fnkey );

void SelectOK(PListCtrl2 plc);

void init();

void show();

void hanoii();

void hanoi(U8* a,U8* b,U8* c,U8 h);

void move(U8* x,U8* y);

void setHeight(U8 h);

void showCount();

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -