Robofun 機器人論壇

標題: 74HC595的問題 [打印本頁]

作者: a125125460    時間: 2012-4-19 22:27
標題: 74HC595的問題
本帖最後由 a125125460 於 2012-4-19 22:29 編輯

小弟剛接觸arduino不久,正在練習一些程式現在小弟想要做一個按鈕的計數器並且用七段顯示器顯示,
目前已經能做到一位元的0~9,
小弟想要做二位元甚至到五位元的計次,
小弟目前打算用74HC595去接七段顯示器,
可是這就遇到了一些我不確定的問題....


void sevenSegWrite(byte digit) {
// 送資料前要先把 latchPin 拉成低電位
digitalWrite(latchPin, LOW);


  // 送出數字的位元資料 (bit pattern)

shiftOut(dataPin, clockPin, LSBFIRST, seven_seg_digits[digit]);




  // 送完資料後要把 latchPin 拉回成高電位


digitalWrite(latchPin, HIGH);

}

以上是範例的程式,這是控制一顆七段顯示器時的設定,

只要sevenSegWrite(digit); 就可以控制七段顯示器顯示的數字,
我的問題就是,當我要控制兩顆或者以上顆七段顯示器時,
我該怎麼去變更........
作者: xu3u4rmp4    時間: 2012-4-19 22:57
本帖最後由 xu3u4rmp4 於 2012-4-19 23:11 編輯

1.latchPin 拉成低電位
2.送出數字的位元資料1
3.送出數字的位元資料2
4. 送完資料後要把 latchPin 拉回成高電位

照這個流程試試  控制2顆74595的

因為它是移位暫存器 所以連續出資料即可




作者: a125125460    時間: 2012-4-19 23:02
那呼叫的時候要怎麼呼叫....
sevenSegWrite(digit)<<<<是一顆
那另外一顆怎麼辦?
後還要分別做不同工作.......
作者: xu3u4rmp4    時間: 2012-4-19 23:11
void sevenSegWrite(byte digit1,byte digit2) //這一行Arduino的語法這樣寫我不知道可以嗎,但因該可以知道我要表達的意思吧
{
// 送資料前要先把 latchPin 拉成低電位
digitalWrite(latchPin, LOW);

// 送出數字的位元資料 (bit pattern)
shiftOut(dataPin, clockPin, LSBFIRST, seven_seg_digits[digit1]);
shiftOut(dataPin, clockPin, LSBFIRST, seven_seg_digits[digit2]);

// 送完資料後要把 latchPin 拉回成高電位
digitalWrite(latchPin, HIGH);
}
作者: coopermaa    時間: 2012-4-20 15:04
xu3u4rmp4 說的沒錯

原本的 sevenSegWrite() 函式只顯示一個位數,要顯示多個位數,sevenSegWrite() 函式就得改一下才行
作者: naga    時間: 2012-4-20 15:33

這線路可以參考看看
作者: pizg    時間: 2012-4-20 19:16
小弟剛接觸arduino不久,正在練習一些程式現在小弟想要做一個按鈕的計數器並且用七段顯示器顯示,
目前已經 ...
a125125460 發表於 2012-4-19 22:27



    Cooper Maa大大的網誌非常棒,
那兒有74HC595詳細做法,
你可以去瞧瞧.
作者: a125125460    時間: 2012-4-22 04:58
我就是看那邊的.....他那邊只有單顆七段顯示器的....
然後我有上網找datasheet....看不懂....
目前手邊只有一顆74595,禮拜一才會拿到其他顆的....
作者: pizg    時間: 2012-4-22 16:11
本帖最後由 pizg 於 2012-4-22 16:22 編輯
我就是看那邊的.....他那邊只有單顆七段顯示器的....
然後我有上網找datasheet....看不懂....
目前手邊只 ...
a125125460 發表於 2012-4-22 04:58



    Cooper Maa大那兒也有2顆74HC595的範例,
在該篇網誌內的意見欄, 是我在他的協助下完成3顆74HC595的實驗,
程式原始碼也都貼在上面了, 你去看看吧.

>>> http://coopermaa2nd.blogspot.com/2010/12/arduino-lab12-74hc595-16-led.html




歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/) Powered by Discuz! X3.2