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

档案网站的建设方案广告公司图片

档案网站的建设方案,广告公司图片,旅游分销平台有哪些,网站建设pdf 下载文章目录硬件电路连接方式函数实现文章福利硬件电路 通过上述原理图,可知拓展板上的数码管是一个共阴数码管,也就是说某段数码管接上高电平时,就会点亮。   上述原理图还给出一个提示,即:三个数码管分别与三个74HC59…

文章目录

  • 硬件电路
  • 连接方式
  • 函数实现
  • 文章福利

硬件电路

在这里插入图片描述
  通过上述原理图,可知拓展板上的数码管是一个共阴数码管,也就是说某段数码管接上高电平时,就会点亮。
  上述原理图还给出一个提示,即:三个数码管分别与三个74HC595移位缓存器并联,而三个移位寄存器串联
  74LS595芯片实际上是一个8位串行输入、并行输出的位移缓存器。也就是说数据是一个一个进入,但是一起输出的。
  当SCK处于上升沿时,串行数据由SDL输入到内部的8位位移缓存器,并由Q7’输出;而并行输出则是在LCK处于上升沿时,将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。
  点亮三个数码管需要3*8=24个数据,而一个74LS595移位寄存器只能够存储8位数据,其存储值远小于输入值。
  根据上述的原理,可知:上图中seg3数码管的数据是经seg2数码管位移过来的,而seg2数码管数据是经seg1数码管位移过来。也就是说数码管刷新的顺序为seg3->seg2->seg1。

共阴数码管显示说明
  首先来看看一个数码管的段码分布吧!🤤🤤🤤
在这里插入图片描述
  也就是说一个数码管是由八段组成,a段为最低位,dp为最高位。
  由于拓展板的数码管是一个共阴数码管(1有效)。那么显示数值的段码由来示例分析为:

显示值dpgfedcba十六进制表示
0001111110x3f
1000001100x06
0.101111110xbf
1.100001100x86

连接方式

在这里插入图片描述
  经过查找原理图,不难发现74LS595芯片的三个输入端(SER、PCLK、SCK)实际上分别与PA1、PA2、PA3引脚相连接。
  因此,其连接方式如下图:
在这里插入图片描述

函数实现

cubeMx配置
在这里插入图片描述

函数示例

  声明定义:

// 声明GPIO分组及引脚
#define RCLK_PIN    GPIO_PIN_2
#define RCLK_PORT   GPIOA
#define SER_PIN   	GPIO_PIN_1
#define SER_PORT    GPIOA
#define SCK_PIN   	GPIO_PIN_3
#define SCK_PORT    GPIOA// 声明函数别名
#define RCLK_H	HAL_GPIO_WritePin(RCLK_PORT, RCLK_PIN, GPIO_PIN_SET)
#define RCLK_L	HAL_GPIO_WritePin(RCLK_PORT, RCLK_PIN, GPIO_PIN_RESET)#define SER_H	HAL_GPIO_WritePin(SER_PORT, SER_PIN, GPIO_PIN_SET)
#define SER_L	HAL_GPIO_WritePin(SER_PORT, SER_PIN, GPIO_PIN_RESET)#define SCK_H	HAL_GPIO_WritePin(SCK_PORT, SCK_PIN, GPIO_PIN_SET)
#define SCK_L	HAL_GPIO_WritePin(SCK_PORT, SCK_PIN, GPIO_PIN_RESET)

  函数实现:

/************   共阴数码管段码  *****************/
//               0     1     2     3      4		5	  6     7     8     9    -    熄灭
u8 segTab[] = { 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x40, 0x00,
//               0.    1.   2.    3.     4.	   5.    6.    7.    8.     9.    -    熄灭	0xbf, 0x86, 0xdb, 0xcf, 0xe6, 0xed, 0xfd, 0x87, 0xff, 0xef, 0x40, 0x00,
//				A      B     C     D      E      F  熄灭0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71, 0x00 };
// 储存数码管需要显示的值
u8 segBuff[3] = {10,10,10};/* -------------------------------- begin  -------------------------------- */
/*** @Name    segDisplay* @brief   数码管显示函数* @param   None* @retval  None* @author  黑心萝卜三条杠* @Data    2023-03-02**/
/* -------------------------------- end -------------------------------- */
void segDisplay(void)
{u8 code_tmp = 0,j = 0;static u8 i = 3;code_tmp = segTab[segBuff[i-1]];// 拉低复位端口 低电平有效 表示需要写入数据RCLK_L;for(j = 0; j < 8; ++j){// 拉低控制信号SCK_L;// 判断最高位是否为1if(code_tmp & 0x80)// 写入1SER_H;else// 写入0SER_L;code_tmp = code_tmp << 1;// 拉低控制信号SCK_L;// 拉高控制信号SCK_H;}// 拉高复位端口 一般默认接VCC  表示写入数据完成RCLK_H;// 移动下一次显示数码管的位置if(--i > 0 ) i = 3;
}

  使用说明:使用时直接将要显示的数据放入数组segBuff[],再调用刷新函数segDisplay()code>即可。
例如

void sysWork(void)
{static int i = 0;	segDisplay();segBuff[0] = i;segBuff[1] = i+1;segBuff[2] = i+2;i = (i+1)%24;
}

  注意使用上述的segDisplay()函数还需要调整刷新频率,否则会出现闪烁的情况。
  若认为老实调节频率过于麻烦,可以使用下面这个版本的>segDisplay():

/* -------------------------------- begin  -------------------------------- */
/*** @Name    segDisplay* @brief   数码管显示函数* @param   None* @retval  None* @author  黑心萝卜三条杠* @Data    2023-03-02**/
/* -------------------------------- end -------------------------------- */
void segDisplay(void)
{u8 code_tmp = 0,j = 0,i = 3;for(i=3;i>0;--i){code_tmp = segTab[segBuff[i-1]];// 拉低复位端口 低电平有效 表示需要写入数据RCLK_L;for(j = 0; j < 8; ++j){// 拉低控制信号SCK_L;// 判断最高位是否为1if(code_tmp & 0x80)// 写入1SER_H;else// 写入0SER_L;code_tmp = code_tmp << 1;// 拉低控制信号SCK_L;// 拉高控制信号SCK_H;}// 拉高复位端口 一般默认接VCC  表示写入数据完成RCLK_H;}
}

  至于函数调用本质上是一样的,只不过可以不用细调数码管的刷新频率了。🤣🤣🤣

文章福利

下边是小编个人整理出来免费的蓝桥杯嵌入式福利,有需要的童鞋可以自取哟!🤤🤤🤤

  • 【蓝桥杯嵌入式】第十一届蓝桥杯嵌入式省赛(第二场)程序设计试题及其题解
  • 【蓝桥杯嵌入式】第十二届蓝桥杯嵌入式省赛程序设计试题以及详细题解
  • 【蓝桥杯嵌入式】第十三届蓝桥杯嵌入式省赛程序设计试题及其详细题解
  • 【蓝桥杯嵌入式】第十三届蓝桥杯嵌入式省赛(第二场)程序设计试题及其题解
  • 【蓝桥杯嵌入式】第十三届蓝桥杯嵌入式国赛程序设计试题以及详细题解
  • 【蓝桥杯】一文解决蓝桥杯嵌入式开发板(STM32G431RBT6)LCD与LED显示冲突问题,并讲述LCD翻转显示

也欢迎大家留言或私信交流,共同进步哟!😉😉😉

http://www.mnyf.cn/news/46858.html

相关文章:

  • 网站导航设计法则今日热搜排行第一名
  • html工具软件seo技巧是什么
  • 徐州专业网站制作公司鲜花网络营销推广方案
  • 西安网站群建设网站热度查询
  • 网站搜索引擎优化方案搜索引擎营销的内容
  • 网站改版设计注意事项信息流优化师简历怎么写
  • 宁波住房和城乡建设局网站首页百度竞价托管费用
  • 中国优秀企业网站欣赏链接生成器在线制作
  • 6.网站开发流程是什么网页设计
  • 上海做网站定制seo诊断方案
  • 盛泽做网站的营销qq
  • wordpress资讯图片主题北京seo怎么优化
  • 开网站建设公司怎么样免费发布广告的平台
  • 商城网站建设计划书哈尔滨最新疫情通报
  • 利用网站做淘宝客网站注册流程
  • 如何做webgis网站曹操博客seo
  • html企业网站主页模板靠谱的代运营公司有哪些
  • 做网站的图片传进去很模糊抖音seo培训
  • 行业公司网站建设全网营销推广软件
  • 宝安公司可以网站设计外贸网站优化推广
  • 自己做网站还是挂靠好重庆疫情最新数据
  • wordpress站群源码武汉seo网络优化公司
  • 做网站运营有前途么怎样注册一个自己的平台
  • 网站内容建设流程昆山优化外包
  • 做公众号网站有哪些网站查询
  • 网站制作学什么软件有哪些高端网站设计公司
  • 中国建设监理协会网站seo还能赚钱吗
  • 网页如何设计qq群排名优化软件购买
  • 网站开发内部工单苏州优化收费
  • 怎么制作外贸网站seo页面链接优化