8051 में विभिन्न प्रकार के रजिस्टरों का उपयोग माइक्रोकंट्रोलर

समस्याओं को खत्म करने के लिए हमारे साधन का प्रयास करें





रजिस्टर इसका मुख्य भाग है माइक्रोकंट्रोलर और प्रोसेसर डेटा एकत्र करने और संग्रहीत करने का एक तेज़ तरीका प्रदान करता है। अगर हम जोड़-घटाव, और इसी तरह घटाव करके किसी कंट्रोलर या प्रोसेसर के साथ डेटा में हेरफेर करना चाहते हैं, तो हम ऐसा सीधे मेमोरी में नहीं कर सकते, लेकिन इसके लिए डेटा को प्रोसेस करने और स्टोर करने की जरूरत होती है। माइक्रोकंट्रोलर्स में कई प्रकार के रजिस्टर होते हैं जिन्हें उनकी सामग्री या निर्देशों के अनुसार वर्गीकृत किया जा सकता है जो उनमें संचालित होते हैं।

8051 माइक्रोकंट्रोलर में विभिन्न प्रकार के रजिस्टर

रजिस्टर करें




एक सीपीयू में एक रजिस्टर एक छोटी सी जगह है जो विभिन्न परिचालनों जैसे कि जोड़ और गुणा करने के लिए उपयोग किए जाने वाले डेटा की छोटी मात्रा को संग्रहीत कर सकता है और परिणामी डेटा को मुख्य मेमोरी पर लोड करता है। रजिस्टरों में मेमोरी लोकेशन का पता होता है जहां डेटा को स्टोर करना होता है। रजिस्टर का आकार इसके लिए बहुत महत्वपूर्ण है आधुनिक नियंत्रक । उदाहरण के लिए, 64-बिट रजिस्टर के लिए, एक सीपीयू दो 32-बिट संख्याओं को जोड़ने की कोशिश करता है और 64-बिट परिणाम देता है।

रजिस्टरों के प्रकार

8051 माइक्रोकंट्रोलर में मुख्य रूप से दो प्रकार के रजिस्टर होते हैं:



  • सामान्य प्रयोजन रजिस्टर (बाइट पता योग्य रजिस्टर)
  • विशेष समारोह रजिस्टर (बिट पते योग्य रजिस्टर)
8051 रैम मेमोरी

8051 रैम मेमोरी

8051 माइक्रोकंट्रोलर 256 बाइट्स वाले RAM होते हैं, जिन्हें दो तरीकों से विभाजित किया जाता है, जैसे सामान्य प्रयोजन के लिए 128 बाइट्स और विशेष फ़ंक्शन रजिस्टरों (SFR) मेमोरी के लिए 128 बाइट्स। सामान्य उद्देश्य के लिए उपयोग की जाने वाली मेमोरी को RAM के रूप में कहा जाता है, और SFR के लिए उपयोग की जाने वाली मेमोरी में सभी परिधीय संबंधित रजिस्टर जैसे Accumulator, ’B’ रजिस्टर, टाइमर या काउंटर शामिल होते हैं और संबंधित रजिस्टरों को बाधित करते हैं।

सामान्य प्रयोजन रजिस्टर

सामान्य प्रयोजन स्मृति

सामान्य प्रयोजन स्मृति

सामान्य-उद्देश्य वाली मेमोरी को 8051 माइक्रोकंट्रोलर्स की रैम के रूप में कहा जाता है, जो 3 क्षेत्रों जैसे कि बैंकों, बिट-एड्रेसेबल एरिया, और स्क्रैच-पैड क्षेत्र में विभाजित है। बैंकों में R0-R7 जैसे अलग-अलग सामान्य प्रयोजन वाले रजिस्टर होते हैं, और ऐसे सभी रजिस्टर बाइट-एड्रेसेबल रजिस्टर होते हैं जो केवल 1-बाइट डेटा को स्टोर या हटाते हैं।


बैंक और रजिस्टर

B0, B1, B2 और B3 बैंकों के लिए खड़े हैं, और प्रत्येक बैंक में-R0 'से' R7 'तक के आठ सामान्य-उद्देश्य रजिस्टर हैं। ये सभी रजिस्टर बाइट-एड्रेसेबल हैं। सामान्य प्रयोजन के रजिस्टरों के बीच डेटा ट्रांसफर संभव नहीं है। इन बैंकों को प्रोग्राम स्टेटस वर्ड (PSW) रजिस्टर द्वारा चुना जाता है।

सामान्य प्रयोजन रजिस्टर

सामान्य प्रयोजन रजिस्टर

PSW (प्रोग्राम स्टेटस वर्ड) रजिस्टर

PSW रजिस्टर एक बिट और बाइट-एड्रेसेबल रजिस्टर है। यह रजिस्टर नियंत्रक में किए गए ऑपरेशन की स्थिति को दर्शाता है। PSW रजिस्टर एक RS1 और RS0 द्वारा बैंक चयन को निर्धारित करता है, जैसा कि नीचे दिखाया गया है। PSW का भौतिक पता D0h से शुरू होता है और अलग-अलग बिट्स D0h से D7h तक पहुंच जाते हैं।

PSW रजिस्टर

PSW रजिस्टर

कैरी फ्लैग (C) : कैरी ध्वज का पता D7 है। 7 वें स्थान से बिट उत्पन्न होने पर यह कैरी फ्लैग प्रभावित होता है।
जब C = 0 को रीसेट करें
सी = 1 कैरी सेट

ध्वज ले जाना

ध्वज ले जाना

सहायक ध्वज (एसी) : सहायक कैरी का पता D5 है। यह सहायक कैरी तब प्रभावित होती है जब थर्ड पोजीशन से 4 वें पोजिशन में थोड़ा सा उत्पन्न होता है।
एसी = 0 सहायक रीसेट है
एसी = 1 सहायक सेट है

सहायक कैरी (AC)

सहायक कैरी (AC)

ओवरफ्लो फ्लैग (OV) : अतिप्रवाह ध्वज का पता D2 है। जब 6 ठी स्थिति से 7 वीं स्थिति में थोड़ा सा उत्पन्न होता है, तो अतिप्रवाह झंडा प्रभावित होता है।

OV = 0 ओवरफ़्लो ध्वज रीसेट करता है
OV = 1 ओवरफ़्लो ध्वज सेट

ओवरफ्लो झंडा

ओवरफ्लो झंडा

समानता ध्वज (P) : समता ध्वज का पता D0 है। अंकगणितीय संचालन करते समय, यदि परिणाम 1 है, तो समता ध्वज को सेट किया गया है - अन्यथा, रीसेट करें।
RS1 और RS0
RS1 और RS0, PSW रजिस्टर में बिट्स, RAM में विभिन्न मेमोरी लोकेशन (bank0 से bank4) का चयन करने के लिए उपयोग किए जाते हैं।

बैंक चयन रजिस्टर

बैंक चयन रजिस्टर

निम्नलिखित इस रजिस्टर का उपयोग करने का एक उदाहरण है।

निम्नलिखित उदाहरण दो संख्याओं को जोड़ते हैं और फिर एक विधानसभा स्तर कार्यक्रम का उपयोग करके बैंक 1 रजिस्टर में अंतिम मूल्य का भंडारण करते हैं।

संगठन 0000h
MOV PSW, # 00 ह
एमओवी ए, 15
एडीडी ए, 20
एमओवी 00 एच, ए
समाप्त

Bank0 रजिस्टर R0-R5 में 6 प्राकृतिक संख्याओं को स्थानांतरित करने के लिए असेंबली प्रोग्राम

संगठन 0000h (पतों की घोषणा शुरू करना)
MOV PSW, # 00h (बैंक 0 मेमोरी खोलें)
MOV r0, # 00h (बैंक 0 मेमोरी का पता शुरू)
MOV r1, # 01h
MOV r2, # 02 h
MOV r2, # 03 h
एमओवी आर 3, # 04 एच
MOV r4, # 05h
समाप्त

Bank1 रजिस्टर R0-R7 में 6 प्राकृतिक संख्याओं को स्थानांतरित करने के लिए असेंबली प्रोग्राम

संगठन 0000h (पतों की घोषणा शुरू करना)
MOV PSW, # 08h (बैंक 1 मेमोरी खोलें)
MOV r0, 00h (बैंक 1 मेमोरी में मूल्य भेजें)
एमओवी आर 1, 02 एच
एमओवी आर 2, 02 एच
एमओवी आर 2, 03 एच
एमओवी आर 3, 04 एच
एमओवी आर 4, 05 एच
एमओवी आर 5, 06 एच
एमओवी आर 6, 07 एच
एमओवी आर 7, 08 एच
समाप्त

विशेष समारोह रजिस्टर (SFR)

विशेष फ़ंक्शन रजिस्टर ऊपरी रैम हैं 8051 में माइक्रोकंट्रोलर । इन रजिस्टरों में P0, P1, P2, P3, टाइमर या काउंटर, सीरियल पोर्ट जैसे सभी परिधीय संबंधित रजिस्टर होते हैं, और इंटरप्ट से संबंधित रजिस्टर होते हैं। SFR मेमोरी एड्रेस 80h से FFh तक शुरू होता है। SFR रजिस्टर बिट-एड्रेस रजिस्टर और बाइट-एड्रेस रजिस्टर द्वारा कार्यान्वित किया जाता है।

विशेष समारोह रजिस्टर (SFR)


विशेष समारोह रजिस्टर (SFR)

संचायक, बी रजिस्टर, पीओ, पी 1, पी 2, पी 3, आईई रजिस्टर बिट-एड्रेसेबल रजिस्टर हैं जो सभी बाइट-एड्रेसेबल रजिस्टर हैं।

बिजली संचयक यंत्र

संचायक जिसे एसीसी या ए के रूप में भी जाना जाता है, थोड़ा सा है और साथ ही संचयकर्ता के पते से एक बाइट-पता योग्य रजिस्टर है। यदि आप एक बिट-एड्रेसेबल रजिस्टर का उपयोग करना चाहते हैं, तो आप रजिस्टर के एक बिट (E0) का उपयोग कर सकते हैं और आप एक 8-बिट संचायक को बाइट-एड्रेसेबल रजिस्टर के रूप में उपयोग कर सकते हैं। संचायक अधिकांश अंकगणितीय और तार्किक परिचालनों के परिणाम रखता है।

संचयकर्ता रजिस्टर

संचयकर्ता रजिस्टर

एक Accumulator के साथ इस्तेमाल किया घटाव के लिए विधानसभा कार्यक्रम

संगठन 0000h
MOV R0, # 09h
MOV A, # 03h (1byte data)
SUBB A, 01h (1byte data)
समाप्त

बी-रजिस्टर

बी-रजिस्टर एक बिट और बाइट-एड्रेसेबल रजिस्टर है। आप एक भौतिक पते F0h द्वारा 1-बिट या सभी 8-बिट्स तक पहुंच सकते हैं। मान लीजिए कि एक बिट 1 का उपयोग करने के लिए, हमें f1 का उपयोग करना होगा। बी रजिस्टर केवल गुणन और विभाजन कार्यों के लिए उपयोग किया जाता है।

बी-रजिस्टर

बी-रजिस्टर

बी-रजिस्टर के साथ उपयोग किए जाने वाले गुणन के लिए विधानसभा कार्यक्रम

संगठन 0000h
एमओवी ए, # 09 एच
एमओवी बी, # 03 एच
MUL A, B (A में संग्रहीत अंतिम मान)
समाप्त
डिवीजन के लिए विधानसभा कार्यक्रम का उपयोग बी-रजिस्टर के साथ किया गया
संगठन 0000h
एमओवी ए, # 09 एच
एमओवी बी, # 03 एच
डीआईसी ए, बी (अंतिम मूल्य ए में संग्रहीत)
समाप्त

पोर्ट रजिस्टर

8051 माइक्रोकंट्रोलर में 4-इनपुट और आउटपुट पोर्ट (P0, P1, P2, और P3) या 32-I / O पिन होते हैं। प्रत्येक पिन है एक ट्रांजिस्टर के साथ बनाया गया है और पी रजिस्टर। पिन विन्यास एक माइक्रोकंट्रोलर के लिए बहुत महत्वपूर्ण है जो रजिस्टरों के तर्क राज्यों पर निर्भर करता है। 1 या आउटपुट 0 द्वारा दिए गए इनपुट के रूप में पिन कॉन्फ़िगरेशन तर्क स्थिति पर निर्भर करता है। यदि तर्क 1 पी रजिस्टर के बिट पर लागू होता है, तो आउटपुट ट्रांजिस्टर उपयुक्त पिन से स्विच करता है जो इनपुट पिन के रूप में कार्य करता है।

8051 के पोर्ट रजिस्टर

8051 के पोर्ट रजिस्टर

पोर्ट 0 के एल ई डी टॉगल करने के लिए विधानसभा कार्यक्रम

ओआरजी 0000h
RETURN: MOV P0, # 00h
ACALL DEL1
MOV P0, # 0FF
ACALL DEL1
SJMP RURURN
DEL1: MOV R2, # 200
सामने: DJNZ R0, # 230
DJNZ R2, DEL
सही
समाप्त

काउंटर और रजिस्टर

कई माइक्रोकंट्रोलर में एक या अधिक होते हैं टाइमर और काउंटर । कीमती समय देरी उत्पन्न करने के लिए टाइमर का उपयोग किया जाता है और टाइमर के लिए स्रोत एक क्रिस्टल थरथरानवाला है। काउंटरों का उपयोग बाहरी घटनाओं की संख्या की गणना करने के लिए किया जाता है - उदाहरण के लिए, उद्देश्य काउंटर , और काउंटरों के लिए स्रोत काउंटर पिन पर लागू बाहरी दालों हैं।

8051 माइक्रोकंट्रोलर में 16 16-बिट टाइमर और टाइमर 0 और टाइमर जैसे काउंटर होते हैं। दोनों टाइमर्स में 16-बिट रजिस्टर होता है जिसमें लोअर बाइट टीएल में संग्रहित होती है और उच्च बाइट टीएच में संग्रहित होती है। टाइमर को एक काउंटर के साथ-साथ टाइमिंग ऑपरेशन के लिए भी इस्तेमाल किया जा सकता है जो काउंटर दालों को घड़ी के दालों के स्रोत पर निर्भर करता है।

8051 माइक्रोकंट्रोलर में काउंटर्स और टाइमर में दो विशेष फ़ंक्शन रजिस्टर होते हैं: TMOD (टाइमर मोड रजिस्टर) और TCON (टाइमर नियंत्रण रजिस्टर) , जो टाइमर और काउंटरों को सक्रिय करने और कॉन्फ़िगर करने के लिए उपयोग किया जाता है।

शिफ्ट रजिस्टर के प्रकार

शिफ्ट रजिस्टर एक प्रकार के अनुक्रमिक तर्क सर्किट हैं जो मुख्य रूप से डिजिटल डेटा के भंडारण के लिए उपयोग किए जाते हैं। शिफ्ट रजिस्टर बिट-एड्रेसेबल रजिस्टर होते हैं जो केवल एक बिट डेटा स्टोर करते हैं। शिफ्ट रजिस्टर का निर्माण फ्लिप-फ्लॉप के साथ किया जाता है - फ्लिप-फ्लॉप का एक समूह एक श्रृंखला के रूप में जुड़ा हुआ है ताकि एक फ्लिप-फ्लॉप से ​​आउटपुट अगले फ्लिप-फ्लॉप का इनपुट बन जाए।

सभी फ्लिप-फ्लॉप घड़ी संकेतों द्वारा संचालित होते हैं जो डी-फ्लिप-फ्लैप द्वारा कार्यान्वित किए जाते हैं। शिफ्ट रजिस्टर मुख्य रूप से उपयोग किए जाते हैं धारावाहिक संचार

इन्हें 4- प्रकारों में वर्गीकृत किया गया है:

  • सीरियल आउट में सीरियल (SISO)
  • समानांतर आउट (SIPO) में सीरियल
  • सीरियल आउट (PISO) में समानांतर
  • समानांतर आउट (PIPO) में समानांतर
डी- फ्लिपफ्लॉप रजिस्टर

डी- फ्लिपफ्लॉप रजिस्टर

8051 माइक्रोकंट्रोलर में ये सभी विभिन्न प्रकार के रजिस्टर हैं। हमें उम्मीद है कि हमने प्रत्येक रजिस्टर के लिए उपयुक्त कार्यक्रम के साथ आपको प्रासंगिक सामग्री सफलतापूर्वक दे दी है। इसके अलावा, कई अन्य रजिस्टरों के कोडिंग को जानने के लिए किसी भी प्रकार की सहायता के लिए, आप नीचे टिप्पणी करके हमसे संपर्क कर सकते हैं।

फ़ोटो क्रेडिट: