- PIC16F877A இல் EEPROM:
- சுற்று வரைபடம் மற்றும் விளக்கம்:
- PIC EEPROM ஐப் பயன்படுத்துவதற்கான உருவகப்படுத்துதல்:
- EEPROM க்கான நிரலாக்க PIC:
- வேலை:
இந்த டுடோரியலில் , PIC16F877A மைக்ரோகண்ட்ரோலரில் உள்ள EEPROM ஐப் பயன்படுத்தி தரவைச் சேமிப்பது எவ்வளவு எளிது என்பதைக் கற்றுக்கொள்வோம். பெரும்பாலான நிகழ்நேர திட்டங்களில், மின்சக்தியை அணைக்கும்போது கூட அழிக்கக் கூடாத சில தரவை நாம் சேமிக்க வேண்டியிருக்கும். இது ஒரு சிக்கலான செயல்முறையாகத் தோன்றலாம், ஆனால் எக்ஸ்சி 8 கம்பைலரின் உதவியுடன் இந்த பணியை ஒரு வரியின் குறியீட்டைப் பயன்படுத்துவதன் மூலம் செய்ய முடியும். மெகா பைட்டுகளின் அடிப்படையில் தரவு பெரியதாக இருந்தால், ஒரு எஸ்டி கார்டு போன்ற சேமிப்பக சாதனத்தை இடைமுகப்படுத்தி அந்த தரவை அவற்றில் சேமிக்கலாம். தரவு சிறியதாக இருந்தால் அந்த சோர்வான செயல்முறையை நாம் தவிர்க்கலாம், எங்கள் தரவைச் சேமிக்கவும், எப்போது வேண்டுமானாலும் மீட்டெடுக்கவும் PIC மைக்ரோகண்ட்ரோலரில் உள்ள EEPROM ஐப் பயன்படுத்தலாம்.
இந்த PIC EEPROM டுடோரியல் PIC மைக்ரோகண்ட்ரோலர் டுடோரியல்களின் வரிசையின் ஒரு பகுதியாகும், அதில் நாங்கள் மிகவும் அடிப்படை மட்டத்திலிருந்து தொடங்கினோம். முந்தைய டுடோரியல்களை நீங்கள் கற்றுக் கொள்ளவில்லை என்றால், இப்போது அவற்றைப் பார்ப்பது நல்லது, ஏனென்றால் இந்த பயிற்சி உங்களுக்கு பி.ஐ.சி மைக்ரோகண்ட்ரோலருடன் எல்.சி.டி இன்டர்ஃபேசிங் மற்றும் பி.ஐ.சி மைக்ரோகண்ட்ரோலருடன் ஏ.டி.சி.
PIC16F877A இல் EEPROM:
EEPROM நிலைப்பாடு “மின்னணு முறையில் அழிக்கக்கூடிய மற்றும் நிரல்படுத்தக்கூடிய வாசிப்பு மட்டும் நினைவகம்”. பெயர் குறிப்பிடுவது போல, இது பி.ஐ.சி மைக்ரோகண்ட்ரோலருக்குள் இருக்கும் ஒரு நினைவகம், அதில் அவ்வாறு செய்ய நிரலாக்கத்தின் மூலம் தரவை எழுத / படிக்க முடியும். இதில் சேமிக்கப்பட்ட தரவு நிரலில் அவ்வாறு குறிப்பிடப்பட்டால் மட்டுமே அழிக்கப்படும். EEPROM இல் கிடைக்கும் சேமிப்பிட இடத்தின் அளவு ஒவ்வொரு மைக்ரோகண்ட்ரோலருக்கும் மாறுபடும்; விவரங்கள் வழக்கம் போல் தரவுத்தாள் வழங்கப்படும். PIC16F877A க்கான எங்கள் விஷயத்தில், அதன் விவரக்குறிப்பு தரவுத்தாள் குறிப்பிடப்பட்டுள்ளபடி கிடைக்கக்கூடிய இடம் 256 பைட்டுகள் ஆகும். இப்போது ஒரு எளிய சோதனை அமைப்பைப் பயன்படுத்தி தரவைப் படிக்க / எழுத இந்த 256 பைட்டுகளை எவ்வாறு பயன்படுத்தலாம் என்பதைப் பார்ப்போம்.
சுற்று வரைபடம் மற்றும் விளக்கம்:

திட்டத்திற்கான சுற்று வரைபடம் மேலே காட்டப்பட்டுள்ளது. தரவு சேமிக்கப்பட்டு மீட்டெடுக்கப்படுவதைக் காண எல்.சி.டி.யை நாங்கள் இணைத்துள்ளோம். ஒரு சாதாரண பொட்டென்டோமீட்டர் AN4 அனலாக் சேனலுடன் இணைக்கப்பட்டுள்ளது, எனவே மாறி மின்னழுத்தத்தில் உணவளிக்கவும், இந்த மாறி மின்னழுத்தம் EEPROM இல் சேமிக்கப்பட வேண்டிய தரவாக பயன்படுத்தப்படும். நாங்கள் RB0 இல் ஒரு புஷ் பொத்தானைப் பயன்படுத்தினோம், இந்த பொத்தானை அழுத்தும் போது அனலாக் சேனலில் இருந்து தரவு EEPROM இல் சேமிக்கப்படும்.
இந்த இணைப்பை ஒரு பிரெட் போர்டில் செய்யலாம். PIC மைக்ரோகண்ட்ரோலர் இன் பின்அவுட்கள் கீழே உள்ள அட்டவணையில் காட்டப்பட்டுள்ளது.
|
எஸ். இல்லை: |
முள் எண் |
முள் பெயர் |
இணைக்கப்பட்டுவிட்டது |
|
1 |
21 |
ஆர்.டி 2 |
எல்சிடியின் ஆர்.எஸ் |
|
2 |
22 |
ஆர்.டி 3 |
எல்சிடியின் மின் |
|
3 |
27 |
ஆர்.டி 4 |
எல்சிடியின் டி 4 |
|
4 |
28 |
ஆர்.டி 5 |
எல்சிடியின் டி 5 |
|
5 |
29 |
ஆர்.டி 6 |
எல்சிடியின் டி 6 |
|
6 |
30 |
ஆர்.டி 7 |
எல்சிடியின் டி 7 |
|
7 |
33 |
RBO / INT |
புஷ் பொத்தான் |
|
8 |
7 |
AN4 |
பொட்டென்டோமீட்டர் |
PIC EEPROM ஐப் பயன்படுத்துவதற்கான உருவகப்படுத்துதல்:
இந்த திட்டத்தில் புரோட்டியஸைப் பயன்படுத்தி வடிவமைக்கப்பட்ட ஒரு உருவகப்படுத்துதலும் அடங்கும், இதைப் பயன்படுத்தி எந்தவொரு வன்பொருளும் இல்லாமல் திட்டத்தின் செயல்பாட்டை உருவகப்படுத்தலாம். இந்த உருவகப்படுத்துதலுக்கான நிரல் இந்த டுடோரியலின் முடிவில் கொடுக்கப்பட்டுள்ளது. நீங்கள் இங்கிருந்து ஹெக்ஸ் கோப்பைப் பயன்படுத்தலாம் மற்றும் முழு செயல்முறையையும் உருவகப்படுத்தலாம்.
உருவகப்படுத்துதலின் போது, தற்போதைய ADC மதிப்பு மற்றும் எல்சிடி திரையில் EEPROM இல் சேமிக்கப்பட்ட தரவைக் காணலாம். தற்போதைய ADC மதிப்பை EEPROM இல் சேமிக்க RB0 உடன் இணைக்கப்பட்ட சுவிட்சை அழுத்தினால் அது சேமிக்கப்படும். உருவகப்படுத்துதலின் ஸ்னாப்ஷாட் கீழே காட்டப்பட்டுள்ளது.

EEPROM க்கான நிரலாக்க PIC:
இந்த டுடோரியலுக்கான முழுமையான குறியீடு இந்த டுடோரியலின் முடிவில் கொடுக்கப்பட்டுள்ளது. எங்கள் திட்டத்தில் நாம் ADC தொகுதியிலிருந்து மதிப்புகளைப் படிக்க வேண்டும், ஒரு பொத்தானை அழுத்தும்போது அந்த மதிப்பை எங்கள் EEPROM இல் சேமிக்க வேண்டும். ADC கள் மற்றும் எல்சிடி இடைமுகத்தைப் பற்றி நாங்கள் ஏற்கனவே அறிந்திருப்பதால், EEPROM இலிருந்து தரவைச் சேமிக்கவும் மீட்டெடுக்கவும் குறியீட்டை மேலும் விளக்குகிறேன்.
தரவுத்தாள் படி “இந்த சாதனங்களில் நிரல் ஃப்ளாஷ் 4 அல்லது 8 கே சொற்கள் உள்ளன, PIC16F877A க்கான முகவரி வரம்பு 0000h முதல் 1FFFh வரை”. இதன் பொருள் ஒவ்வொரு EEPROM சேமிப்பக இடத்திலும் அதை அணுகக்கூடிய முகவரி உள்ளது, மேலும் எங்கள் MCU இல் முகவரி 0000h முதல் 1FFFh வரை தொடங்குகிறது.
ஒரு குறிப்பிட்ட EEPROM முகவரிக்குள் ஒரு தரவைச் சேமிக்க, கீழேயுள்ள வரியைப் பயன்படுத்தவும்.
eeprom_write (0, adc);
இங்கே “adc” என்பது வகை முழு எண்ணின் மாறி, அதில் சேமிக்க வேண்டிய தரவு உள்ளது. “0” என்பது எங்கள் தரவு சேமிக்கப்படும் EEPROM இன் முகவரி. “Eeprom_write” தொடரியல் எங்கள் XC8 கம்பைலரால் வழங்கப்படுகிறது, எனவே பதிவேடுகள் தானாகவே கம்பைலரால் கவனிக்கப்படும்.
ஏற்கனவே EEPROM இல் சேமிக்கப்பட்டுள்ள ஒரு தரவை மீட்டெடுக்கவும், அதை ஒரு மாறியில் சேமிக்கவும் பின்வரும் குறியீட்டின் வரியைப் பயன்படுத்தலாம்.
Sadc = (int) eeprom_read (0);
இங்கே, “Sadc” என்பது EEPROM இலிருந்து தரவு சேமிக்கப்படும் மாறி. “0” என்பது தரவை மீட்டெடுக்கும் EEPROM இன் முகவரி. “Eeprom_read” தொடரியல் எங்கள் XC8 கம்ப்ளேயரால் வழங்கப்படுகிறது, எனவே பதிவேடுகள் தானாகவே கம்பைலரால் கவனிக்கப்படும். EEPROM இல் சேமிக்கப்பட்ட தரவு ஹெக்ஸாடெசிமல் வகையாக இருக்கும். எனவே தொடரியல் முன் ஒரு (எண்ணாக) முன்னொட்டு அவற்றை முழு எண் வகையாக மாற்றுகிறோம்.
வேலை:
குறியீடு எவ்வாறு இயங்குகிறது என்பதைப் புரிந்துகொண்டு, வன்பொருளுடன் தயாராகிவிட்டால், குறியீட்டை சோதிக்கலாம். உங்கள் PIC மைக்ரோகண்ட்ரோலரில் குறியீட்டைப் பதிவேற்றி, அமைப்பை இயக்கவும். எல்லாம் எதிர்பார்த்தபடி செயல்பட்டால், எல்.சி.டி.யில் காட்டப்படும் தற்போதைய ஏ.டி.சி மதிப்புகளை நீங்கள் காண வேண்டும். ADC மதிப்பை EEPROM இல் சேமிக்க நீங்கள் இப்போது பொத்தானை அழுத்தலாம். முழு கணினியையும் அணைத்து மீண்டும் இயக்குவதன் மூலம் மதிப்பு சேமிக்கப்பட்டுள்ளதா என்பதை இப்போது சரிபார்க்கவும். இயங்கும் போது எல்சிடி திரையில் முன்பு சேமித்த மதிப்பைக் காண வேண்டும்.

PIC மைக்ரோகண்ட்ரோலர் EEPROM ஐப் பயன்படுத்த இந்த திட்டத்தின் முழுமையான வேலை கீழே உள்ள வீடியோவில் காட்டப்பட்டுள்ளது. நீங்கள் டுடோரியலைப் புரிந்துகொண்டு அதைச் செய்து மகிழ்ந்தீர்கள் என்று நம்புகிறேன். உங்களுக்கு ஏதேனும் சந்தேகம் இருந்தால் அவற்றை கீழே உள்ள கருத்துப் பிரிவில் எழுதலாம் அல்லது அவற்றை எங்கள் மன்றங்களில் இடுகையிடலாம்.
