இந்த டுடோரியலில் BMP180 மற்றும் ARDUINO ஐப் பயன்படுத்தி ஒரு பாரோமெட்ரிக் பிரஷர் அளவீட்டு முறையை வடிவமைக்க உள்ளோம். BMP180 ஐ ARDUINO உடன் இணைப்பதற்கு முதலில், BMP180 க்காக வடிவமைக்கப்பட்ட ஒரு நூலகத்தை பதிவிறக்கம் செய்ய வேண்டும். இந்த நூலகம் இங்கு கிடைக்கிறது: https://github.com/adafruit/Adafruit-BMP085- நூலகம் அந்த நூலகத்தை இணைத்த பிறகு, BMP180 சென்சாருடன் பணிபுரிவதை எளிதாக்கும் சிறப்பு செயல்பாடுகளை நாம் அழைக்கலாம்.
கூறுகள் தேவை
வன்பொருள்: Arduino uno board, இணைக்கும் ஊசிகளை, 220Ω மின்தடை, BMP180 பாரோமெட்ரிக் பிரஷர் சென்சார், 16x2 எல்சிடி, ரொட்டி பலகை.
மென்பொருள்: அர்டுயினோ இரவு
சுற்று வரைபடம் மற்றும் வேலை விளக்கம்
தலைப்புக்கு அழைத்த பிறகு, Arduino Uno மற்றும் BMP180 சென்சார் இடையே தகவல்தொடர்புகளை நிறுவ நாங்கள் கவலைப்பட தேவையில்லை. சிறப்பு செயல்பாடுகளில் நாம் வெறுமனே அழைக்கலாம், அது எங்களுக்கு செய்யும். நாம் ஒரு எல்சிடியை மட்டுமே துவக்கி, அதில் சென்சோரிலிருந்து அழைக்கப்பட்ட மதிப்புகளைக் காட்ட வேண்டும்.
16x2 எல்சிடியில் ஒரு பின் ஒளி இருந்தால் எல்லாவற்றிற்கும் மேலாக 16 ஊசிகளும் உள்ளன, பின் ஒளி இல்லை என்றால் மொத்தம் 14 ஊசிகளும் இருக்கும். ஒருவர் பின் ஒளி ஊசிகளை சக்தியளிக்கலாம் அல்லது விட்டுவிடலாம். இப்போது 14 ஊசிகளில் 8 தரவு ஊசிகளும் (7-14 அல்லது டி 0-டி 7), 2 மின்சாரம் வழங்கல் ஊசிகளும் (1 & 2 அல்லது விஎஸ்எஸ் & விடிடி அல்லது ஜிஎன்டி & + 5 வி), மாறுபட்ட கட்டுப்பாட்டுக்கு 3 வது முள் (எழுத்துக்கள் எவ்வளவு தடிமனாக இருக்க வேண்டும் என்பதை விஇஇ கட்டுப்படுத்துகிறது காட்டப்பட்டுள்ளது) மற்றும் 3 கட்டுப்பாட்டு ஊசிகளும் (RS & RW & E).
சுற்றில், நான் இரண்டு கட்டுப்பாட்டு ஊசிகளை மட்டுமே எடுத்துள்ளதை நீங்கள் அவதானிக்கலாம், கான்ட்ராஸ்ட் பிட் மற்றும் READ / WRITE ஆகியவை பெரும்பாலும் பயன்படுத்தப்படுவதில்லை, எனவே அவை தரையில் சுருக்கப்படலாம். இது எல்சிடியை மிக உயர்ந்த மாறுபாடு மற்றும் வாசிப்பு பயன்முறையில் வைக்கிறது. எழுத்துக்கள் மற்றும் தரவை அதற்கேற்ப அனுப்ப நாம் இயக்க மற்றும் RS ஊசிகளைக் கட்டுப்படுத்த வேண்டும்.
எல்சிடிக்கு செய்யப்படும் இணைப்புகள் கீழே கொடுக்கப்பட்டுள்ளன:
தரையில் PIN1 அல்லது VSS
PIN2 அல்லது VDD அல்லது VCC to + 5v power
PIN3 அல்லது VEE தரையில் (ஒரு தொடக்கநிலைக்கு அதிகபட்ச மாறுபாட்டை வழங்குகிறது)
ARDUINO UNO இன் PIN8 க்கு PIN4 அல்லது RS (பதிவு தேர்வு)
PIN5 அல்லது RW (படிக்க / எழுது) தரையில் (எல்சிடியை வாசிப்பு பயன்முறையில் வைக்கிறது பயனருக்கான தகவல்தொடர்புகளை எளிதாக்குகிறது)
ARDUINO UNO இன் PIN6 அல்லது E (இயக்கு) toPIN9
ARDUINO UNO இன் PIN11 அல்லது D4 முதல் PIN10 வரை
ARDUINO UNO இன் PIN12 அல்லது D5 முதல் PIN11 வரை
ARDUINO UNO இன் PIN13 அல்லது D6 முதல் PIN12 வரை
ARDUINO UNO இன் PIN14 அல்லது D7 முதல் PIN13 வரை
ARDUINO IDE பயனரை 4 பிட் பயன்முறையில் எல்சிடியைப் பயன்படுத்த அனுமதிக்கிறது. இந்த வகை தகவல்தொடர்பு ARDUINO இல் முள் பயன்பாட்டைக் குறைக்க பயனருக்கு உதவுகிறது, மற்றதைப் போலல்லாமல் ARDUINO ஐ 4 it பயன்முறையில் பயன்படுத்துவதற்கு தனித்தனியாக திட்டமிடப்பட வேண்டியதில்லை, ஏனெனில் முன்னிருப்பாக ARDUINO 4 பிட் பயன்முறையில் தொடர்பு கொள்ள அமைக்கப்பட்டுள்ளது. சுற்றில் 4 பிட் தகவல்தொடர்பு (டி 4-டி 7) பயன்படுத்தப்பட்டிருப்பதைக் காணலாம்.
எனவே மேலேயுள்ள அட்டவணையில் இருந்து கவனிப்பதில் இருந்து எல்.சி.டி.யின் 6 ஊசிகளை கட்டுப்படுத்தியுடன் இணைக்கிறோம், இதில் 4 ஊசிகளும் தரவு ஊசிகளும் கட்டுப்பாட்டுக்கு 2 ஊசிகளும் ஆகும்.
BMP180 ஐ Arduino Uno உடன் இணைப்பதற்கு நாம் பின்வருவனவற்றை செய்ய வேண்டும்:
|
சிறப்பு செயல்பாடுகளை இயக்குவதற்கு முதலில் நாம் தலைப்பு கோப்பை அழைக்க வேண்டும் “# அடங்கும்”.
இந்த தலைப்பு கோப்பு மூலம் சென்சாரிலிருந்து மதிப்புகளை எந்த குழப்பமும் இல்லாமல் நேரடியாக படிக்கக்கூடிய செயல்பாடுகளை நாம் அழைக்கலாம்.
இப்போது நாம் சி தகவல்தொடர்புகளை இயக்க வேண்டும், இது “# அடங்கும்” என்று அழைப்பதன் மூலம் செய்யப்படுகிறது
”சரம் PRESSUREVALUE = சரம் (bmp.readPressure ());” என்று அழைப்பதன் மூலம் அழுத்தத்தைப் படிக்கலாம். இங்கே அழுத்தம் மதிப்பு சென்சாரிலிருந்து படிக்கப்பட்டு “PRESSUREVALUE” என்ற சரத்தில் சேமிக்கப்படும்.
”சரம் TEMPARATUREVALUE = சரம் (bmp.readTemperature ());” என்று அழைப்பதன் மூலம் நாம் தற்காலிகத்தைப் படிக்கலாம். இங்கே அழுத்தம் மதிப்பு சென்சாரிலிருந்து படிக்கப்பட்டு “TEMPARATUREVALUE” என்ற சரத்தில் சேமிக்கப்படும்.

முதலில் நாம் தலைப்பு கோப்பை இயக்க வேண்டும் ('# அடங்கும்
இரண்டாவதாக நாம் எந்த வகை எல்சிடியை இங்கு பயன்படுத்துகிறோம் என்பதை போர்டுக்கு சொல்ல வேண்டும். எங்களிடம் பல வகையான எல்சிடி இருப்பதால் (20 * 4, 16 * 2, 16 * 1 போன்றவை). இங்கே நாம் 16 * 2 எல்சிடியை UNO உடன் இடைமுகப்படுத்தப் போகிறோம், எனவே 'lcd.begin (16,2);' 16 * 1 க்கு 'lcd.begin (16,1);'
இந்த அறிவுறுத்தலில் நாம் ஊசிகளை எங்கு இணைத்தோம் என்று பலகைக்குச் சொல்லப் போகிறோம், இணைக்கப்பட்ட ஊசிகளை “RS, En, D4, D5, D6, D7” என்று குறிப்பிட வேண்டும். இந்த ஊசிகளை சரியாக குறிப்பிட வேண்டும். சுற்று வரைபடத்தில் காண்பிக்கப்படுவதை நாங்கள் RIN ஐ PIN0 உடன் இணைத்ததால், முள் எண்ணை "LiquidCrystallcd (0,1,8,9,10,11);"
மேலே எஞ்சியிருப்பது தரவை அனுப்புவதே, எல்சிடியில் காட்டப்பட வேண்டிய தரவை “சி.டி.பிரிண்ட் (" ஹலோ, உலகம்! ");" என்று எழுத வேண்டும். இந்த கட்டளையின் மூலம் எல்சிடி 'ஹலோ, உலகம்!'
இதைப் பற்றி நாங்கள் கவலைப்படத் தேவையில்லை என்பதை நீங்கள் காண முடியும் என்பதால், நாங்கள் துவக்க வேண்டும், தரவுகளைக் காட்ட UNO தயாராக இருக்கும். BYTE மூலம் BYTE தரவை இங்கு அனுப்ப ஒரு நிரல் வளையத்தை நாம் எழுத வேண்டியதில்லை. சென்சாரிலிருந்து மதிப்பைப் படித்த பிறகு அவற்றை 16x2 எல்சிடியில் காண்பிக்கப் போகிறோம்.
