材料介绍:一块arduino,若干杜邦线,一块数码管,一块74HC595芯片,
这是该芯片图片(图片来源于网络)
74HC595 简单说来就是具有8位移位寄存器和一个存储器,通过该芯片可以实现3控8。简单来说就是通过3个数字引脚控制8个其它引脚。比如说用该芯片和三个arduino数字引脚来控制一个8位共阴数码管。
74HC595是一个8位串行输入、并行输出的位移缓存器:并行输出为三态输出。在SCK 的上升沿,串行数据由SDL输入到内部的8位位移缓存器,并由Q7’输出,而并行输出则是在LCK的上升沿将在8位位移缓存器的数据存入到8位并行输出缓存器。当串行数据输入端OE的控制信号为低使能时,并行输出端的输出值等于并行输出缓存器所存储的值。
符号 | 引脚 | 描述 |
---|---|---|
Q0–Q7 | 第15脚, 第1-7脚 | 8位并行数据输出 |
GND | 第8脚 | 地 |
Q7’ | 第9脚 | 串行数据输出 |
/MR | 第10脚 | 主复位(低电平有效) |
SH_CP | 第11脚 | 数据输入时钟线 |
ST_CP | 第12脚 | 输出存储器锁存时钟线 |
/OE | 第13脚 | 输出有效(低电平有效) |
DS | 第14脚 | 串行数据输入 |
VCC | 第16脚 | 电源 |
引脚图如图(图片来源于百度百科)
关于工作原理有大神做了动画
我的数码管是共阴的我在做的时候这些数字是试出来的所有复制代码可能会有不同。
中间用到一个shiftOut函数
shiftOut (uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, byte val)
名为:位移输出函数
输入value数据后Arduino会自动把数据移动分配到8个并行输出端. 其中dataPin为连接DS的引脚号, clockPin为连接SH_CP的引脚号, bitOrder为设置数据位移顺序, 分别为高位先入MSBFIRST或者低位先入LSBFIRST.
具体实现代码如下
int latchPin =4;
int clockPin = 3;
int dataPin=2;
int arr[10]={126,72,188,182,210,230,238,50,254,242};
void setup() {
pinMode(latchPin,OUTPUT);
pinMode(clockPin,OUTPUT);
pinMode(dataPin,OUTPUT);
}
void loop(){
for(int n=0;n<10;n++){
Serial.begin(9600);
digitalWrite(latchPin,LOW);//准备接收数据
shiftOut(dataPin,clockPin,LSBFIRST,arr[n]);
digitalWrite(latchPin,HIGH);//恢复高电平,传递数
delay(1000);
}
//0 126
//1 72
//2 188
//3 182
//4 210
//5 230
//6 238
//7 50
//8 254
//9 242
}
已经实践过 具体显示数字从0-9
其中DS接入数字引脚2
STCP接入数字引脚 3
SHCP接入数字引脚4
来源:https://blog.51cto.com/u_14972704/3018132
RISC-V(发音为“risk-five”)是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。
74HC595是一个8位串行输入、并行输出的位移缓存器。并行输出为三态输出。
LED点阵屏由LED发光二极管组成,通过控制LED亮灭来显示文字、图片、动画、视频等,被广泛应用于公共场合做信息展示,如广告屏、公告牌等。
ESP32的DAC函数可以实现真正的模拟输出。
ESP32 没有Arduino输出 PWM 的 analogWrite(pin, value) 方法,取而代之的 ESP32 有一个 LEDC 来实现PWM功能。
本书由少年创学院联合创始人兼院长、知名创客程晨撰写,以Arduino作为硬件平台,介绍了使用米思齐(Mixly)软件进行程序开发的方法。
本文档作为UNO R4 WiFi的技术概览,您将找到一系列资源和指南链接,帮助您开始下一个项目。
Arduino OneButton库是一个用于简化按钮操作的库,它可以轻松地处理按钮的单击、双击和长按等操作。适用于Arduino开发板以及ESP32等其他基于Arduino的开发板。
本文从Arduino Uno入手,看看怎样在这个"简单"的8bit单片机搭建一个属于自己的bootloader
许多硬件厂商都希望自己的开发板能被Arduino IDE集成开发环境所支持。这里就以小脚丫开发板所使用的开发包为例,介绍一下第三方开发包的制作方法。