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

福州网站建设发布自己建设网站需要什么

福州网站建设发布,自己建设网站需要什么,不属于网站后期维护,网站备份挖掘第十五章 点阵LED 15.1 点阵 LED 概述 15.1.1 实物图 15.1.1 原理图 15.2 点阵 LED 静态显示 15.2.1 需求描述 使用点阵 LED 显示一排由左上到右下的斜线,具体效果如下图所示。 15.2.2 硬件设计 15.2.2.1 硬件原理图 根据内部原理可知,点阵 LED 的…

 第十五章 点阵LED

15.1 点阵 LED 概述

15.1.1 实物图

15.1.1 原理图

15.2 点阵 LED 静态显示

15.2.1 需求描述

使用点阵 LED 显示一排由左上到右下的斜线,具体效果如下图所示。

15.2.2 硬件设计

15.2.2.1 硬件原理图

根据内部原理可知,点阵 LED 的显示需要逐行或者逐列扫描,此处选择逐行扫描。由
于每次扫描只需点亮一行,所以很容易想到,行的扫描可以通过 74HC238(类似于
74HC138,与 138 输出相反)芯片完成,以达到节省 MCU 引脚的目的。
每行要显示的内容由点阵 LED 阴极的 8 个引脚控制,将 8 个引脚接入 MCU 的 8 个
GPIO 引脚即可。具体的硬件原理图如下。

15.2.2.2 74HC595 使用说明

上述原理图显示,点阵 LED 的行扫描并未使用 74HC238 芯片,而是使用了 74HC595。
该芯片的用法如下。

74HC595 芯片的相关资料如下。

15.2.3 软件设计


15.2.3.1 实现思路

15.2.3.2 具体代码

1)Int_MatrixLED.h

在 Int 中新建 Int_MatrixLED.h,写入以下内容

#ifndef __INT_MATRIXLED_H__
#define __INT_MATRIXLED_H__
#include <STC89C5xRC.H>
#include "Util.h"
/**
* @brief 点阵 LED 初始化函数
*
*/
void Int_MatrixLED_Init();
/**
* @brief 设置点阵现实图像的函数
*
* @param pic 要显示的图像,数组长度必须为 8
*/
void Int_MatrixLED_SetPic(u8 *pic);
/**
* @brief 需要不断调用下面的函数刷新点阵 LED
*
*/
void Int_MatrixLED_Refresh();
#endif // __LED_MATRIX_H__

2)Int_MatrixLED.c

在 Int 中新建 Int_MatrixLED.c,写入以下内容:

#include "Int_MatrixLED.h"
#define SER P10
#define SCK P12
#define RCK P11
#define MATRIX_LED_EN P35
// 设置缓存,每个字节代表点阵的一行,单行中每个 bit,1 为亮,0 为灭
static u8 s_led_buff[8];
void Int_MatrixLED_Init()
{u8 i;
// 打开点阵 LEDMATRIX_LED_EN = 0;
// 初始化后,全部点阵关闭for (i = 0; i < 8; i++){s_led_buff[i] = 0;}
}void Int_MatrixLED_SetPic(u8 *pic)
{u8 i;for (i = 0; i < 8; i++){s_led_buff[i] = pic[i];}
}void Int_MatrixLED_Refresh()
{u8 i;SER = 1;SCK = 0;SCK = 1;SER = 0;for (i = 0; i < 8; i++){
// 展示下一行之前,关闭P0 = 0xFF;RCK = 0;RCK = 1;
// 当前行展示想展示的数据P0 = ~s_led_buff[i];SCK = 0;SCK = 1;Delay1ms(1);}
}

3)Main.c

在主文件夹新建 Main.c,写入以下内容

#include <STC89C5xRC.H>
#include "Int_MatrixLED.h"
void main()
{u8 pic[8] = {0x1,0x2,0x4,0x8,0x10,0x20,0x40,0x80};
Int_MatrixLED_Init();
Int_MatrixLED_SetPic(pic);while (1) {Int_MatrixLED_Refresh();}
}

15.3 点阵 LED 滚动显示

15.3.1 需求描述

LED 点阵屏滚动显示“尚硅谷”三个字。

15.3.2 软件设计

15.3.2.1 实现思路

15.3.2.2 完整代码

1)Int_MatrixLED.h

#ifndef __INT_LEDMATRIX_H__
#define __INT_LEDMATRIX_H__
#include "Com_Util.h"
void Int_LEDMatrix_Init();void Int_LEDMatrix_SetPic(u8 pic[]);void Int_LEDMatrix_Refresh();void Int_LEDMatrix_Shift(u8 pic);#endif /* __INT_LEDMATRIX_H__ */

2)Int_MatrixLED.c

#include "Int_LEDMatrix.h"
#include "Dri_Timer0.h"
#include <STC89C5xRC.H>
#define LED_MATRIX_EN P35
#define LED_EN        P34#define SER           P10
#define SCK           P12
#define RCK           P11static u8 s_buffer[8];
void Int_LEDMatrix_RefreshByTimer0();
void Int_LEDMatrix_Init()
{LED_MATRIX_EN = 0;LED_EN        = 0;Dri_Timer0_RegisterCallback(Int_LEDMatrix_RefreshByTimer0);
}void Int_LEDMatrix_SetPic(u8 pic[])
{u8 i;for (i = 0; i < 8; i++) {s_buffer[i] = pic[i];}
}void Int_LEDMatrix_Refresh()
{u8 i;for (i = 0; i < 8; i++) {P0 = 0xFF;// 1.设置显示哪行if (i == 0) {SER = 1;} else {SER = 0;}SCK = 0;SCK = 1;RCK = 0;RCK = 1;// 2.设置当前行的显示内容P0 = ~s_buffer[i];Com_Util_Delay1ms(1);}
}void Int_LEDMatrix_Shift(u8 pic)
{u8 i=7;for ( i = 0; i >=1 ; i--){s_buffer[i]=s_buffer[i-1];s_buffer[0]= pic ;}}void Int_LEDMatrix_RefreshByTimer0()
{static u8 i = 0;P0          = 0xFF;// 1.设置显示哪行if (i == 0) {SER = 1;} else {SER = 0;}SCK = 0;SCK = 1;RCK = 0;RCK = 1;// 2.设置当前行的显示内容P0 = ~s_buffer[i];i++;if (i == 8) {i = 0;}
}

3)Main.c

#include"Dri_Timer0.h"
#include"Int_LEDMatrix.h"
void main()
{u8 i;u8 picture[26] = {0xF8, 0x0A, 0xEC, 0xAF, 0xEC, 0x8A, 0xF8, 0x00,0x10, 0xF9, 0x97, 0xF1, 0x88, 0xAA, 0xFF, 0xAA,0x88, 0x00, 0x14, 0x0A, 0xF5, 0x92, 0x92, 0xF5,0x0A, 0x14};Dri_Timer0_Init();Int_LEDMatrix_Init();while(1){for ( i = 0; i < 26; i++){Int_LEDMatrix_Shift(picture[26]);Com_Util_Delay1ms(200);}}
}


文章转载自:

http://etSDUEtr.kqbzy.cn
http://R4EmvttB.kqbzy.cn
http://7IbAUCaf.kqbzy.cn
http://HoZpA5nv.kqbzy.cn
http://0FJJc4bO.kqbzy.cn
http://xmmia8OB.kqbzy.cn
http://vvzOCzIN.kqbzy.cn
http://kTuOX5a2.kqbzy.cn
http://4XvWOds7.kqbzy.cn
http://DEcnIZPz.kqbzy.cn
http://3khiWQsG.kqbzy.cn
http://CRsy5nce.kqbzy.cn
http://EfVMQgBw.kqbzy.cn
http://2U23ng3P.kqbzy.cn
http://9m4Ez2wf.kqbzy.cn
http://p2Xv53ei.kqbzy.cn
http://UOVCWLUA.kqbzy.cn
http://NjvWDP2G.kqbzy.cn
http://YfOXwwfe.kqbzy.cn
http://bF9gzK1F.kqbzy.cn
http://78SjFQNb.kqbzy.cn
http://3KRrj30N.kqbzy.cn
http://JQlRf3ML.kqbzy.cn
http://ZlGjSgXE.kqbzy.cn
http://g1gutiy9.kqbzy.cn
http://FAHOZLom.kqbzy.cn
http://75BepUR0.kqbzy.cn
http://Nd1PjWIV.kqbzy.cn
http://LnDeRWwv.kqbzy.cn
http://2TNeYqll.kqbzy.cn
http://www.dtcms.com/wzjs/613901.html

相关文章:

  • 顺德手机网站设计咨询鞍山做网站或
  • 哪里做网站最好网站网站流量与广告费
  • 店铺logo图片大全外贸seo是什么意思
  • 徐汇企业网站建设重庆营销型网站建设
  • 广州手机网站定制信息wordpress文章显示标题在首页
  • 网站添加flash大庆市建设局宫方网站
  • 江西火电建设公司网站公司装修会计分录
  • 旅游网站建设和开发陈铭生小说
  • 手机怎么做钓鱼网站怎样提高百度推广排名
  • 深圳做网站网络营销公司哪家好网页设计教学网站
  • 青岛网站推广 软件福州最好的网站建设
  • 安阳做网站哪家好北京网站建设 云智互联
  • 工业设计网站有那些国外网页设计
  • 网站开发三层太原网站设计
  • 十堰优化seo成都网站排名优化
  • 别人公司网站进不去高校图书馆网站建设
  • 股票跟单网站开发下载百度网盘app
  • 超级优化seo网站建设 刘贺稳营销专家a
  • 中国机械加工网1717东莞seo建站公司哪家好
  • 抖音平台建站工具三亚的私人电影院
  • 网络公司网站 优帮云宣城网站开发专业制
  • 厦门蓝典网站建设国内做app软件开发最好的公司
  • 网站检索功能怎么做石家庄网站建设流程
  • 网站建设维护资质中国建设网官方网站证书查询
  • 地图截选做分析图的网站沧县网站建设公司
  • 怎么做58网站吊车网微信公众号的跳转网站怎么做
  • 文库网站开发教程建设网站大全
  • 朝阳区手机网站设计服务wordpress单页面制作
  • 哪个域名注册网站好京津冀协同发展规划纲要
  • 天天新品网做网站南京公司网站建设平台