资源简介
本项目通过综合使用三轴加速度传感器、数码管、蜂鸣器、导航键、按键、振动传感器等元件,基于上位机与下位机之间的通信和数据交互,利用下位机完成对上位机游戏——贪吃蛇的多种方式控制。
代码片段和文件信息
/**********************
mysnake
************************/
#include
#include
#include
#include
#define DataPort P0 //LCD1602数据端口
#define uchar unsigned char
#define uint unsigned int
/*------------------*/
#define cstFocs 11059200L //
#define cstBaud1 9600 //波特率
#define cstKeyMaxNum 100
/*用来初始化A/D转化相关寄存器的数据****/
/* Define to prevent recursive inclusion -------------------------------------*/
#define P1_7_ADC 0x80
#define ADC_POWER 0X80
#define ADC_FLAGE 0X10
#define ADC_START 0X08
#define ADC_SPEEDLL 0X00
#define ADC_SPEEDL 0X20
#define ADC_SPEEDH 0X40
#define ADC_SPEEDHH 0X60
#define ADC_CHANNEL 0X07
#define SlaveAddress 0xA6 //定义器件在IIC总线中的从地址根据ALT ADDRESS地址引脚不同修改
//ALT ADDRESS引脚接地时地址为0xA6,接电源时地址为0x3A
typedef unsigned char BYTE;
typedef unsigned short WORD;
/*---------变量---------*/
uchar ucT100usTimes;
sbit sbtKey1 = P3 ^ 2 ; //减速
sbit sbtKey2 = P3 ^ 3 ; //加速
sbit sbtVib = P2 ^ 4; //振动暂停
sbit sbtBeep = P3 ^ 4; //蜂鸣器
/*收发显示数据相关*/
uchar modeld;
uchar models;
uchar ucDateDigState;
uchar ucT100usTimes;
uchar devid;
uchar time_3=0;
sbit SCL=P2^5;//P1^0; //IIC时钟引脚定义
sbit SDA=P2^6;//P1^1; //IIC数据引脚定义
uint uiKeyCnt; //导航键计数
uint uiKey1Cnt; //K1计数
uint uiKey2Cnt; //K2计数
uint uiKeyAllCnt; //总计数
bit btT1msFlag; //1ms
bit btKey1Current;/*key1当前的状态*/
bit btKey1Past; /*key1前一个状态*/
bit btKey2Current;/*key2当前的状态*/
bit btKey2Past; /*key2前一个状态*/
bit btKeyCurrent;/*key当前的状态*/
bit btKeyPast; /*key前一个状态*/
uchar flag1=0; //倒数标志
uchar flag2=0; //倒数标志
bit btUart1SendBusy = 0 ;
uchar ucDateTmp; //暂存数据
sbit sbtLedSel = P2 ^ 3;
uchar State=0; //记录当前状态
uint speed=8;//记录速度
uchar dir=0; //记录方向
uchar intSelect[] = {0x3f 0x06 0x5b 0x4f 0x66 0x6d 0x7d 0x07 0x7f 0x6f 0x77 0x7c 0x39 0x5e 0x79 0x71}; //显示0-f
uchar bitselect[]= {0x6d0x730x790x790x3f0x000x40}; //显示各位
uchar dirction[]= {0x060x080x300x01}; //方向显示
uchar hold[]= {0x740x5c0x300x5e0x800x800x800x80}; //hold
uchar choose[]= {0x390x760x3f0x3f0x6d0x790x800x80}; //choose
/*----------------三轴加速相关函数-----------------------*/
BYTE BUF[8];//接收数据缓存区
char ge_yge_xshi_yshi_xbai_ybai_x;//显示变量uchar
int dis_data;//数据显示变量
char flag=0;//表示正在执行
double x_angle=0y_angle=0z_angle=0angle=0sum_y=0sum_x=0;//角度变量
int avg_x=0avg_y=0fla=0;//加速度变量
uint offx=0offy=0;//校准清零
void Delay_s(unsigned int k);//延迟函数
void Init_ADXL345(void);//初始化ADXL345
void conversion(int temp_data_xint temp_data_y);//转换出显示需要的数据
void Single_Write_ADXL345(uchar REG_Addressuchar REG_data); //单个写入数据
uchar Single_Read_ADXL345(uchar REG_Address); //单个读取内部寄存器数据
void Multiple_Read_ADXL345(); //连续的读取内部寄存器数据
//------
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 322025 2019-09-03 10:37 STC(含下位机通信和上位机贪吃蛇)\MySnake.zip
目录 0 2019-09-20 08:19 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\
文件 9064 2019-07-02 09:27 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\STC15F2K60S2.H
文件 39390 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart
文件 22652 2019-09-05 08:39 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.c
文件 16855 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.hex
文件 25 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.lnp
文件 42245 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.LST
文件 48676 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.M51
文件 44971 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.OBJ
文件 178 2019-09-05 09:18 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.plg
文件 134197 2019-09-05 09:23 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.uvgui.Fores
文件 134223 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.uvgui_Fores.bak
文件 6776 2019-09-05 09:23 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.uvopt
文件 13556 2019-08-30 16:09 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart.uvproj
文件 6776 2019-09-04 19:53 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart_uvopt.bak
文件 13556 2019-07-10 10:37 STC(含下位机通信和上位机贪吃蛇)\uart3.0(下位机)\uart_uvproj.bak
- 上一篇:linux Qt局域网聊天
- 下一篇:ob
jective-c的计算器
相关资源
- PID方式PWM输出温度控制stc12c5a+ds18b20
- keil程序stc89c52/51rc读取rfid rc522射频卡
- 亲测正确版-win32汇编贪吃蛇源码-win
- ModbusTCP 客户端
- 汇编语言编写的贪吃蛇
- LCD12864实现贪吃蛇游戏
- BEACONSTC8G1K08.zip
- 汇编Windows32位贪吃蛇游戏
-
iOS贪吃蛇代码ob
jective-C - stc 51单片机实现的交通灯包括keil程序
- 贪吃蛇安卓源文件
- ImageList加载BMP在ListCtrl中显示的Demo
- STC89c52驱动
- 单片机STC89C58程序
- Linux 下gtk+2.0的贪吃蛇帮助文档及其源
- keil 4 STC元件库 STC.CDB
- 功能强大的ClistCtrl类 更改单元格的颜
- STC12C5A60S2LQFP44封装完整的原理图以及
- 电动牙刷开发例程stc15系列单片机
- STC15系列驱动LCD_12864
- stc15系列读GY_25角度
- STC15系列读DS18B20程序,12Mhz时钟晶振
- 51单片机贪吃蛇游戏程序
- SIm900A短信控制
- STM32开发板设计贪吃蛇游戏
- altium designer STC_单片机原理图库
- STC89C52RC使用电位器控制WS2812B调光
- ModbusTCP_Slave程序
- 基于51单片机LCDLM041L显示贪吃蛇小游戏
-
Flash Actionsc
ript 3.0 贪吃蛇制作
评论
共有 条评论