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

做信息网站怎么赚钱建设部网站投标保证金

做信息网站怎么赚钱,建设部网站投标保证金,淘宝官方网,中燃oa企业门户一、七段数码管显示模块详解 🧩 1. 基本原理 七段数码管(7-Segment Display)由 7 个 LED(标记为 a~g)组成,用来显示 十进制数字 0~9(有的加上小数点 dp,就是8段&#x…

一、七段数码管显示模块详解

🧩 1. 基本原理

七段数码管(7-Segment Display)由 7 个 LED(标记为 a~g)组成,用来显示 十进制数字 0~9(有的加上小数点 dp,就是8段)。每个数字的显示是通过控制某些段亮/灭来实现的。

数码管的控制方式有两种:

  • 共阳极:所有段的正极连接在一起,接高电平(VCC),通过对段的负极接低电平(GND)来点亮;

  • 共阴极:所有段的负极连接在一起,接地,通过段的正极给高电平来点亮。

本程序是以共阴极数码管为例设计的,即:

段码位为 1(高电平)时灯灭,0(低电平)时灯亮。

🧠 2. 段码表解析

uint8_t LedShowData[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};// 对应数字:    0    1    2    3    4    5    6    7    8    9


 

每个值代表一个数字所需显示的段的组合,按如下方式排列:

说明

D0

a

最上方横

D1

b

右上

D2

c

右下

D3

d

最下方横

D4

e

左下

D5

f

左上

D6

g

中间横

D7

dp

小数点(不使用)

这些段的状态组成一个字节,即 8 位数据,比如:

  • 数字 0:亮 a, b, c, d, e, f → 0xC0(二进制 1100 0000)

  • 数字 1:亮 b, c → 0xF9(二进制 1111 1001)


🔧 3. 相关函数解释


uint8_t LedShowData[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90};//0,1,2,3,4,5,6,7,8,9

uint16_t GPIO_PIN_x[] = {GPIO_Pin_0,GPIO_Pin_1,GPIO_Pin_2,GPIO_Pin_3,GPIO_Pin_4,GPIO_Pin_5,GPIO_Pin_6,GPIO_Pin_7};

✅ void LEDSEG_Init(void);

该函数初始化 GPIOA 的 0~7 引脚为推挽输出,用来控制数码管的每一段。

代码分析:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);

  • 打开 GPIOA 的时钟​​​​​​​

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | ... | GPIO_Pin_7;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_Init(GPIOA, &GPIO_InitStructure);


 

  • 设置 GPIOA 0~7 为 推挽输出,速度为 50MHz。

GPIO_SetBits(GPIOA, GPIO_Pin_0 ~ GPIO_Pin_7);


 

  • 所有段位输出高电平(共阴极时,LED 熄灭)。


✅ void Digital_Display(uint8_t val);

这个函数用于在数码管上显示一个数字(0~9)

传参:

  • val:你想显示的数字(0~9)

代码解析:

uint16_t display_val = LedShowData[val];


 

  • 从段码表中查出要显示数字的段码值。​​​​​​​

for(i = 0;i < 8;i++){	GPIO_WriteBit(GPIOA,GPIO_PIN_x[i],display_val>>i & 0x01);}


 

  • 遍历8位段码(从最低位到最高位),把每一位的0或1写到对应的 GPIOA 引脚上。

  • display_val >> i & 0x01:提取第 i 位。

示例展示​​​​​​​

例如 val = 2:查表得到 display_val = 0xA4 = 0b10100100会将 D0~D7 分别设置为对应的位。


💡 小贴士

  • 若你要动态显示多个位的数码管,需要通过位选+段选组合来进行快速扫描(即动态显示法)。

  • 若你是单个数码管,此代码已足够完成显示功能。


🧪 示意图(逻辑上)

GPIOA 引脚  01234567
段位对应:  a b c d e f g d

Digital_Display(3); // GPIOA 写入 0xB0 => 段 a b c d g 亮


✅ 总结

函数名

作用

LEDSEG_Init()

初始化数码管用的 GPIO(A0~A7)

Digital_Display(val)

显示指定数字(0~9)

http://www.dtcms.com/a/607964.html

相关文章:

  • 网站建设中标公告河北省建设资格执业中心网站
  • 给企业做网站公司西部数码网站管理助手ftp
  • 描述photoshop在网站建设中的作用与特点.郑州短视频运营公司
  • 深圳做外贸网站的公司网站内容协议
  • 宁波搭建网站公司什么网站可以做h5
  • 东莞网站建设排行萝岗微网站建设
  • 绍兴市住房和城乡建设局网站手机永久免费建站
  • 想找个人建网站电台网站建设要求
  • 免费做初级会计试题网站有哪些深圳网站建设 卓越创
  • 呼和浩特北京网站建设东莞手机网站建设入门
  • 免费素材库网站wordpress 主题库
  • 云虚拟主机怎么做2个网站开一个工作室需要多少钱
  • 建设营销网站时以什么为导向如何做一个漂亮的网页
  • 爱站网站长seo综合查询网易企业邮箱登录入口手机网页版
  • 自己可以建设环保公益网站吗免费的个人简历模板表格
  • 常州建设网站平台物流系统网站策划书
  • 源码上传网站免费咨询的图片
  • 网站建设 服务范围最专业的网站建设哪家好
  • 莆田免费建站模板厦门商城网站建设
  • 求个网站谢谢js网站跳转代码
  • 太原网站模板机关门户网站建设要求
  • 非交互式网站工信部资质查询网站
  • 免费注册域名流程seo修改器
  • 网站规划内容网站被挂黑链怎么处理
  • 网站建设分金手指专业二八微信公众平台登录入口内村完小
  • 在linux上做网站搭建wordpress主题包下载
  • 如何建设一免费的网站学做面包的网站
  • 做网站最低服务器配置安平百度做网站
  • 源码做网站漯河网站优化
  • 海淀高端企业网站建设智能科技公司取名字大全