非共阴共阳数码管如何驱动
时间: 2023-06-15 15:04:44 浏览: 65
非共阴共阳数码管也叫做共阳共阴数码管的反相输出型,其驱动方式与共阴型数码管相似,但是需要将输出信号反转。常用的驱动芯片有CD4511和74LS47等。
对于共阳型数码管,我们可以通过将对应的数码管段接地,然后给相应的数字段加上高电平信号来点亮该段;而对于反相输出型的数码管,则需要将对应的数码管段接高电平,然后给相应的数字段加上低电平信号来点亮该段。
具体实现方法可以通过使用逻辑门电路和转换器来实现。例如,使用NOT门将输出信号反转,然后再输入到共阳型数码管驱动芯片中,即可实现对非共阴共阳数码管的驱动。
相关问题
共阴数码管改成共阳数码管
将共阴数码管改成共阳数码管可以按照以下步骤实现:
1. 将数码管的引脚连接方式进行更改,将原先连接到共阴极的引脚改为连接到共阳极,将原先连接到共阳极的引脚改为连接到共阴极。
2. 如果原本使用了驱动芯片,则需要更改驱动芯片的输出方式,使其能够驱动共阳数码管。
3. 如果驱动电路中使用了电阻、电容等元件,则需要进行相应的调整,以确保电路正常工作。
需要注意的是,共阴数码管和共阳数码管的极性相反,因此在进行转换时需要注意引脚的连接方式和极性,并且需要重新设计驱动电路。
共阴数码管转共阳数码管程序
将共阴数码管转换为共阳数码管,需要交换每个数码管的阳极和阴极。具体实现方法如下:
1. 定义一个数组,存储共阳数码管的每个数字对应的共阴数码管的编码。
```
int cathodeToAnode[] = {0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F};
```
2. 在显示数字的函数中,使用共阴数码管的编码,按位取反并输出到共阳数码管上。
```
void display(int num) {
int cathodeCode = cathodeToAnode[num];
int anodeCode = ~cathodeCode;
digitalWrite(anodePin1, HIGH);
digitalWrite(anodePin2, LOW);
shiftOut(dataPin, clockPin, MSBFIRST, anodeCode);
delay(5);
digitalWrite(anodePin1, LOW);
digitalWrite(anodePin2, HIGH);
shiftOut(dataPin, clockPin, MSBFIRST, anodeCode);
delay(5);
}
```
这样就完成了共阴数码管转换为共阳数码管的程序。
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)