74HC595静态驱动2段数码管显示模块-Arduino中文社区 - Powered by Discuz! Archiver

Zoologist 发表于 2018-4-30 21:26

74HC595静态驱动2段数码管显示模块

最近入了一个 “74HC595静态驱动2段数码管显示模块”(似乎称作两位更好一些)。我不清楚他是怎么连接的,但是使用网上的代码经过修改,可以成功的控制并进行显示。                                int LATCH = 9;//锁存端口 int SRCLK = 10;//时钟端口 int SER = 8;//数据端口                    unsigned char Num[]={ 0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x8C,0xBF,0xC6,0xA1,0x86,0xFF,0xbf};//这里是显示0-9的数字编码,对应的二进制编码可以看出对应辉管的开闭,这里只是方便使用,可以直接发送编码显示unsigned charPoint[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//这个是显示位置,大家可以转换到二进制看看到底怎么回事void setup(){ pinMode(LATCH,OUTPUT); pinMode(SRCLK,OUTPUT);pinMode(SER,OUTPUT);//三个语句全部设定Arduino管脚为输出    Serial.begin(115200);//串口通信Init,这里主要为了以后开发,顺手习惯加了,本Demo删掉即可}void SendByte(unsigned char dat)//发送Btye,也是写入的核心部分{uint8_t i;//定义一个循环变量i for(i=0;i<8;i++){   digitalWrite(SRCLK,LOW);//首先根据手册,将时钟输出Low,然后才可以输入数据信号    if(dat &0x80)//这里是一个LSB   digitalWrite(SER,HIGH);    else      digitalWrite(SER,LOW);   dat<<=1;   digitalWrite(SRCLK,HIGH);}}void Send2Byte(unsigned char dat1,unsigned char dat2){SendByte(dat1);SendByte(dat2);}void loop(){for(inti=0;i<100;i++){    //Arg 是高位Arg 是低位   Send2Byte(Num,Num);   digitalWrite(LATCH,LOW);    delay(1);   digitalWrite(LATCH,HIGH);    delay(100);}}线路方面:VCC 5V, GND,,SDI接Pin8,SCLK 接 Pin10,LOAD接 Pin9。 参考:1. https://blog.csdn.net/prius0304/article/details/49519163Arduino 595多级并联 Arduino显示八位数码管

Juggernaut 发表于 2018-4-30 22:20

板子好小啊

Zoologist 发表于 2018-5-1 19:56

Juggernaut 发表于 2018-4-30 22:20
板子好小啊

和2个7段数码管差不多大

t3486784401 发表于 2018-6-17 14:28

某宝已经有8位静态的了,也是跟数码管外框一样大

糊涂兔 发表于 2021-9-20 16:39

三位的数码管该怎么改代码呢?求赐教

Zoologist 发表于 2021-9-20 19:38

糊涂兔 发表于 2021-9-20 16:39
三位的数码管该怎么改代码呢?求赐教

找卖家要一下
页: [1]
查看完整版本: 74HC595静态驱动2段数码管显示模块