51单片机俄罗斯方块开机动画
/**************************************************************************************************************
* 名称:Game_Star
* 功能:开机动画
* 参数:NULL
* 返回:NULL
**************************************************************************************************************/
void Game_Star(void)
{
if(str)
{
switch(Tmic)
{
case 0: if(flag_s == 0){led[15] = 0x01; led[0] = 0x80; flag_s++;} break;
case 10: if(flag_s == 1){led[15] = 0x03; led[0] = 0xc0; flag_s++;} break;
case 20: if(flag_s == 2){led[15] = 0x07; led[0] = 0x70; flag_s++;} break;
case 30: if(flag_s == 3){led[15] = 0x0f; led[0] = 0xf0; flag_s++;} break;
case 40: if(flag_s == 4){led[15] = 0x1f; led[0] = 0xf8; flag_s++;} break;
case 50: if(flag_s == 5){led[15] = 0x3f; led[0] = 0xfc; flag_s++;} break;
case 60: if(flag_s == 6){led[15] = 0x7f; led[0] = 0xfe; flag_s++;} break;
case 70: if(flag_s == 7){led[15] = 0xff; led[0] = 0xff; flag_s++;} break;
case 80: if(flag_s == 8){led[14] = 0x01; led[1] = 0x80; flag_s++;} break;
case 90: if(flag_s == 9){led[14] = 0x03; led[1] = 0xc0; flag_s++;} break;
case 100: if(flag_s == 10){led[14] = 0x07; led[1] = 0x70; flag_s++;} break;
case 110: if(flag_s == 11){led[14] = 0x0f; led[1] = 0xf0; flag_s++;} break;
case 120: if(flag_s == 12){led[14] = 0x1f; led[1] = 0xf8; flag_s++;} break;
case 130: if(flag_s == 13){led[14] = 0x3f; led[1] = 0xfc; flag_s++;} break;
case 140: if(flag_s == 14){led[14] = 0x7f; led[1] = 0xfe; flag_s++;} break;
case 150: if(flag_s == 15){led[14] = 0xff; led[1] = 0xff; flag_s++;} break;
case 160: if(flag_s == 16){led[13] = 0x01; led[2] = 0x80; flag_s++;} break;
case 170: if(flag_s == 17){led[13] = 0x03; led[2] = 0xc0; flag_s++;} break;
case 180: if(flag_s == 18){led[13] = 0x07; led[2] = 0x70; flag_s++;} break;
case 190: if(flag_s == 19){led[13] = 0x0f; led[2] = 0xf0; flag_s++;} break;
case 200: if(flag_s == 20){led[13] = 0x1f; led[2] = 0xf8; flag_s++;} break;
case 210: if(flag_s == 21){led[13] = 0x3f; led[2] = 0xfc; flag_s++;} break;
case 220: if(flag_s == 22){led[13] = 0x7f; led[2] = 0xfe; flag_s++;} break;
case 230: if(flag_s == 23){led[13] = 0xff; led[2] = 0xff; flag_s++;} break;
case 240: if(flag_s == 24){led[12] = 0x01; led[3] = 0x80; flag_s++;} break;
case 250: if(flag_s == 25){led[12] = 0x03; led[3] = 0xc0; flag_s++;} break;
case 260: if(flag_s == 26){led[12] = 0x07; led[3] = 0x70; flag_s++;} break;
case 270: if(flag_s == 27){led[12] = 0x0f; led[3] = 0xf0; flag_s++;} break;
case 280: if(flag_s == 28){led[12] = 0x1f; led[3] = 0xf8; flag_s++;} break;
case 290: if(flag_s == 29){led[12] = 0x3f; led[3] = 0xfc; flag_s++;} break;
case 300: if(flag_s == 30){led[12] = 0x7f; led[3] = 0xfe; flag_s++;} break;
case 310: if(flag_s == 31){led[12] = 0xff; led[3] = 0xff; flag_s++;} break;
case 320: if(flag_s == 32){led[11] = 0x01; led[4] = 0x80; flag_s++;} break;
case 330: if(flag_s == 33){led[11] = 0x03; led[4] = 0xc0; flag_s++;} break;
case 340: if(flag_s == 34){led[11] = 0x07; led[4] = 0x70; flag_s++;} break;
case 350: if(flag_s == 35){led[11] = 0x0f; led[4] = 0xf0; flag_s++;} break;
case 360: if(flag_s == 36){led[11] = 0x1f; led[4] = 0xf8; flag_s++;} break;
case 370: if(flag_s == 37){led[11] = 0x3f; led[4] = 0xfc; flag_s++;} break;
case 380: if(flag_s == 38){led[11] = 0x7f; led[4] = 0xfe; flag_s++;} break;
case 390: if(flag_s == 39){led[11] = 0xff; led[4] = 0xff; flag_s++;} break;
case 400: if(flag_s == 40){led[10] = 0x01; led[5] = 0x80; flag_s++;} break;
case 410: if(flag_s == 41){led[10] = 0x03; led[5] = 0xc0; flag_s++;} break;
case 420: if(flag_s == 42){led[10] = 0x07; led[5] = 0x70; flag_s++;} break;
case 430: if(flag_s == 43){led[10] = 0x0f; led[5] = 0xf0; flag_s++;} break;
case 440: if(flag_s == 44){led[10] = 0x1f; led[5] = 0xf8; flag_s++;} break;
case 450: if(flag_s == 45){led[10] = 0x3f; led[5] = 0xfc; flag_s++;} break;
case 460: if(flag_s == 46){led[10] = 0x7f; led[5] = 0xfe; flag_s++;} break;
case 470: if(flag_s == 47){led[10] = 0xff; led[5] = 0xff; flag_s++;} break;
case 480: if(flag_s == 48){led[9] = 0x01; led[6] = 0x80; flag_s++;} break;
case 490: if(flag_s == 49){led[9] = 0x03; led[6] = 0xc0; flag_s++;} break;
case 500: if(flag_s == 50){led[9] = 0x07; led[6] = 0x70; flag_s++;} break;
case 510: if(flag_s == 51){led[9] = 0x0f; led[6] = 0xf0; flag_s++;} break;
case 520: if(flag_s == 52){led[9] = 0x1f; led[6] = 0xf8; flag_s++;} break;
case 530: if(flag_s == 53){led[9] = 0x3f; led[6] = 0xfc; flag_s++;} break;
case 540: if(flag_s == 54){led[9] = 0x7f; led[6] = 0xfe; flag_s++;} break;
case 550: if(flag_s == 55){led[9] = 0xff; led[6] = 0xff; flag_s++;} break;
case 560: if(flag_s == 56){led[8] = 0x01; led[7] = 0x80; flag_s++;} break;
case 570: if(flag_s == 57){led[8] = 0x03; led[7] = 0xc0; flag_s++;} break;
case 580: if(flag_s == 58){led[8] = 0x07; led[7] = 0x70; flag_s++;} break;
case 590: if(flag_s == 59){led[8] = 0x0f; led[7] = 0xf0; flag_s++;} break;
case 600: if(flag_s == 60){led[8] = 0x1f; led[7] = 0xf8; flag_s++;} break;
case 610: if(flag_s == 61){led[8] = 0x3f; led[7] = 0xfc; flag_s++;} break;
case 620: if(flag_s == 62){led[8] = 0x7f; led[7] = 0xfe; flag_s++;} break;
case 630: if(flag_s == 63){led[8] = 0xff; led[7] = 0xff; flag_s++;} break;
case 690: if(flag_s == 64){led[15] = 0x7f; led[0] = 0xfe; flag_s++;} break;
case 700: if(flag_s == 65){led[15] = 0x3f; led[0] = 0xfc; flag_s++;} break;
case 710: if(flag_s == 66){led[15] = 0x1f; led[0] = 0xf8; flag_s++;} break;
case 720: if(flag_s == 67){led[15] = 0x0f; led[0] = 0xf0; flag_s++;} break;
case 730: if(flag_s == 68){led[15] = 0x07; led[0] = 0xe0; flag_s++;} break;
case 740: if(flag_s == 69){led[15] = 0x03; led[0] = 0xc0; flag_s++;} break;
case 750: if(flag_s == 70){led[15] = 0x01; led[0] = 0x80; flag_s++;} break;
case 760: if(flag_s == 71){led[15] = 0x00; led[0] = 0x00; flag_s++;} break;
case 770: if(flag_s == 72){led[14] = 0x7f; led[1] = 0xfe; flag_s++;} break;
case 780: if(flag_s == 73){led[14] = 0x3f; led[1] = 0xfc; flag_s++;} break;
case 790: if(flag_s == 74){led[14] = 0x1f; led[1] = 0xf8; flag_s++;} break;
case 800: if(flag_s == 75){led[14] = 0x0f; led[1] = 0xf0; flag_s++;} break;
case 810: if(flag_s == 76){led[14] = 0x07; led[1] = 0xe0; flag_s++;} break;
case 820: if(flag_s == 77){led[14] = 0x03; led[1] = 0xc0; flag_s++;} break;
case 830: if(flag_s == 78){led[14] = 0x01; led[1] = 0x80; flag_s++;} break;
case 840: if(flag_s == 79){led[14] = 0x00; led[1] = 0x00; flag_s++;} break;
case 850: if(flag_s == 80){led[13] = 0x7f; led[2] = 0xfe; flag_s++;} break;
case 860: if(flag_s == 81){led[13] = 0x3f; led[2] = 0xfc; flag_s++;} break;
case 870: if(flag_s == 82){led[13] = 0x1f; led[2] = 0xf8; flag_s++;} break;
case 880: if(flag_s == 83){led[13] = 0x0f; led[2] = 0xf0; flag_s++;} break;
case 890: if(flag_s == 84){led[13] = 0x07; led[2] = 0xe0; flag_s++;} break;
case 900: if(flag_s == 85){led[13] = 0x03; led[2] = 0xc0; flag_s++;} break;
case 910: if(flag_s == 86){led[13] = 0x01; led[2] = 0x80; flag_s++;} break;
case 920: if(flag_s == 87){led[13] = 0x00; led[2] = 0x00; flag_s++;} break;
case 930: if(flag_s == 88){led[12] = 0x7f; led[3] = 0xfe; flag_s++;} break;
case 940: if(flag_s == 89){led[12] = 0x3f; led[3] = 0xfc; flag_s++;} break;
case 950: if(flag_s == 90){led[12] = 0x1f; led[3] = 0xf8; flag_s++;} break;
case 960: if(flag_s == 91){led[12] = 0x0f; led[3] = 0xf0; flag_s++;} break;
case 970: if(flag_s == 92){led[12] = 0x07; led[3] = 0xe0; flag_s++;} break;
case 980: if(flag_s == 93){led[12] = 0x03; led[3] = 0xc0; flag_s++;} break;
case 990: if(flag_s == 94){led[12] = 0x01; led[3] = 0x80; flag_s++;} break;
case 1000: if(flag_s == 95){led[12] = 0x00; led[3] = 0x00; flag_s++;} break;
case 1010: if(flag_s == 96){led[11] = 0x7f; led[4] = 0xfe; flag_s++;} break;
case 1020: if(flag_s == 97){led[11] = 0x3f; led[4] = 0xfc; flag_s++;} break;
case 1030: if(flag_s == 98){led[11] = 0x1f; led[4] = 0xf8; flag_s++;} break;
case 1040: if(flag_s == 99){led[11] = 0x0f; led[4] = 0xf0; flag_s++;} break;
case 1050: if(flag_s == 100){led[11] = 0x07; led[4] = 0xe0; flag_s++;} break;
case 1060: if(flag_s == 101){led[11] = 0x03; led[4] = 0xc0; flag_s++;} break;
case 1070: if(flag_s == 102){led[11] = 0x01; led[4] = 0x80; flag_s++;} break;
case 1080: if(flag_s == 103){led[11] = 0x00; led[4] = 0x00; flag_s++;} break;
case 1090: if(flag_s == 104){led[10] = 0x7f; led[5] = 0xfe; flag_s++;} break;
case 1100: if(flag_s == 105){led[10] = 0x3f; led[5] = 0xfc; flag_s++;} break;
case 1110: if(flag_s == 106){led[10] = 0x1f; led[5] = 0xf8; flag_s++;} break;
case 1120: if(flag_s == 107){led[10] = 0x0f; led[5] = 0xf0; flag_s++;} break;
case 1130: if(flag_s == 108){led[10] = 0x07; led[5] = 0xe0; flag_s++;} break;
case 1140: if(flag_s == 109){led[10] = 0x03; led[5] = 0xc0; flag_s++;} break;
case 1150: if(flag_s == 110){led[10] = 0x01; led[5] = 0x80; flag_s++;} break;
case 1160: if(flag_s == 111){led[10] = 0x00; led[5] = 0x00; flag_s++;} break;
case 1170: if(flag_s == 112){led[9] = 0x7f; led[6] = 0xfe; flag_s++;} break;
case 1180: if(flag_s == 113){led[9] = 0x3f; led[6] = 0xfc; flag_s++;} break;
case 1190: if(flag_s == 114){led[9] = 0x1f; led[6] = 0xf8; flag_s++;} break;
case 1200: if(flag_s == 115){led[9] = 0x0f; led[6] = 0xf0; flag_s++;} break;
case 1210: if(flag_s == 116){led[9] = 0x07; led[6] = 0xe0; flag_s++;} break;
case 1220: if(flag_s == 117){led[9] = 0x03; led[6] = 0xc0; flag_s++;} break;
case 1230: if(flag_s == 118){led[9] = 0x01; led[6] = 0x80; flag_s++;} break;
case 1240: if(flag_s == 119){led[9] = 0x00; led[6] = 0x00; flag_s++;} break;
case 1250: if(flag_s == 120){led[8] = 0x7f; led[7] = 0xfe; flag_s++;} break;
case 1260: if(flag_s == 121){led[8] = 0x3f; led[7] = 0xfc; flag_s++;} break;
case 1270: if(flag_s == 122){led[8] = 0x1f; led[7] = 0xf8; flag_s++;} break;
case 1280: if(flag_s == 123){led[8] = 0x0f; led[7] = 0xf0; flag_s++;} break;
case 1290: if(flag_s == 124){led[8] = 0x07; led[7] = 0xe0; flag_s++;} break;
case 1300: if(flag_s == 125){led[8] = 0x03; led[7] = 0xc0; flag_s++;} break;
case 1310: if(flag_s == 126){led[8] = 0x01; led[7] = 0x80; flag_s++;} break;
case 1320: if(flag_s == 127){led[8] = 0x00; led[7] = 0x00;
str = 0; flag_s = 0;} break;
}
}
else return;
}
相关文章:
51单片机俄罗斯方块开机动画
/************************************************************************************************************** * 名称:Game_Star * 功能:开机动画 * 参数:NULL * 返回:NULL ******************************************…...
RK3588开发板部署DeepSeek-R1-Distill-Qwen-1.5B的步骤及问题
目录 引言 为什么要做端侧部署 技术发展层面 应用需求层面 开发与成本层面 产业发展层面 模型选择 模型蒸馏 模型转换 量化选择 量化方式 模型大小 计算效率 模型精度 测试 测试程序编译 测试结果 结语 引言 最近DeepSeek已经成为一个非常热门的话题&#x…...
网络安全 | 安全信息与事件管理(SIEM)系统的选型与实施
网络安全 | 安全信息与事件管理(SIEM)系统的选型与实施 一、前言二、SIEM 系统的功能概述2.1 数据收集与整合2.2 实时监控与威胁检测2.3 事件响应与自动化2.4 合规性管理 三、SIEM 系统选型的关键因素3.1 功能需求评估3.2 可扩展性与性能3.3 易用性与可维…...
DeepSeek接口联调(postman版)
第一步:获取API key 获取APIkeys链接https://platform.deepseek.com/api_keys 点击创建 API key 即可免费生成一个key值,别忘记保存。 第二步:找到deepseek官方接口文档 文档地址:https://api-docs.deepseek.com/zh-cn/ 第三步…...
RadASM环境,win32汇编入门教程之三
;运行效果 ;win32汇编环境,RadAsm入门教程之三 ;在这个教程里,我们学一下如何增加控件,比如按钮,其它的控件类似这样增加 ;以下的代码就是在教程一的窗口模版里增加一个按钮控件,可以比较一下,增加了什么内…...
oracle多次密码错误登录,用户锁住或失效
多次输入错误账号查询状态: select username,account_status from dba_users; TEST EXPIRED(GRACE) 密码错误延迟登录,延迟登录还能登录 或者 TEST LOCKED(TIMED) 密码错误锁 TEST EXPIRED(GR…...
HCIA-Datacom笔记3:网络工程
网络工程 网络工程 在信息系统工程方法和完善的组织机构指导下,根据网络应用的需求,按照计算机网络系统的标准、规范和技术,规划设计可行性方案,将计算机网络硬件设备、软件和技术系统地集成在一起,以成为满足用户需…...
[NGINX]命令行参数
-? | -h 打印帮助信息 -c file 指定配置文件 -e file 指定错误日志文件 (1.19.5)。特殊值stderr选择标准错误输出。 -g directives 设置全局配置指令,例如:nginx -g "pid /var/run/nginx.pid; worker_processes sysctl -n hw.ncpu;" -p pref…...
http 模块
在现代 Web 开发中,HTTP 协议是客户端与服务器之间通信的基础。Node.js 自带的 http 模块提供了一种简单而强大的方式来创建 HTTP 服务器和客户端,使得开发者可以直接使用 JavaScript 编写高效的网络应用。本文将详细介绍 http 模块的基本概念、核心功能…...
本地部署DeepSeek + AnythingLLM 搭建高效安全的个人知识库
环境准备: 本地部署方案请参考博客:windows平台本地部署DeepSeek大模型+Open WebUI网页界面(可以离线使用)-CSDN博客 windows平台本地部署DeepSeek大模型+Chatbox界面(可以离线使用)-CSDN博客 根据本人电脑配置:windows11 + i9-13900HX+RTX4060+DDR5 5600 32G内存 确…...
LLM - 理解 DeepSeek 的 GPRO (分组相对策略优化) 公式与源码 教程(2)
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/145640762 GPRO,即 Group Relative Policy Optimization,分组相对的策略优化,是 PPO(Proximal Policy Optimiz…...
Github 2025-02-14 Java开源项目日报 Top10
根据Github Trendings的统计,今日(2025-02-14统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目10C#项目1Guava: 谷歌Java核心库 创建周期:3725 天开发语言:Java协议类型:Apache License 2.0Star数量:49867 个Fork数量:10822 次…...
DeepSeek赋能制造业:图表可视化从入门到精通
一、企业数据可视化之困 在数字化浪潮席卷全球的当下,商贸流通企业作为经济活动的关键枢纽,每天都在与海量数据打交道。从商品的采购、库存管理,到销售渠道的拓展、客户关系的维护,各个环节都源源不断地产生数据。这些数据犹如一座蕴含巨大价值的宝藏,然而,如何挖掘并利用…...
Python爬虫技术
Python爬虫技术凭借其高效便捷的特性,已成为数据采集领域的主流工具。以下从技术优势、核心实现、工具框架、反爬策略及注意事项等方面进行系统阐述: 一、Python爬虫的核心优势 语法简洁与开发效率高 Python的语法简洁易读,配合丰富的第三方库…...
C++Primer学习(4.6成员访问运算符)
4.6成员访问运算符 点运算符和箭头运算符都可用于访问成员,其中,点运算符获取类对象的一个成员;箭头运算符与点运算符有关,表达式 ptr->mem等价于(* ptr).mem: string sl"a string",*p &s1; auto ns1.size();//运行string对…...
c++14之std::make_unique
基础介绍 虽然在c11版本std::unique_ptr<T>已经引入,但是在c14版本引入之前,std::unique_ptr<T>的创建还是通过new操作符来完成的。在c14版本已经引入了类似make_shared的std::make_unique,目的是提供更加安全的方法创建std::un…...
服务器linux操作系统安全加固
一、系统更新与补丁管理 更新系统sudo yum update -y # 更新所有软件包 sudo yum install epel-release -y # 安装EPEL扩展源启用自动安全更新sudo yum install yum-cron -y sudo systemctl enable yum-cron sudo systemctl start yum-cron配置 /etc/yum/yum-cron.con…...
原生Three.js 和 Cesium.js 案例 。 智慧城市 数字孪生常用功能列表
对于大多数的开发者来言,看了很多文档可能遇见不到什么有用的,就算有用从文档上看,把代码复制到自己的本地大多数也是不能用的,非常浪费时间和学习成本, 尤其是three.js , cesium.js 这种难度较高ÿ…...
Node.js中Express框架使用指南:从入门到企业级实践
目录 一、Express快速入门 1. 项目初始化 2. 基础服务搭建 3. 添加热更新 二、核心功能详解 1. 路由系统 动态路由参数 路由模块化 2. 中间件机制 自定义中间件 常用官方中间件 3. 模板引擎集成 三、企业级最佳实践 1. 项目结构规范 2. 错误处理方案 3. 安全防护…...
spring 学习 (注解)
目录 前言 常用的注解 须知 1 Conponent注解 demo(案例) 2 ControllerServiceRepository demo(案例) 3 ScopeLazyPostConstructPreDestroy demo(案例) 4 ValueAutowiredQualifierResource demo(案例) 5 Co…...
Python|GIF 解析与构建(5):手搓截屏和帧率控制
目录 Python|GIF 解析与构建(5):手搓截屏和帧率控制 一、引言 二、技术实现:手搓截屏模块 2.1 核心原理 2.2 代码解析:ScreenshotData类 2.2.1 截图函数:capture_screen 三、技术实现&…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
【Web 进阶篇】优雅的接口设计:统一响应、全局异常处理与参数校验
系列回顾: 在上一篇中,我们成功地为应用集成了数据库,并使用 Spring Data JPA 实现了基本的 CRUD API。我们的应用现在能“记忆”数据了!但是,如果你仔细审视那些 API,会发现它们还很“粗糙”:有…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
大数据学习(132)-HIve数据分析
🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言Ǵ…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
Android第十三次面试总结(四大 组件基础)
Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: onCreate() 调用时机:Activity 首次创建时调用。…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
