מהו SIPO Shift Register: מעגל, עבודה, טבלת אמת ויישומיו

נסה את הכלי שלנו לביטול בעיות





באופן כללי, ניתן להגדיר אוגר כהתקן המשמש לאחסון הנתונים הבינאריים, אך אם ברצונך לאחסן מספר סיביות נתונים, נעשה שימוש בסט של כפכפים המחוברים בסדרה. ניתן להזיז את הנתונים המאוחסנים באוגרים על ידי שימוש באוגרי משמרת בצד ימין או בצד שמאל על ידי אספקת פולסי CLK. רישום משמרות היא קבוצה של כפכפים משמש לאחסון מספר סיביות של נתונים. באופן דומה, אוגר משמרת עם n-bits יכול להיווצר על ידי חיבור פשוט של n כפכפים בכל מקום שבו כל כפכפים פשוט מאחסן סיבית נתונים בודדת. ברגע שהאוגר מעביר את הביטים לצד ימין זה אוגר ההזזה הימני ואילו אם הוא עובר לצד השמאלי אז זה ידוע בתור אוגר משמרות שמאלי. מאמר זה דן בסקירה כללית של אחד מסוגי אוגר המשמרות כלומר סדרתי במקביל החוצה אוגר משמרות פנקס משמרות SIPO .


מהו SIPO Shift Register?

אוגר ההזזה המאפשר פלט מקבילי של כניסות טוריות ידוע בתור אוגר ההזזה SIPO. בפנקס SIPO, המונח SIPO מייצג פלט מקבילי של כניסה טורית. בסוג זה של אוגר משמרת, נתוני הקלט ניתנים ביט אחר סיביות באופן סדרתי. עבור כל פעימת שעון, ניתן להזיז את נתוני הקלט בכל ה-FFs במיקום בודד. ה-o/p בכל כפכף יכול להתקבל במקביל.



תרשים מעגל

ה דיאגרמת מעגל רגיסטר SISO מוצג להלן. ניתן לבנות מעגל זה עם כפכפי 4 D המחוברים כפי שמוצג בתרשים שבו אות CLR ניתן בנוסף לאות CLK לכל ה-FFs או לאפס אותם. במעגל הנ'ל, פלט ה-FF הראשון ניתן לכניסת ה-FFs השנייה. כל ארבעת כפכפי ה-D הללו מחוברים זה לזה באופן סדרתי כי אותו אות CLK ניתן לכל כפכפים.

  דיאגרמת רישום SIPO Shift
דיאגרמת רישום SIPO Shift

עבודה של SIPO Shift Register

העבודה של פנקס המשמרות של SIPO היא; שהוא לוקח את קלט הנתונים הסדרתיים מהכפכף הראשון של הצד השמאלי ומייצר פלט נתונים מקביל. מעגל אוגר ההיסט SIPO של 4 סיביות מוצג להלן. הפעולה של אוגר ההיסט הזה היא, ראשית כל הכפכפים מהמעגל מ-FF1 ל-FF4 צריכים להתאפס כך שכל היציאות של FFs כמו QA עד QD יהיו ברמת אפס לוגית כך שאין פלט נתונים מקבילי.



בניית פנקס המשמרות של SIPO מוצגת למעלה. בתרשים, פלט הכפכף הראשון 'QA' מחובר לכניסת הכפכף השני 'DB'. פלט הכפכפים השני 'QB' מחובר לכניסת הכפכפים השלישית DC, ופלט הכפכפים השלישי 'QC' מחובר לכניסת הכפכפים הרביעית 'DD'. כאן, QA, QB, QC ו-QD הם פלטי נתונים.

בתחילה, כל הפלט יהפוך לאפס כך ללא דופק CLK; כל הנתונים יהפכו לאפס. ניקח דוגמה של קלט נתונים של 4 סיביות כמו 1101. אם נפעיל את פעימת השעון הראשון '1' על הכפכף הראשון, הנתונים שיוזנו ל-FF ו-QA יהפכו ל-'1', ונשארו כל היציאות כמו QB , QC ו-QD יהפכו לאפס. אז פלט הנתונים הראשון הוא '1000'

אם נפעיל את דופק השעון השני כ-'0' על הכפכף הראשון אז QA הופך ל-'0', QB הופך ל-'0', QC הופך ל-'0' ו-QD הופך ל-'0'. אז פלט הנתונים השני יהפוך ל-'0100' עקב תהליך ההזזה ימינה.

אם נפעיל את דופק השעון השלישי כ-'1' על הכפכף הראשון אז QA הופך ל-'1', QB הופך ל-'0', QC הופך ל-'1' ו-QD הופך ל-'0'. אז פלט הנתונים השלישי יהפוך ל'1011' עקב תהליך ההזזה ימינה.
אם נפעיל את דופק השעון הרביעי כ-'1' לכפכפך הראשון אז QA הופך ל-'1', QB הופך ל-'1', QC הופך ל-'0' ו-QD הופך ל-'1'. אז פלט הנתונים השלישי יהפוך ל'1101' עקב תהליך ההזזה ימינה.

טבלת אמת SIPO Shift Register

טבלת האמת של אוגר המשמרות של SIPO מוצגת להלן.

  טבלת אמת SIPO Shift Register
טבלת אמת SIPO Shift Register

תרשים תזמון

ה דיאגרמת תזמון של אוגר המשמרות SIPO מוצג להלן.

  תרשים תזמון
תרשים תזמון

כאן אנו משתמשים באות CLK i/p בקצה חיובי. בדופק שעון ראשון נתוני הקלט הופכים ל-QA = '1' וכל שאר הערכים כמו QB, QC ו-QD הופכים ל-'0'. אז הפלט יהפוך ל'1000'. בפולס השעון השני, הפלט יהפוך ל-'0101'. בפעימת השעון השלישית, הפלט יהפוך ל-'1010' ובפעימת השעון הרביעית, הפלט יהפוך ל-'1101'.

SIPO Shift Register Verilog Code

קוד Verilog עבור אוגר המשמרות של SIPO מוצג להלן.

module sipomod(clk,clear, si, po);
קלט clk, si, clear;
פלט [3:0] po;
reg [3:0] tmp;
reg [3:0] po;
תמיד @(posedge clk)
התחל
אם נקי)
tmp <= 4'b0000;
אַחֵר
tmp <= tmp << 1;
tmp[0] <= כן;
po = tmp;
סוֹף
endmodule

74HC595 IC SIPO Shift Register מעגל ופועלו

IC 74HC595 הוא אוגר משמרות טורי של 8 סיביות ביציאה מקבילית, כך שהוא משתמש בכניסות באופן סדרתי ומספק יציאות מקבילות. IC זה כולל 16 פינים וזמין בחבילות שונות כמו SOIC, DIP, TSSOP ו-SSOP.

תצורת הפינים של 74HC595 מוצגת להלן, כאשר כל פין נדון להלן.

פינים 1 עד 7 ו-15 (QB ל-QH & QA): אלו הם ה-o/p Pins המשמשים לחיבור התקני פלט כמו צגי 7 פלחים ונוריות LED.

Pin8 (GND): פין GND זה פשוט מחובר לפין GND של ספק הכוח של המיקרו-בקר.

Pin9 (QH): פין זה משמש לחיבור לפין SER של IC אחר ולתת את אותו אות CLK לשני ה-ICs כך שהם פועלים כמו IC יחיד כולל 16 יציאות.

Pin16 (Vcc): סיכה זו משמשת לחיבור למיקרו-בקר אחרת ספק כוח מכיוון שהוא IC ברמה לוגית של 5V.

Pin14 (BE): זהו ה-Serial i/p Pin שבו הנתונים מוזנים באופן סדרתי לאורך הפין הזה.

Pin11 (SRCLK): זה Shift Register CLK Pin שעובד כמו CLK עבור Shift Register כי האות CLK ניתן בכל פין זה.

Pin12 (RCLK): זהו ה-Register CLK pin המשמש לצפייה ב-o/ps במכשירים המחוברים ל-ICs אלו.

Pin10 (SRCLR): זה Shift Register CLR Pin. סיכה זו משמשת בעיקר כאשר אנו צריכים לנקות את האחסון של האוגר.

Pin13 (OE): זהו ה-o/p Enable Pin. ברגע שפין זה מוגדר ל-HIGH אז אוגר ההזזה מוגדר למצב עכבה גבוה ו-o/ps לא משודרים. אם נציב את הסיכה הזו לנמוכה, נוכל לקבל את ה-o/ps.

74HC595 IC  פועל

תרשים המעגל של 74HC595 IC לשליטה על נוריות ה-LED מוצג להלן. 3- פינים של אוגר המשמרות נחוצים כדי להיות מחוברים ל- Arduino כמו פינים 11, 12 ו- 14. כל שמונת הנוריות יחוברו פשוט ל-IC של אוגר המשמרות הזה.

הרכיבים הנדרשים לתכנון מעגל זה כוללים בעיקר IC 74HC595 Shift Register, Arduino UNO, ספק כוח 5V, Breadboard, 8 נוריות, נגדים של 1KΩ - 8, וחוטי חיבור.

  74HC595 IC Shift Register דיאגרמת מעגלים
74HC595 IC Shift Register דיאגרמת מעגלים

ראשית, ה-Serial i/p Pin של Shift Register צריך להתחבר ל-Pin-4 של Arduino Uno. לאחר מכן, חבר גם את פיני ה-CLK וגם את פיני התפס כמו פינים 11 ו-12 של IC לפינים 5 ו-6 של Arduino Uno בהתאמה. הנוריות מחוברות באמצעות נגדים מגבילי זרם של 1KΩ לפיני 8-o/p של ה-IC. ספק כוח נפרד של 5V משמש עבור IC 74HC595 עם GND משותף לארדואינו לפני אספקת 5V מארדואינו.

קוד

הקוד הפשוט להפעלת 8 נוריות ON בסדרה מוצג להלן.

int latchPin = 5;
int clkPin = 6;
int dataPin = 4;
בייט LED = 0;
void setup()
{
Serial.begin(9600);
pinMode(latchPin, OUTPUT);
pinMode(dataPin, OUTPUT);
pinMode(clkPin, OUTPUT);
}
void loop()
{
int i=0;
LED = 0;
shiftLED();
delay(500);
עבור (i = 0; i < 8; i++)
{
bitSet(LED, i);
Serial.println(LED);
shiftLED();
delay(500);
}
}
void shiftLED()
{
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clkPin, MSBFIRST, LED);
digitalWrite(latchPin, HIGH);
}

פעולתו של מעגל אוגר המשמרות הזה היא שבהתחלה כל 8 נוריות ה-LED יכבו מכיוון ש-LED של משתנה הבתים מוגדר לאפס. כעת, כל סיביות מוגדרות ל-1 עם הפונקציה 'bitSet' ומוזזת החוצה עם הפונקציה 'shiftOut'. באופן דומה, כל LED יופעל באותה סדרה. אם אתה רוצה לכבות את ה-LED, אתה יכול להשתמש בפונקציית 'bitClear'.

IC 74HC595 Shift Register משמש ביישומים שונים כמו שרתים, בקרת LED, בקרה תעשייתית, מכשירים אלקטרוניים, מתגי רשת וכו'.

יישומים

ה יישומים של אוגר העברת יציאה מקבילית של קלט טורי מוצג להלן.

  • בדרך כלל, אוגר המשמרות משמש לאחסון נתונים זמניים, המשמשים כ-ring & Johnson מונה טבעות .
  • אלה משמשים להעברת נתונים ומניפולציה.
  • כפכפים אלה משמשים בעיקר בתוך קווי תקשורת בכל מקום שבו יש צורך בביטול ריבוי של קו נתונים לקווים מקבילים רבים מכיוון שאוגר ההזזה הזה משמש לשינוי הנתונים מטורי לקבילי.
  • אלה משמשים להצפנת נתונים ופענוח.
  • אוגר משמרות זה משמש בתוך CDMA ליצירת קוד PN או מספר רצף רעש פסאודו.
  • אנחנו יכולים להשתמש בהם כדי לעקוב אחר הנתונים שלנו!
  • אוגר המשמרות SIPO משמש ביישומים דיגיטליים שונים להמרת נתונים.
  • לפעמים, סוג זה של אוגר משמרת פשוט מחובר למיקרו-מעבד ברגע שיש צורך בפיני GPIO נוספים.
  • היישום המעשי של רגיסטר SIPO זה הוא לתת את נתוני הפלט של המיקרו-מעבד למחוון פאנל מרוחק.

לפיכך, זוהי סקירה כללית של SIPO פנקס משמרות - מעגל, עבודה, טבלת אמת ודיאגרמת תזמון עם יישומים. רכיבי אוגר המשמרות של SIPO הנפוצים ביותר הם 74HC595, 74LS164, 74HC164/74164, SN74ALS164A, SN74AHC594, SN74AHC595 ו-CD4094. רגיסטרים אלו מהירים מאוד בשימוש, ניתן להמיר את הנתונים בקלות רבה מטורי לקבילי, והעיצוב שלו פשוט. הנה שאלה בשבילך, מהו פנקס המשמרות של PISO.