நமது அன்றாட வாழ்க்கையில் பாதுகாப்பு என்பது ஒரு முக்கிய கவலையாக உள்ளது, மேலும் இந்த பாதுகாப்பு அமைப்புகளில் டிஜிட்டல் பூட்டுகள் ஒரு முக்கிய அங்கமாகிவிட்டன. எங்கள் இடத்தைப் பாதுகாக்க பல வகையான தொழில்நுட்பங்கள் உள்ளன, அதாவது பி.ஐ.ஆர் அடிப்படையிலான பாதுகாப்பு அமைப்புகள், ஆர்.எஃப்.ஐ.டி அடிப்படையிலான பாதுகாப்பு அமைப்பு, லேசர் பாதுகாப்பு அலாரங்கள், பயோ மேட்ரிக்ஸ் அமைப்புகள் போன்றவை. இப்போது கூட, எங்கள் ஸ்மார்ட் போன்களைப் பயன்படுத்தி இயக்கக்கூடிய டிஜிட்டல் பூட்டுகள் உள்ளன, அதாவது இல்லை வெவ்வேறு விசைகளை வைத்திருக்க வேண்டியது அவசியம், ஒரு ஸ்மார்ட் போன் எல்லா பூட்டுகளையும் இயக்க முடியும், இந்த கருத்து இன்டர்நெட் ஆஃப் திங்ஸை அடிப்படையாகக் கொண்டது.
இந்த திட்டத்தில், 8051 மைக்ரோகோன்டோர்லரைப் பயன்படுத்தி ஒரு எளிய எலக்ட்ரானிக் குறியீடு பூட்டை விளக்கினோம், இது ஒரு முன் வரையறுக்கப்பட்ட குறியீட்டால் மட்டுமே திறக்க முடியும், நாம் தவறான குறியீட்டை உள்ளிட்டால், கணினி பஸரை சைரன் மூலம் எச்சரிக்கிறது. Arduino ஐப் பயன்படுத்தி டிஜிட்டல் பூட்டை ஏற்கனவே உருவாக்கியுள்ளோம்.
வேலை விளக்கம்:
இந்த அமைப்பு முக்கியமாக AT89S52 மைக்ரோகண்ட்ரோலர், கீபேட் தொகுதி, பஸர் மற்றும் எல்சிடி ஆகியவற்றைக் கொண்டுள்ளது. கடவுச்சொல் படிவம் விசைப்பலகையை எடுப்பது, கடவுச்சொற்களை முன் வரையறுக்கப்பட்ட கடவுச்சொல்லை ஒப்பிடுவது, பஸரை ஓட்டுவது மற்றும் எல்சிடி காட்சிக்கு நிலையை அனுப்புவது போன்ற முழுமையான செயல்முறைகளை At89s52 மைக்ரோகண்ட்ரோலர் கட்டுப்படுத்துகிறது. கடவுச்சொல்லை மைக்ரோகண்ட்ரோலரில் செருகுவதற்கு கீபேட் பயன்படுத்தப்படுகிறது. தவறான கடவுச்சொல்லைக் குறிக்க பஸர் பயன்படுத்தப்படுகிறது, மேலும் அதில் நிலை அல்லது செய்திகளைக் காண்பிக்க எல்சிடி பயன்படுத்தப்படுகிறது. NPN டிரான்சிஸ்டரைப் பயன்படுத்தி Buzzer உள்ளடிக்கிய இயக்கியைக் கொண்டுள்ளது.

கூறுகள்:
- 8051 மைக்ரோகண்ட்ரோலர் (AT89S52)
- 4 எக்ஸ் 4 கீபேட் தொகுதி
- பஸர்
- 16x2 எல்சிடி
- மின்தடை (1 கி, 10 கி)
- புல்லப் மின்தடை (10 கே)
- மின்தேக்கி (10uf)
- சிவப்பு தலைமையில்
- ரொட்டி பலகை
- ஐசி 7805
- 11.0592 மெகா ஹெர்ட்ஸ் கிரிஸ்டல்
- மின்சாரம்
- கம்பிகளை இணைக்கிறது
மல்டிபிளெக்ஸிங் நுட்பத்தைப் பயன்படுத்தி 4 எக்ஸ் 4 கீபேட் மேட்ரிக்ஸிலிருந்து உள்ளீட்டை எடுத்துக்கொள்வது:
இந்த சுற்றுவட்டத்தில், கணினியில் கடவுச்சொல்லை உள்ளிடுவதற்கு, 8051 மைக்ரோகண்ட்ரோலருடன் விசைப்பலகையை இடைமுகப்படுத்த மல்டிபிளெக்சிங் நுட்பத்தைப் பயன்படுத்தினோம். இங்கே நாம் 16 விசைகள் கொண்ட 4x4 விசைப்பலகையைப் பயன்படுத்துகிறோம். நாம் 16 விசைகளைப் பயன்படுத்த விரும்பினால், 89s52 உடன் இணைக்க 16 முள் தேவை, ஆனால் மல்டிபிளெக்சிங் நுட்பத்தில் 16 விசைகளை இடைமுகப்படுத்த 8 ஊசிகளை மட்டுமே பயன்படுத்த வேண்டும். எனவே இது கீபேட் தொகுதியை இடைமுகப்படுத்த ஒரு சிறந்த வழியாகும்.

உள்ளீடு அல்லது கடவுச்சொல்லை வழங்க மைக்ரோகண்ட்ரோலருடன் பயன்படுத்தப்படும் ஊசிகளின் எண்ணிக்கையைக் குறைக்க மல்டிபிளெக்சிங் நுட்பம் மிகவும் திறமையான வழியாகும். அடிப்படையில் இந்த நுட்பம் இரண்டு வழிகளில் பயன்படுத்தப்படுகிறது - ஒன்று வரிசை ஸ்கேனிங் மற்றும் மற்றொன்று நெடுவரிசை ஸ்கேனிங்.
இங்கே நாம் வரிசை ஸ்கேனிங்கை விளக்கப் போகிறோம்:
முதலில் நாம் விசைப்பலகையின் தொகுதிக்கு 8 முள் வரையறுக்க வேண்டும். இதில் முதல் 4 ஊசிகளும் நெடுவரிசையும் கடைசி 4 ஊசிகளும் வரிசைகளாகும்.


வரிசை ஸ்கேனிங்கிற்கு நாம் நெடுவரிசை ஊசிகளுக்கு தரவு அல்லது சமிக்ஞையை கொடுக்க வேண்டும் மற்றும் வரிசை முள் இருந்து அந்த தரவு அல்லது சமிக்ஞையைப் படிக்க வேண்டும். இப்போது நெடுவரிசை ஊசிகளுக்கு கீழே தரவை தருகிறோம் என்று வைத்துக்கொள்வோம்:
சி 1 = 0;
சி 2 = 1;
சி 3 = 1;
சி 4 = 1;
இந்தத் தரவை வரிசை ஊசிகளில் படிக்கிறோம் (இயல்பாகவே வரிசை ஊசிகளை இழுக்கும் மின்தடையின் காரணமாக அதிகம்).
பயனர் முக்கிய எண்ணை '1' ஐ அழுத்தினால், R1 HIGH ஐ LOW ஆக மாற்றுகிறது என்றால் R1 = 0; பயனர் '1' விசையை அழுத்தியதை கட்டுப்படுத்தி புரிந்துகொள்கிறது. மேலும் இது எல்சிடியில் '1' ஐ அச்சிட்டு, '1' ஐ வரிசையில் சேமிக்கும். எனவே R1 இல் இந்த உயர் முதல் குறைந்த மாற்றம், நெடுவரிசை 1 உடன் தொடர்புடைய சில விசைகள் அழுத்தப்பட்டிருப்பதை கட்டுப்படுத்தி புரிந்துகொள்ளும் முக்கிய விஷயம்.
இப்போது பயனர் முக்கிய எண் '2' ஐ அழுத்தினால், R1 HIGH இல் C1 மற்றும் R1 இரண்டும் ஏற்கனவே HIGH இல் இருக்கும். எனவே எந்த மாற்றமும் இருக்காது, இதன் பொருள் மைக்ரோகண்ட்ரோலர் ஒன்று நெடுவரிசையில் எதுவும் அழுத்தப்படவில்லை என்பதை புரிந்துகொள்கிறது. அதேபோல் இந்த அதிபர் மற்ற எல்லா ஊசிகளுக்கும் செல்கிறார். எனவே இந்த படி கட்டுப்படுத்தி நெடுவரிசை ஒன்றில் உள்ள விசைகளுக்கு மட்டுமே காத்திருக்கிறது: '1', '4', '7' மற்றும் '*'.
இப்போது நாம் மற்ற நெடுவரிசைகளில் (கோல் 2 ஐப் போல) விசைகளைக் கண்காணிக்க விரும்பினால், நெடுவரிசை ஊசிகளில் தரவை மாற்ற வேண்டும்:
சி 1 = 1;
சி 2 = 0;
சி 3 = 1;
சி 4 = 1;
இந்த நேர கட்டுப்படுத்தி நெடுவரிசை இரண்டில் உள்ள விசைகளுக்கு மட்டுமே காத்திருக்கிறது: '2', '5', '8'மற்றும்' 0 ', ஏனெனில் நெடுவரிசை இரண்டு விசைகள் அழுத்தும் போது மட்டுமே மாற்றம் (HIGH to LOW) நிகழ்கிறது. நாம் 1, 3 அல்லது 4 இல் எந்த விசையையும் அழுத்தினால் எந்த மாற்றமும் ஏற்படாது, ஏனெனில் இந்த நெடுவரிசைகள் HIGH இல் உள்ளன, மற்றும் வரிசைகள் ஏற்கனவே HIGH இல் உள்ளன.
எனவே, C3 மற்றும் C4 நெடுவரிசையில் உள்ள விசைகளையும் ஒரு நேரத்தில் 0 ஆக மாற்றுவதன் மூலம் கண்காணிக்க முடியும். விரிவான விளக்கத்தை இங்கே பாருங்கள்: 8051 உடன் கீபேட் இடைமுகம். தர்க்கத்தை சரியாகப் புரிந்துகொள்ள கீழேயுள்ள குறியீடு பிரிவின் வழியாகவும் செல்லுங்கள்.
சுற்று விளக்கம்:
8051 ஐப் பயன்படுத்தி இந்த டிஜிட்டல் பூட்டுக்கான சுற்று வரைபடம் கீழே காட்டப்பட்டுள்ளது, அதை எளிதாக புரிந்து கொள்ள முடியும். கீபேட் தொகுதியின் நெடுவரிசை ஊசிகளை நேரடியாக முள் P0.0, P0.1, P0.2, P0.3 உடன் இணைக்கப்பட்டுள்ளது மற்றும் வரிசை ஊசிகளும் 89s52 மைக்ரோகண்ட்ரோலரின் போர்ட் 0 இன் P0.4, P0.5, P0.6, P0.7 உடன் இணைக்கப்பட்டுள்ளன. ஒரு 16x2 எல்சிடி 89 ப 52 மைக்ரோகண்ட்ரோலருடன் 4 பிட் பயன்முறையில் இணைக்கப்பட்டுள்ளது. கட்டுப்பாட்டு முள் RS, RW மற்றும் En ஆகியவை பின் P1.0, GND மற்றும் P1.2 உடன் நேரடியாக இணைக்கப்பட்டுள்ளன. தரவு முள் D4-D7 89s52 இன் P1.4, P1.5, P1.6 மற்றும் P1.7 உடன் இணைக்கப்பட்டுள்ளது. ஒரு மின்தடையின் மூலம் முள் P2.6 இல் ஒரு பஸர் இணைக்கப்பட்டுள்ளது.

நிரல் விளக்கம்:
நிரலில் ஒரு முன் வரையறுக்கப்பட்ட கடவுச்சொல்லை நாங்கள் பயன்படுத்தியுள்ளோம், இந்த கடவுச்சொல்லை கீழேயுள்ள குறியீட்டில் உள்ள பயனரால் வரையறுக்க முடியும். பயனர் கணினியில் கடவுச்சொல்லை உள்ளிடும்போது, பின்னர் கணினி பயனர் உள்ளிட்ட கடவுச்சொல்லை நிரல் குறியீட்டில் சேமிக்கப்பட்ட அல்லது முன் வரையறுக்கப்பட்ட கடவுச்சொல்லுடன் ஒப்பிடுகிறது. ஒரு போட்டி ஏற்பட்டால், எல்சிடி “அணுகல் தரப்படுத்தப்பட்டதாக” காண்பிக்கும், கடவுச்சொல் பொருந்தவில்லை என்றால் எல்சிடி “அணுகல் மறுக்கப்பட்டது” என்பதைக் காண்பிக்கும், மேலும் பஸர் தொடர்ந்து சிறிது நேரம் பீப் செய்யும். இங்கே நாம் string.h நூலகத்தைப் பயன்படுத்தினோம். இந்த நூலகத்தைப் பயன்படுத்துவதன் மூலம் “strncmp” செயல்பாட்டைப் பயன்படுத்தி இரண்டு சரங்களை ஒப்பிடலாம் அல்லது பொருத்தலாம்.
நிரலில், முதலில் நாம் தலைப்புக் கோப்பைச் சேர்த்து, விசைப்பலகை மற்றும் எல்சிடிக்கான மாறி மற்றும் உள்ளீடு மற்றும் வெளியீட்டு ஊசிகளை வரையறுக்கிறோம்.
#சேர்க்கிறது
எல்சிடி துவக்கம், சரம் அச்சிடுதல், கட்டளைகள் போன்ற சில எல்சிடி செயல்பாடுகளுடன் 1 விநாடி தாமதத்தை உருவாக்குவதற்கான செயல்பாடு உருவாக்கப்பட்டுள்ளது. அவற்றை நீங்கள் எளிதாக குறியீட்டில் காணலாம். 8051 மற்றும் அதன் செயல்பாடுகளுடன் எல்சிடி இடைமுகத்திற்காக இந்த கட்டுரையை சரிபார்க்கவும்.
இதற்குப் பிறகு, முக்கிய நிரலில் நாம் எல்.சி.டி.யைத் துவக்கியுள்ளோம், பின்னர் கீபேட் () செயல்பாட்டைப் பயன்படுத்தி கீபாடில் இருந்து உள்ளீட்டைப் படித்து உள்ளீட்டு விசைகளை ஒரு வரிசையில் சேமித்து, பின்னர் அதை strncmp ஐப் பயன்படுத்தி முன் வரிசை வரிசை தரவிலிருந்து ஒப்பிடுகிறோம்.
void main () {buzzer = 1; lcd_init (); lcdstring ("மின்னணு குறியீடு"); lcdcmd (0xc0); lcdstring ("பூட்டு அமைப்பு"); தாமதம் (400); lcdcmd (1); lcdstring ("சர்க்யூட் டைஜஸ்ட்"); தாமதம் (400); (1) {i = 0; கீபேட் (); if (strncmp (pass, "4201", 4) == 0)
உள்ளிட்ட கடவுச்சொல் பொருந்தினால், ஏற்றுக்கொள் () செயல்பாடு அழைக்கப்படுகிறது:
void ஏற்க () {lcdcmd (1); lcdstring ("வரவேற்பு"); lcdcmd (192); lcdstring ("கடவுச்சொல் ஏற்றுக்கொள்"); தாமதம் (200); }
கடவுச்சொல் தவறாக இருந்தால் தவறான () செயல்பாடு அழைக்கப்படுகிறது:
void wrong () {buzzer = 0; lcdcmd (1); lcdstring ("தவறான பாஸ்கி"); lcdcmd (192); lcdstring ("PLZ மீண்டும் முயற்சிக்கவும்"); தாமதம் (200); buzzer = 1; }
உள்ளீட்டு படிவம் கீபேட் தொகுதியைப் படிக்கும் குறியீட்டில் கீழே உள்ள விசைப்பலகையின் செயல்பாட்டைச் சரிபார்க்கவும்.
