電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>如何驅(qū)動數(shù)碼管

如何驅(qū)動數(shù)碼管

2022-12-19 | zip | 0.10 MB | 次下載 | 2積分

資料介紹

描述

我們需要的

?
?
?
poYBAGOYczGAY2OdAAdn7zcgq2E938.jpg
?
1 / 2
?

數(shù)碼管驅(qū)動器 V2 - 參數(shù)

  • 22路輸出連接數(shù)碼管陰極(K1-K22)
  • 300V 關(guān)態(tài)最大輸出電壓
  • 兼容所有 5V / 3.3V 設(shè)計(jì)
  • 易于使用 - 只有 3 條控制線
  • 驅(qū)動器可以串聯(lián)

有關(guān) Nixie Tube Driver V2 的更多信息,請訪問項(xiàng)目網(wǎng)站。

poYBAGOYc1eARWztAAubLg3_4n8115.jpg
?

?

如何將數(shù)碼管連接到驅(qū)動器

只有 3 條控制線 DIN、CLK、EN。22路輸出讓您可以連接兩個帶點(diǎn)的數(shù)碼管

poYBAGOYc2KAOhZcAAKYT-qkBEo318.jpg
?
poYBAGOYc4GAa_ZAAAqfHv3lImo398.png
?

阿杜諾代碼

一開始我們必須聲明我們是如何連接各個數(shù)碼管陰極的:

// Bit array for 2 nixie tubes, dot1, dot2, 2 bits for gaps
boolean nixieDisplayArray[24];

// Cathodes assignment to the position in the 24 bit array
// Each cathode of nixie tubes is connected to the corresponding driver output

// Bit numbers
byte nixie1[]={
//   0   1   2   3   4   5   6   7   8   9
0,  1,  2,  3,  4,  5,  6,  7,  8,  9 };
byte nixie2[]={
//   0   1   2   3   4   5   6   7   8   9
10, 11, 12, 13, 14, 15, 16, 17, 18, 19 };
byte dot1 = 20;   // K21 nixie driver output
byte dot2 = 21;   // K22

nixieDisplayArray[24]; 如果驅(qū)動器有 22 個輸出,為什么是 24 位?如果您仔細(xì)查看數(shù)碼驅(qū)動器的內(nèi)部原理圖,您會注意到其中一個移位寄存器有兩個未連接的輸出。如果我們想使用多個串聯(lián)的驅(qū)動程序,我們必須填補(bǔ)這個空白,以便將數(shù)據(jù)正確傳輸?shù)胶罄m(xù)驅(qū)動程序(寄存器)。

移位寄存器控制程序。您還可以使用任何庫來控制移位寄存器,但為了更好地理解該程序包含控制寄存器所需的所有步驟,而無需使用該庫。

void ShiftOutData()
{
// Ground EN pin and hold low for as long as you are transmitting
digitalWrite(EN_PIN, 0);
// Clear everything out just in case to
// prepare shift register for bit shifting
digitalWrite(DIN_PIN, 0);
digitalWrite(CLK_PIN, 0);
// Send data to the nixie drivers
for (int i = 23; i >= 0; i--)
{
// Set high only the bit that corresponds to the current nixie digit
digitalWrite(DIN_PIN, nixieDisplayArray[i]);
// Register shifts bits on upstroke of CLK pin
digitalWrite(CLK_PIN, 1);
// Set low the data pin after shift to prevent bleed through
digitalWrite(CLK_PIN, 0);
}
// Return the EN pin high to signal chip that it
// no longer needs to listen for data
digitalWrite(EN_PIN, 1);
// Stop shifting
digitalWrite(CLK_PIN, 0);
}

核心控制代碼:

void NixieDisplay(byte digit1, byte digit2)
{
// Convert the desired numbers to the bit numbers for the nixieDisplayArray[]
digit1 = nixie1[digit1];
digit2 = nixie2[digit2];
// Clear bit array except dot1 and dot2 bits
for (int i = 23; i >= 0; i--)
{
if(i != dot1 || i != dot2) nixieDisplayArray[i] = 0;
}
// Set the bits corresponding to the nixie tubes cathodes
nixieDisplayArray[digit1] = 1;
nixieDisplayArray[digit2] = 1;
ShiftOutData();
}

nixieDisplayArray[] - 這是一個存儲所有 nixie 控制器輸出當(dāng)前狀態(tài)的位數(shù)組。如果要獨(dú)立控制管和點(diǎn),則需要存儲輸出的當(dāng)前狀態(tài)。

// SetDot (dotNumber = 1/2, dotState = 0/1)
void SetDot(byte dotNumber, boolean dotState)
{
if(dotNumber == 1)
{
if(dotState == HIGH) nixieDisplayArray[dot1] = 1;
else nixieDisplayArray[dot1] = 0;
}
if(dotNumber == 2)
{
if(dotState == HIGH) nixieDisplayArray[dot2] = 1;
else nixieDisplayArray[dot2] = 0;
}
ShiftOutData();
}

如何顯示“2.0”

現(xiàn)在最后一步是最簡單的部分:

void loop ()
{
// NixieDisplay(digit1, digit2);
NixieDisplay(2, 0);
// SetDot (dotNumber = 1/2, dotState = 0/1)
SetDot(1, HIGH);
delay(1000);
}
poYBAGOYcxaAOrdIAAeJIGh3itk983.jpg
?
?
?
?
pYYBAGOYc9OAE8LeAA8JgxkR03Y642.jpg
?
1 / 2
?

有關(guān) Nixie Tube Driver V2 的更多信息,請訪問項(xiàng)目網(wǎng)站。


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)