- தேவைகள்:
- புளூடூத் தகவல்தொடர்புக்கான நிரலாக்க PIC மைக்ரோகண்ட்ரோலர்:
- சுற்று வரைபடம் மற்றும் வன்பொருள் அமைப்பு:
- புளூடூத் மொபைல் பயன்பாட்டைப் பயன்படுத்தி எல்.ஈ.டி கட்டுப்படுத்துதல்:
இந்த டுடோரியலில், புளூடூத் தொகுதி (HC-06) ஐ இணைப்பதன் மூலம் வயர்லெஸ் முறையில் PIC திட்டங்களை எவ்வாறு உருவாக்குவது என்பதைக் கற்றுக்கொள்வோம் . எங்கள் முந்தைய டுடோரியலில், எங்கள் PIC மைக்ரோகண்ட்ரோலரில் USART தொகுதியை எவ்வாறு பயன்படுத்துவது என்பதை நாங்கள் ஏற்கனவே கற்றுக் கொண்டோம், மேலும் PIC க்கும் கம்ப்யூட்டருக்கும் இடையில் தகவல்தொடர்புகளை ஏற்படுத்தினோம். நீங்கள் ஒரு முழுமையான தொடக்கக்காரராக இருந்தால், எம்.பி.எல்.ஏ.பி மற்றும் எக்ஸ்.சி 8 ஆகியவற்றைக் கற்றுக்கொள்வது, எல்.ஈ.டி, எல்.சி.டி.
இங்கே, பிரபலமான புளூடூத் தொகுதி HC-06 ஐப் பயன்படுத்தியுள்ளோம். இந்த தொகுதியைப் பயன்படுத்தி எங்கள் PIC MCU இலிருந்து ஒரு மொபைல் பயன்பாடு அல்லது கணினிக்கு வயர்லெஸ் முறையில் தகவல்களைப் பெறலாம் மற்றும் அனுப்பலாம். PIC மற்றும் HC-06 க்கு இடையிலான தொடர்பு PIC மைக்ரோகண்ட்ரோலரில் உள்ள USART தொகுதியைப் பயன்படுத்தி நிறுவப்பட்டுள்ளது. நீங்கள் HC-05 ஐப் பயன்படுத்தலாம். நாங்கள் மீண்டும் அதே ஒத்திசைவற்ற 8-பிட் பயன்முறையில் இயங்குகிறோம், ஆனால் இந்த நேரத்தில் எங்கள் குறியீட்டை சிறிது மாற்றியமைப்போம், இதனால் புளூடூத் தொகுதிடன் இது செயல்படும். எனவே UART டுடோரியலை முன்பே கற்றுக்கொள்வது இந்த திட்டத்திற்கு கூடுதல் நன்மை.
இந்த பயிற்சி, நாம் செய்யும் அல்லது எங்கள் ஸ்மார்ட் தொலைபேசியில் இருந்து கட்டளை ஆஃப் அனுப்புவதன் மூலம் ஒரு எல்இடி மாறுவதற்கு. புளூடூத் டெர்மினல் எனப்படும் Android பயன்பாட்டைப் பயன்படுத்துவோம், இது புளூடூத் வழியாக தரவை அனுப்பவும் பெறவும் முடியும். பயன்பாட்டிலிருந்து ஒரு கரி '1' அனுப்பினால், பி.ஐ.சி போர்டில் ஒளி இயக்கப்படும், மேலும் ஒளி இயக்கப்பட்டதாக தொலைபேசியில் ஒப்புதலைப் பெறுவோம். இதேபோல் அதை அணைக்க தொலைபேசியிலிருந்து '0' அனுப்பலாம். இந்த வழியில் UART டுடோரியலைப் போலவே ஆனால் இப்போது கம்பியில்லாமல் எங்கள் PIC போர்டில் எல்.ஈ.டி ஒளியைக் கட்டுப்படுத்தலாம். இந்த டுடோரியலின் முடிவில் முழுமையான நிரல் மற்றும் விரிவான வீடியோ கொடுக்கப்பட்டுள்ளது.
அமைப்பதற்கான அடிப்படை தொகுதி வரைபடம் கீழே காட்டப்பட்டுள்ளது.

தேவைகள்:
வன்பொருள்:
- PIC16F877A Perf Board
- HC-05 அல்லது HC-06 புளூடூத் தொகுதி
- கணினி (நிரலாக்கத்திற்காக)
- கைபேசி
- பிக்கிட் 3 புரோகிராமர்
மென்பொருள்:
- MPLABX
- புளூடூத் டெர்மினல் (மொபைல் பயன்பாடு)
புளூடூத் தொகுதி HC-06:
புளூடூத் பின்வரும் இரண்டு முறைகளில் செயல்பட முடியும்:
- கட்டளை முறை
- இயக்க முறைமை
இல் கட்டளை முறை நாங்கள் ப்ளூடூத் சிக்னல் பெயர்போல் ப்ளூடூத் பண்புகள் கட்டமைக்க முடியும், முதலியன அதன் கடவுச்சொல்லை, இயக்க பாட் விகிதம் தி ஆப்பரேட்டிங் முறை நாங்கள் அனுப்ப முடியும் மற்றும் டத்தில் மைக்ரோகண்ட்ரோலர் இடையே தரவு பெறும் இதில் ஒன்றாகும் மற்றும் புளூடூத் தொகுதி. எனவே இந்த டுடோரியலில் நாம் இயக்க முறைமையுடன் மட்டுமே விளையாடுவோம். கட்டளை பயன்முறை இயல்புநிலை அமைப்புகளுக்கு விடப்படும். சாதனத்தின் பெயர் HC-05 (நான் HC-06 ஐப் பயன்படுத்துகிறேன்) மற்றும் கடவுச்சொல் 0000 அல்லது 1234 ஆக இருக்கும், மிக முக்கியமாக அனைத்து புளூடூத் தொகுதிகளுக்கும் இயல்புநிலை பாட் வீதம் 9600 ஆக இருக்கும்.

தொகுதி 5 வி விநியோகத்தில் இயங்குகிறது மற்றும் சிக்னல் ஊசிகளும் 3.3 வி இல் இயங்குகின்றன, எனவே 3.3 வி சீராக்கி தொகுதியில் உள்ளது. எனவே நாம் இதைப் பற்றி கவலைப்பட தேவையில்லை. ஆறு ஊசிகளில் நான்கு மட்டுமே இயக்க முறைமையில் பயன்படுத்தப்படும். முள் இணைப்பு அட்டவணை கீழே காட்டப்பட்டுள்ளது
|
எஸ் |
HC-05 / HC-06 இல் பின் |
MCU இல் முள் பெயர் |
PIC இல் முள் எண் |
|
1 |
வி.சி.சி. |
வி.டி.டி. |
31 வது முள் |
|
2 |
வி.சி.சி. |
Gnd |
32 வது முள் |
|
3 |
Tx |
RC6 / Tx / CK |
25 வது முள் |
|
4 |
Rx |
RC7 / Rx / DT |
26 வது முள் |
|
5 |
நிலை |
என்.சி. |
என்.சி. |
|
6 |
EN (இயக்கு) |
என்.சி. |
என்.சி. |
பிற மைக்ரோகண்ட்ரோலர்களுடன் புளூடூத் தொகுதி HC-05 பற்றி மேலும் அறிய எங்கள் பிற திட்டங்களைச் சரிபார்க்கவும்:
- Arduino ஐப் பயன்படுத்தி புளூடூத் கட்டுப்படுத்தப்பட்ட பொம்மை கார்
- 8051 ஐப் பயன்படுத்தி புளூடூத் கட்டுப்படுத்தப்பட்ட வீட்டு ஆட்டோமேஷன் அமைப்பு
- ராஸ்பெர்ரி பை பயன்படுத்தி குரல் கட்டுப்பாட்டு விளக்குகள்
- Arduino மற்றும் Processing ஐப் பயன்படுத்தி ஸ்மார்ட் போன் கட்டுப்படுத்தப்பட்ட FM ரேடியோ
- ஜி-சென்சார் மற்றும் அர்டுயினோவைப் பயன்படுத்தி மொபைல் தொலைபேசி கட்டுப்பாட்டு ரோபோ கார்
புளூடூத் தகவல்தொடர்புக்கான நிரலாக்க PIC மைக்ரோகண்ட்ரோலர்:
எல்லா தொகுதிக்கூறுகளையும் (ஏடிசி, டைமர், பிடபிள்யூஎம்) எங்கள் புளூடூத் தொகுதியையும் துவக்க வேண்டும். துவக்கம் UART துவக்கத்திற்கு ஒத்ததாக இருக்கும், ஆனால் எங்கள் PIC16F877A MCU உடன் புளூடூத் குறைபாடற்ற வகையில் செயல்பட சில மாற்றங்களைச் செய்ய வேண்டும். உள்ளமைவு பிட்களை வரையறுத்து புளூடூத் துவக்க செயல்பாட்டில் தொடங்குவோம்.
புளூடூத் துவக்குகிறது:
சந்தையில் உள்ள கிட்டத்தட்ட அனைத்து புளூடூத் தொகுதிகள் 9600 என்ற பாட் வீதத்தில் செயல்படுகின்றன, உங்கள் பாட் வீதத்தை ப்ளூடூத் தொகுதிகள் இயக்க பாட் வீதத்தைப் போலவே அமைப்பது மிகவும் முக்கியம், இங்கே நாங்கள் 20 மெகா ஹெர்ட்ஸ் கடிகார அதிர்வெண்ணில் இயங்குவதால் SPBRG = 129 ஐ அமைக்கிறோம். பாட் வீதமாக 9600. எனவே மேலே உள்ள துவக்கம் 9600 பாட் விகிதத்தில் இயங்கும் புளூடூத் தொகுதிகளுக்கு மட்டுமே வேலை செய்யும். அதிவேக பாட் வீத பிட் பி.ஆர்.ஜி.எச் இயக்கப்பட்டிருப்பதும் கட்டாயமாகும். இது துல்லியமான பாட் வீதத்தை நிர்ணயிக்க உதவும்.
// ****** USART ஐப் பயன்படுத்தி புளூடூத்தைத் தொடங்கவும் ******** // வெற்றிடத்தைத் தொடங்கு_ ப்ளூடூத் () {// RX மற்றும் TX இன் ஊசிகளை அமைக்கவும் // TRISC6 = 1; TRISC7 = 1; // தரவுத்தாள் (pg114) இல் பார்வை அட்டவணையைப் பயன்படுத்தி பாட் வீதத்தை அமைக்கவும் // BRGH = 1; // எப்போதும் புளூடூத்துடன் அதிவேக பாட் வீதத்தைப் பயன்படுத்துங்கள், அது வேலை செய்யாது SPBRG = 129; // அசிக்கை இயக்கவும். சீரியல் போர்ட் // SYNC = 0; SPEN = 1; // 8-பிட் வரவேற்பு மற்றும் பரிமாற்றத்தை அமைக்கவும் RX9 = 0; TX9 = 0; // பரிமாற்றம் மற்றும் வரவேற்பை இயக்கு // TXEN = 1; CREN = 1; // உலகளாவிய மற்றும் ph ஐ இயக்கு. குறுக்கீடுகள் // GIE = 1; PEIE = 1; // Tx க்கு குறுக்கீடுகளை இயக்கு. மற்றும் Rx.// RCIE = 1; TXIE = 1; } // ___________ BT துவக்கப்பட்டது _____________ //
உங்களிடம் ஒரு பி.டி தொகுதி இருந்தால், அது வேறு பாட் விகிதத்தில் இயங்குகிறது, பின்னர் SPBRG க்கான உங்கள் மதிப்பைக் கண்டுபிடிக்க கீழேயுள்ள பார்வை அட்டவணையைப் பார்க்கலாம்.

புளூடூத்தில் தரவை ஏற்றுகிறது:
செயல்பாடு துவக்கப்பட்டதும் புளூடூத்திலிருந்து தரவை அனுப்பவும் பெறவும் எங்கள் திட்டத்தில் மூன்று செயல்பாடுகள் உள்ளன. UART போலல்லாமல், தரவை அனுப்பவோ அல்லது பெறவோ முன் இங்கே சில விஷயங்களைக் கருத்தில் கொள்ள வேண்டும். புளூடூத் தொகுதிக்குள் ஒரு டிரான்ஸ்மிட் மற்றும் ரிசீவ் பஃபர் உள்ளது, அதற்கு அனுப்பப்பட்ட தரவு Tx பஃப்பரில் சேமிக்கப்படும். ஒரு வண்டி வருவாய் தொகுதிக்கு அனுப்பப்படாவிட்டால் இந்த தரவு ஒளிபரப்பப்படாது (காற்றில் அனுப்பப்படும்). எனவே தரவை அனுப்ப நாம் BT இன் Rx இடையகத்தை ஏற்ற வேண்டும், பின்னர் அதை வண்டி திரும்பப் பயன்படுத்தி ஒளிபரப்ப வேண்டும்.
பின்வரும் செயல்பாடுகளைப் பயன்படுத்துவதன் மூலம் மேலே உள்ள வேலையை எளிதாக அடைய முடியும். Rx இடையகத்தில் ஒரு எழுத்தை மட்டுமே ஏற்றும்போது கீழேயுள்ள செயல்பாட்டைப் பயன்படுத்தலாம். நாங்கள் தரவை TXREG பதிவேட்டில் ஏற்றுவோம், மேலும் TXIF மற்றும் TRMT கொடியைச் சரிபார்த்து, சுழற்சிகளைப் பயன்படுத்துவதன் மூலம் அதைச் செயலாக்கும் வரை காத்திருக்கிறோம்.
// புளூடூத் Rx ஐ ஏற்றுவதற்கான செயல்பாடு. ஒரு char.// வெற்றிட BT_load_char (char byte) {TXREG = byte; போது (! TXIF); போது (! TRMT); } // செயல்பாட்டின் முடிவு //
புளூடூத் தொகுதியின் Rx பஃப்பரில் ஒரு சரத்தை ஏற்ற கீழே செயல்பாடு பயன்படுத்தப்படுகிறது. சரம் எழுத்துக்களாக பிரிக்கப்பட்டுள்ளது மற்றும் ஒவ்வொரு எழுத்தும் BT_load_char () செயல்பாட்டிற்கு அனுப்பப்படும்.
// புளூடூத் Rx ஐ ஏற்றுவதற்கான செயல்பாடு. சரம் // இடையூறு BT_load_string (char * string) {போது (* சரம்) BT_load_char (* string ++); } // செயல்பாட்டின் முடிவு /
புளூடூத் வழியாக தரவை ஒளிபரப்புதல்:
இப்போது வரை நாங்கள் HC-05 தொகுதியின் Rx இடையகத்திற்கு தகவல்களை அனுப்பியுள்ளோம். இந்த செயல்பாட்டைப் பயன்படுத்தி தரவை காற்றில் ஒளிபரப்ப இப்போது நாம் அறிவுறுத்த வேண்டும்.
// RX இலிருந்து தரவை ஒளிபரப்புவதற்கான செயல்பாடு. இடையக // வெற்றிட ஒளிபரப்பு_பிடி () {TXREG = 13; __ தாமத_எம்எஸ் (500); } // செயல்பாட்டின் முடிவு //
இந்த செயல்பாட்டில் நாம் ஒரு மதிப்பு 13 ஐ TXREG பதிவேட்டில் அனுப்புகிறோம். இந்த மதிப்பு 13 வண்டிக்கு தசம சமமானதைத் தவிர வேறில்லை (ASCII விளக்கப்படத்தைப் பார்க்கவும்). ஒளிபரப்பாளரைத் தொடங்க ஒரு சிறிய தாமதம் உருவாக்கப்படுகிறது.
புளூடூத்திலிருந்து தரவைப் படித்தல்:
UART ஐப் போலவே, புளூடூத்திலிருந்து தரவைப் படிக்க கீழேயுள்ள செயல்பாடு பயன்படுத்தப்படுகிறது
// BT இன் Rx.buffer இலிருந்து ஒரு கரி பெறுவதற்கான செயல்பாடு // char BT_get_char (வெற்றிடத்தை) {if (OERR) // ஓவர் ரன் பிழையை சரிபார்க்கவும் {CREN = 0; CREN = 1; // CREN ஐ மீட்டமைக்கவும் (if (RCIF == 1) // பயனர் ஒரு கரி அனுப்பியிருந்தால் எரிப்பதை (ASCII மதிப்பு) {போது (! RCIF); திரும்ப RCREG; } else // பயனர் எந்த செய்தியையும் அனுப்பவில்லை என்றால் 0 திரும்ப 0; } // செயல்பாட்டின் முடிவு /
பயனர் ஒரு தரவை அனுப்பியிருந்தால், இந்த செயல்பாடு குறிப்பிட்ட தரவை ஒரு மாறியில் சேமித்து செயலாக்க முடியும். பயனர் எதையும் அனுப்பவில்லை என்றால் செயல்பாடு பூஜ்ஜியத்தைத் தரும்.
முக்கிய செயல்பாடு:
மேலே விளக்கப்பட்ட அனைத்து செயல்பாடுகளையும் உள்ளே அல்லது முக்கிய செயல்பாட்டைப் பயன்படுத்தினோம். நாங்கள் சில அறிமுக செய்தியை அனுப்புகிறோம், பின்னர் பயனர் சில மதிப்புகளை அனுப்ப காத்திருக்கிறோம், அதன் அடிப்படையில் எங்கள் பெர்ஃப் போர்டில் RB3 முள் இணைக்கப்பட்ட RED தலைமையிலான ஒளியை மாற்றுவோம்.
void main (வெற்றிடம்) {// நோக்கம் மாறி அறிவிப்புகள் // int get_value; // மாறி அறிவிப்பின் முடிவு // // I / O அறிவிப்புகள் // TRISB3 = 0; // I / O அறிவிப்பின் முடிவு // துவக்கு_ ப்ளூடூத் (); // எங்கள் புளூடூத்தை செயலுக்குத் தயார்படுத்திக்கொள்ளலாம் // சில அறிமுக செய்திகளை ஒரு முறை சக்தி காட்டியவுடன் காண்பி ஒளிபரப்பு_பிடி (); BT_load_string ("எல்.ஈ.டி இயக்க 1 ஐ அழுத்தவும்"); ஒளிபரப்பு_பிடி (); BT_load_string ("LED ஐ அணைக்க 0 ஐ அழுத்தவும்"); ஒளிபரப்பு_பிடி (); // செய்தியின் முடிவு // போது (1) // எல்லையற்ற லாப் {get_value = BT_get_char (); // கரி படியுங்கள். BT வழியாக பெறப்பட்டது // நாம் '0' // ஐப் பெற்றால் (get_value == '0') {RB3 = 0; BT_load_string ("LED முடக்கப்பட்டுள்ளது"); ஒளிபரப்பு_பிடி (); } // நாம் ஒரு '1' ஐப் பெற்றால் // if (get_value == '1') {RB3 = 1; BT_load_string ("LED இயக்கப்பட்டது"); ஒளிபரப்பு_பிடி ();}}}
கீழே உள்ள குறியீடு பிரிவில் முழு நிரலையும் சரிபார்க்கவும்.
சுற்று வரைபடம் மற்றும் வன்பொருள் அமைப்பு:
இந்த திட்டத்திற்கான சுற்று இணைப்புகள் மிகவும் எளிதானது, நாங்கள் புளூடூத் தொகுதியை அதிகப்படுத்த வேண்டும் மற்றும் Tx ஐ PIC இன் 26 வது முள் மற்றும் Rx ஐ 25 வது முள் PIC உடன் இணைக்க வேண்டும், கீழே உள்ள சுற்று வரைபடத்தில் காட்டப்பட்டுள்ளபடி:

இப்போது வன்பொருளுக்கு செல்லலாம். இணைப்பு முடிந்ததும் இது போன்ற ஏதாவது இருக்க வேண்டும்.

புளூடூத் மொபைல் பயன்பாட்டைப் பயன்படுத்தி எல்.ஈ.டி கட்டுப்படுத்துதல்:
இப்போது எங்கள் Android பயன்பாட்டை தயார் செய்வோம். ஆப் ஸ்டோரிலிருந்து புளூடூத் டெர்மினல் எனப்படும் பயன்பாட்டைப் பதிவிறக்கவும் அல்லது இந்த இணைப்பைப் பயன்படுத்தவும். பயன்பாடு பதிவிறக்கம் செய்யப்பட்டு நிறுவப்பட்டதும், ஆரம்பத்தில் இருந்தே நாங்கள் பயன்படுத்தும் உங்கள் PIC perf போர்டை இயக்கவும். உங்கள் புளூடூத் தொகுதியில் உள்ள சிறிய எல்.ஈ.டி ஒளி அது இயங்கும் என்பதைக் குறிக்க ஒளிரும் மற்றும் இணைப்பை நிறுவ தொலைபேசியைத் தீவிரமாகத் தேடுகிறது.
இப்போது உங்கள் தொலைபேசியின் புளூடூத் அமைப்புகளில் இறங்கி புதிய புளூடூத் சாதனத்தைத் தேடுங்கள், உங்கள் தொகுதியின் அடிப்படையில் HC-05 அல்லது HC-06 என்ற பெயரைக் காண முடியும். நான் HC-06 ஐப் பயன்படுத்துகிறேன், எனவே எனது தொலைபேசி பின்வரும் காட்சியைக் காட்டுகிறது. அதனுடன் இணைக்க முயற்சிக்கவும், அது கடவுச்சொல்லைக் கேட்கும். கடவுச்சொல்லை 1234 என உள்ளிடவும் (சிலருக்கு அது 0000 ஆக இருக்கலாம்) மற்றும் கீழே காட்டப்பட்டுள்ளபடி சரி என்பதைக் கிளிக் செய்யவும்.


பாரிங் வெற்றிகரமாக முடிந்த பிறகு, நாங்கள் இப்போது நிறுவிய புளூடூத் டெர்மினல் பயன்பாட்டைத் திறக்கவும். அமைப்புகள் விருப்பத்தைப் பெற்று, கீழே காட்டப்பட்டுள்ளபடி “ஒரு சாதனத்தை இணைக்கவும் - பாதுகாப்பானது” என்பதைத் தேர்ந்தெடுக்கவும். இது ஒரு பாப் பெட்டியைத் திறக்கும், அங்கு எங்கள் ஜோடி சாதனங்கள் அனைத்தும் கீழே காட்டப்பட்டுள்ளபடி பட்டியலிடப்படும். HC-05 அல்லது HC-06 தொகுதியைத் தேர்ந்தெடுக்கவும்.


இணைப்பு நிறுவப்பட்டதும், இதுவரை ஒளிரும் புளூடூத் தொகுதியின் ஒளி உங்கள் மொபைலுடன் வெற்றிகரமாக இணைக்கப்பட்டுள்ளதைக் குறிக்க மாறாமல் இருக்க வேண்டும். கீழே காட்டப்பட்டுள்ளதைப் போல எங்கள் திட்டத்திலிருந்து அறிமுக செய்தியைப் பெற வேண்டும்.
இப்போது எல்.ஈ.டி ஒளியை இயக்க '1' ஐ அழுத்தி, ஒளியை அணைக்க '0' ஐ அழுத்தவும். முழுமையான வேலை வீடியோவில் காண்பிக்கப்படும். உங்கள் மொபைல் திரை கீழே காட்டப்பட்டுள்ளதைப் போல இருக்கும்.


எனவே அது தான் , எங்கள் பி.ஐ.சி மைக்ரோகண்ட்ரோலருக்கு ப்ளூடூத் தொகுதியை எவ்வாறு இடைமுகப்படுத்துவது என்பதைக் கற்றுக்கொண்டோம், இப்போது இதன் உதவியுடன் வயர்லெஸ் திட்டங்களை முயற்சி செய்யலாம். புளூடூத்தைப் பயன்படுத்தும் நிறைய திட்டங்கள் உள்ளன, நீங்கள் அவற்றை முயற்சி செய்யலாம் அல்லது உங்கள் சொந்த ஐடியாவைக் கொண்டு வந்து கருத்துப் பிரிவில் பகிர்ந்து கொள்ளலாம். எங்கள் முந்தைய திட்டத்தை புளூடூத் டெர்மினல் பயன்பாடு மற்றும் எச்.டி.-05 போன்ற ஸ்மார்ட் போன் கன்ட்ரோல்ட் ஹோம் ஆட்டோமேஷன் யூஸ் ஆர்டுயினோ மற்றும் ஸ்மார்ட் போன் கன்ட்ரோல்ட் டிஜிட்டல் கோட் லாக் போன்றவற்றை ஆர்டுயினோவைப் பயன்படுத்தி சரிபார்க்கவும்.
நம்புகிறேன், இந்த பயிற்சி உங்களுக்கு உதவியது! நீங்கள் எங்காவது சிக்கிக்கொண்டால், தயவுசெய்து கருத்துப் பகுதியைப் பயன்படுத்தவும்.
