led点阵屏静态图

news/2024/7/6 1:42:23

话不多说,上代码,前提是你已经知道各行代码的意思。跟着老师的代码走最好,每一行都一样,要不然会有意想不到的错误,小白阶段就不要自己创新代码了。X﹏X

#include <REGX52.H>

 

sbit RCK=P3^5; //RCLK

sbit SCK=P3^6; //SRCLK

sbit SER=P3^4; //SER

 

#define MATRIX_LED_PORT P0 //宏定义P0口

 

//延时函数

void Delay(unsigned int xms)

{

 unsigned char i,j;

 while(xms)

 {

  i=2;

  j=239;

  do

  {

  while(--j);

  }while(--i);

    xms--;

 }

}

 

void _74HC595_WriteByte(unsigned char Byte)

{

 unsigned char i;

 for(i=0;i<8;i++)

 {

  SER=Byte&(0x80>>i);

  SCK=1;//时钟每来一个上升沿,数据就会往下移,循环8次,

              //把发送来的串行数据全部放到移位寄存中去;

  SCK=0;//为下次移位做准备;

 }

 RCK=1; //把移位寄存器的数据搬运到输出缓存器中;

 RCK=0;

}

 

 

void MatrixLED_ShowColumn(unsigned char Column,Data)

{

 _74HC595_WriteByte(Data);

 MATRIX_LED_PORT=~(0x80>>Column);//选中列; 1000 0000取反0111 1111即选中第一列。

这2行段选,位选的顺序不能错,要不然有问题,食不食油饼,就这个bug,我想半天没想出来。心好痛😣。

 Delay(1);

 MATRIX_LED_PORT=0xFF;//消影

}

 

void main()

{

 SCK=0;//单片机上电初始化后,所有I/O口都为高电平,所以上电后RCLK和SRCLK要置零;

 RCK=0;

 while(1)

 {

  //MatrixLED_ShowColumn(0,0x24);//显示第一列

  MatrixLED_ShowColumn(1,0x18);//显示第二列

  MatrixLED_ShowColumn(2,0x24);

  MatrixLED_ShowColumn(3,0x22);

     MatrixLED_ShowColumn(4,0x11);

  MatrixLED_ShowColumn(5,0x22);

  MatrixLED_ShowColumn(6,0x24);

  MatrixLED_ShowColumn(7,0x18);

 }

}


http://lihuaxi.xjx100.cn/news/49764.html

相关文章

C# 多线程二:Interlocked 互锁的理解和简单示例

一.多线程的线程安全 多线程安全问题原因是在cpu执行多线程时&#xff0c;在执行的过程中可能随时切换到其他的线程上执行&#xff0c;当多个线程同时操作同一个变量时&#xff0c;如果不施加其他措施&#xff0c;可能导致错误数据的出现 二.Interlocked的特点 Interlocked是…

JavaWeb - 15 异步请求 Ajax axios

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录1.同步请求与异步请求1.1 同步请求1.2 异步请求2. Ajax发送异步请求2.1 Ajax概述2.2 原生JS实现AJAX详解2.3 代码码演示3. axios框架3.1 axios概述3.2 安装方式3.3 快…

【Linux从0到1】第十七篇:高级IO

文章目录一、五种IO模型二、高级IO重要概念2.1 同步通信 vs 异步通信(synchronous communication/ asynchronouscommunication)2.2 阻塞 vs 非阻塞2.3 其他高级IO2.4 非阻塞IO2.5 I/O多路转接之select2.6 I/O多路转接之poll [选学]2.7 I/O多路转接之epoll一、五种IO模型 阻塞IO…

SpringMVC处理Ajax请求及处理和响应json格式的数据

在SpringMVC中处理Ajax的请求可以用到RequestBody与ResponseBody注解实现 1.RequestBody:将请求体中的内容和控制器方法的形参进行绑定 2.使用RequestBody注解将json格式的请求参数转换程Java对象&#xff08;三个步骤&#xff09; a>导入Jackson的依赖 b>在SpringMVC的…

Redis从入门到精通(一)

Redis 一、Redis安装和概述 1.1、概述 Redis是什么&#xff1f; Redis&#xff08;Remote Dictionary Server )&#xff0c;即远程字典服务&#xff0c; Redis是一个开源的key-value存储系统&#xff0c;当下最热门的NoSQL 技术之一。 1.2、安装 1.把redis-6.2.6.tar.gz上…

HTML+CSS+JS520告白表白模板在线制作(七夕情人节表白网页代码)

❤ 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f482; 作者主页: 【进入主页—&#x1f680;获取更多源码】 &#x1f393; web前端期末大作业&#xff1a; 【&#x1f4da;HTML5网页期末作业 (1000套) 】 &#x1…

TiDB Dashboard 常见问题

本文汇总了使用 TiDB Dashboard 过程中的常见问题与解决办法。若无法找到对应问题&#xff0c;或者根据指引操作后问题仍然存在&#xff0c;请联系 PingCAP 技术支持获取帮助。 访问 已配置防火墙或反向代理&#xff0c;但访问后被跳转到一个内部地址无法访问 TiDB Dashboard…

Spring Boot 集成 Redis 配置 MyBatis 二级缓存

目录写在前面源码获取一、MyBatis缓存机制1.1、一级缓存1.2、二级缓存二、集成Redis2.1、安装Redis2.2、项目引入Redis2.2.1、Maven依赖2.2.2、配置application.yml2.2.3、配置序列化规则三、配置二级缓存2.1、开启二级缓存2.2、自定义缓存类2.3、增加注解2.4、测试验证写在前面…