电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>定制设计的七段显示器

定制设计的七段显示器

2022-08-01 | zip | 0.27 MB | 次下载 | 免费

资料介绍

PCB图如下:
poYBAGLacGiAKMgeAAE0m29gtWo411.png
poYBAGLacGuAH9WqAAKs2P2eHOI392.png
pYYBAGLacG2AA2bVAAB35hcdm7I673.jpg

成分

LED(封装:SMT 1206) × 60
电阻器(封装:SMT 1206) × 8
连接器 × 2
本局 × 1

描述

定制设计的七段显示器

Led 是设计中非常基本的组件,有时 LED 所做的工作不仅仅是指示。

在本文中,我们将了解如何使用 LED 构建定制设计的七段显示器。

市场上有很多不同的七段,但我选择建立自己的,因为我有时间并且周围有很多 LED。

我使用 Kicad 工具进行原理图和 PCB 设计。

这是完整的指南:

这是代码:

 

#define SEGMENT_A 5 
#define SEGMENT_B 6 
#define SEGMENT_C 7 
#define SEGMENT_D 8 
#define SEGMENT_E 9 
#define SEGMENT_F 10 
#define SEGMENT_G 11 
//#define SEGMENT_dp

#define SEG_SELECT_1 A3 
#define SEG_SELECT_2 A2 
#define SEG_SELECT_3 A1 
#define SEG_SELECT_4 A0

#define SEGMENT_SWITCH_DELAY 5 
int CounterPeriod = 1000 ;
unsigned  long time_now = 0 ;
/*
一个
 --
| |
 f|g |b
 --
| |
 电子| |c
 --
 d
 
字节 = hgfedcba
*/ 
uint8_t segmentdecode[] = { 0x3F , 0x06 , 0x5B , 0x4F , 0x66 , 0x6D , 0X7D , 0X07 , 0X7f , 0X6f , 0X77 , 0x7C , 0x39 , 0x5E , 0x79 , 0x71 };

无效 的DisplayNum (uint8_t num)
 {
digitalWrite(SEGMENT_A, (num & 0x01 )?HIGH:LOW);
digitalWrite(SEGMENT_B, (num & 0x02 )?HIGH:LOW);
digitalWrite(SEGMENT_C, (num & 0x04 )?HIGH:LOW);
digitalWrite(SEGMENT_D, (num & 0x08 )?HIGH:LOW);
digitalWrite(SEGMENT_E, (num & 0x10 )?HIGH:LOW);
digitalWrite(SEGMENT_F, (num & 0x20 )?HIGH:LOW);
digitalWrite(SEGMENT_G, (num & 0x40 )?HIGH:LOW);
}

void  setup ()  {
 // 把你的设置代码放在这里,运行一次:
pinMode(LED_BUILTIN,输出);
pinMode(SEGMENT_A,输出);

pinMode(SEGMENT_A,输出);
pinMode(SEGMENT_B,输出);
pinMode(SEGMENT_C,输出);
pinMode(SEGMENT_D,输出);
pinMode(SEGMENT_E,输出);
pinMode(SEGMENT_F,输出);
pinMode(SEGMENT_G,输出);
// pinMode(SEGMENT_dp,OUTPUT);

pinMode(SEG_SELECT_1,输出);
pinMode(SEG_SELECT_2,输出);
pinMode(SEG_SELECT_3,输出);
pinMode(SEG_SELECT_4,输出);
}

诠释我;
整数计数器= 0;
int convertInUnit[ 4 ];
//1234 
void  DisplayOnSegment ( int d)
 {
转换单位[ 0 ] = d/ 1000 ;
数字写入(SEG_SELECT_1,高);
数字写入(SEG_SELECT_2,低);
数字写入(SEG_SELECT_3,低);
数字写入(SEG_SELECT_4,低);
DisplayNum(segmentdecode[convertedInUnit[ 0 ]]);
延迟(SEGMENT_SWITCH_DELAY);
显示编号(0x00);//1

转换单位[ 1 ] = (d% 1000 )/ 100 ;
数字写入(SEG_SELECT_1,低);
数字写入(SEG_SELECT_2,高);
数字写入(SEG_SELECT_3,低);
数字写入(SEG_SELECT_4,低);
DisplayNum(segmentdecode[convertedInUnit[ 1 ]]);
延迟(SEGMENT_SWITCH_DELAY);
显示编号(0x00);//2

转换单位[ 2 ] = ((d% 1000 )% 100 )/ 10 ;
数字写入(SEG_SELECT_1,低);
数字写入(SEG_SELECT_2,低);
数字写入(SEG_SELECT_3,高);
数字写入(SEG_SELECT_4,低);
DisplayNum(segmentdecode[convertedInUnit[ 2 ]]);
延迟(SEGMENT_SWITCH_DELAY);
显示编号(0x00);//3

convertInUnit[ 3 ] = ((d% 1000 )% 100 )% 10 ;
数字写入(SEG_SELECT_1,低);
数字写入(SEG_SELECT_2,低);
数字写入(SEG_SELECT_3,低);
数字写入(SEG_SELECT_4,高);
DisplayNum(segmentdecode[convertedInUnit[ 3 ]]);
延迟(SEGMENT_SWITCH_DELAY);
显示编号(0x00);//4
}

void  loop ()  {
 if (millis() > time_now + CounterPeriod)
{
time_now = 毫秒();
计数器++;
如果(计数器 > 9999)
{
计数器 = 0 ;
}
}
 DisplayOnSegment(计数器);
}

 

这是 github 链接以获取更多详细信息

https://github.com/stechiez/electronicsDIY/tree/master/CustomSevenSegmentDisplay

 

 

下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费