当前位置: 首页 > news >正文

网站死链检测工具班级网页制作

网站死链检测工具,班级网页制作,p2p网贷网站建设方案,大连住房和建设局网站文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真51单片机控制器,使用8*8LED点阵、按键模块等。 主要功能: 系统运行后,可操作4个按键控制小蛇方向。 二、软件设计 /* 作者:嗨小易…

文章目录

  • 一、功能简介
  • 二、软件设计
  • 三、实验现象
  • 联系作者


一、功能简介

本项目使用Proteus8仿真51单片机控制器,使用8*8LED点阵、按键模块等。

主要功能:
系统运行后,可操作4个按键控制小蛇方向。


二、软件设计

/*
作者:嗨小易(QQ:3443792007)*/#include "PBDATA.H"/****************************************蛇体 和 食物 相关的数据 和 函数
*****************************************/
uchar bodyRow[16], bodyCol[16];  // 蛇身的数组uchar code dirRow[4] = {-1, 0, 1, 0};  // 上右下左方向X增量
uchar code dirCol[4] = {0, 1, 0, -1};  // 上右下左方向Y增量
extern uchar dir;
uchar maxRow = 8, maxCol = 8;  // 行的范围 [0, maxRow), 列范围同理
uchar speed = 5;  // 蛇的速度,单位是50ms
uchar snakeBodyLength = 0;  // 蛇身体的长度
uchar isDead = 0;  // 表示蛇是否死亡uchar foodRow = 0, foodCol = 0, needCreate = 1;  // 食物坐标和食物是否被吃标志void InitSnake()
{bodyRow[0] = 7;bodyCol[0] = 2;bodyRow[1] = 7;bodyCol[1] = 1;snakeBodyLength = 2;dir = 1;// 生成蛇打印的内容Matrix_GenerateTab(bodyRow, bodyCol, snakeBodyLength);// 设置时间种子srand(0);
}void GenerateFood()
{uchar i = 0;while(needCreate) {// 随机生成 Row 和 ColfoodRow = rand() % maxRow;foodCol = rand() % maxCol;// 判断食物是否和当前蛇身体冲突 for(i = 0; i < snakeBodyLength; i++) {if(bodyRow[i] == foodRow && bodyCol[i] == foodCol) {break;}}if(i == snakeBodyLength) {needCreate = 0;bodyRow[snakeBodyLength] = foodRow;bodyCol[snakeBodyLength] = foodCol;} }
}/****************************************定时器相关的代码
*****************************************/uchar count;  // time = count * 50msvoid InitTimer()
{TMOD = 0x01;// 初始值 : 50msTH0 = (65536 - 50000) / 256;  // 初始值取高八位TL0 = (65536 - 50000) % 256;  // 初始值取低八位// 中断开启ET0 = 1;  // 开启定时器0的中断EA = 1;   // 开启总的中断// 配置TCON// TR0 : 1, 启动定时器0TR0 = 1;    
}void TimerIsr() interrupt 1
{uchar nextHeadRow = 0, nextHeadCol = 0, i = 0;// 重新装填// 初始值 : 50msTH0 = (65536 - 50000) / 256;  // 初始值取高八位TL0 = (65536 - 50000) % 256;  // 初始值取低八位if(count == speed && !isDead) {  // count * 50ms 触发一次count = 0;// 生成食物GenerateFood();// 预测蛇头nextHeadRow = bodyRow[0] + dirRow[dir];nextHeadCol = bodyCol[0] + dirCol[dir];if(nextHeadRow >= maxRow || nextHeadRow < 0 || nextHeadCol >= maxCol || nextHeadCol < 0) {isDead = 1;return;}// 身体撞击for(i = 0; i < snakeBodyLength; i++) {if(nextHeadRow == bodyRow[i] && nextHeadCol == bodyCol[i]) {isDead = 1;return;}}// 吃到食物与否if(nextHeadRow == foodRow && nextHeadCol == foodCol) {snakeBodyLength += 1;needCreate = 1;// 再生成新的食物GenerateFood();}// 蛇身体移动for(i = snakeBodyLength - 1; i > 0; i--) {bodyRow[i] = bodyRow[i - 1];bodyCol[i] = bodyCol[i - 1];}// 新的蛇头bodyRow[0] = nextHeadRow;bodyCol[0] = nextHeadCol;// 生成需要显示的图形Matrix_GenerateTab(bodyRow, bodyCol, snakeBodyLength + 1);}count++;	// 每50ms进行一次按键扫描DirKeyScan();
}void main()
{uchar i = 0, a = 0;count = speed;InitSnake();InitTimer();while(1){if(isDead) {Matrix_ShowAll();} else {// 打印蛇的身体Matrix_ShowPointByCode();		}}
}

三、实验现象

B站演示视频:https://space.bilibili.com/444388619

在这里插入图片描述

联系作者

视频地址:https://space.bilibili.com/444388619/video
专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。

http://www.yayakq.cn/news/45513/

相关文章:

  • 深圳app网站开发千锋教育的it培训怎么样
  • 电子商务公司网站建立前期准备王野天师
  • 手机自适应网站源码play商店
  • 阿里云域名空间网站建设网页制作网站首页
  • 汕头网站建设公司哪个好wordpress访问网站很慢
  • 网站介绍模板哈尔滨公司网站开发
  • 汾阳做网站的公司lamp 网站建设论文
  • 个人做考试类网站一重大连工程建设有限公司官方网站
  • 学做网站从前端到后端杭州网站推广怎样做
  • 运营网站要多少费用彩票网站开发合法吗
  • 只有一个域名怎么建设网站WordPress臃肿主题
  • app网站设计制作学校网站建设方案书
  • 焦溪翠冠梨做的网站网页游戏交易平台官网
  • 建立网站培训讲义wordpress网站地图自动更新
  • 大连做网站价钱网站建设服务器和空间费
  • 杭州仪器网站制作企业资源计划系统
  • 如何制作一个自己的网站?php是专门做网站的
  • 常州外贸网站制作经典重庆网首页
  • 金昌网站seo用WordPress做一个落地页
  • 网站建设制作模板网站怎么做西宁制作网站需要多少钱
  • 基于拍卖的拍卖网站开发邯郸网站设计联系电话
  • 旅游网站自己怎么做iis下建立asp网站
  • 站长工具怎么用wordpress主题切换不了
  • 成都做公司网站推广有字体设计网站
  • 做dnf辅助网站企业宣传
  • 网页教程网站永嘉哪里有做网站
  • 国内好的企业网站网站建设时送的ppt方案
  • 重庆网站推广运营公司网站站点建设
  • php网站建设惠州网站建设 英语
  • 网站关键词优化互点辽宁建设考试培训网站