找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5394|回复: 2
收起左侧

利用74HC595显示多个数码管

[复制链接]
ID:164146 发表于 2017-5-3 08:49 | 显示全部楼层 |阅读模式
74HC595显示多个数码管
  1. #include <reg52.h>
  2. #include <intrins.h>
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. sbit ClOCK = P2^0;        //HC595第11脚,串行时钟输入端
  6. sbit DATA  = P2^1;        //HC595第14脚,串行数据输入端
  7. sbit LATCH = P2^2;        //HC595第12脚,输出锁存脉冲输入端

  8. //定义共阴数码管段码0-9
  9. uchar code segment[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x27,0x7F,0x6F};

  10. //串行输出一个字节
  11. void HC595(uchar word)
  12. {
  13.     uchar i;
  14.     for (i=8;i>0;i--)
  15.     {
  16.         ClOCK=0;
  17.         DATA=0x80&word;
  18.         word=_crol_(word,1);
  19.         ClOCK=1;
  20.         _nop_();
  21.     }
  22. }


  23. void display(uchar S1, uchar S2, uchar S3, uchar S4, uchar S5, uchar S6)
  24. {
  25.         HC595(segment[S6]);
  26.         HC595(segment[S5]);
  27.         HC595(segment[S4]);
  28.         HC595(segment[S3]);
  29.         HC595(segment[S2]);
  30.         HC595(segment[S1]);
  31.         LATCH=1;
  32.     _nop_();
  33.         LATCH=0;
  34. }
  35. void main()
  36. {
  37.     LATCH = 0;
  38.         while(1)
  39.                 display(2, 0, 1, 3, 1, 4);
  40. }
复制代码


数码管显示-基于74HC595.rar

59.37 KB, 下载次数: 81, 下载积分: 黑币 -5

含Proteus仿真

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表