Агуулгын хүснэгт:

Хямд 433MHz RF модулиуд болон пик микроконтроллер ашиглан утасгүй холбоо. 2 -р хэсэг: 4 алхам (зурагтай)
Хямд 433MHz RF модулиуд болон пик микроконтроллер ашиглан утасгүй холбоо. 2 -р хэсэг: 4 алхам (зурагтай)

Видео: Хямд 433MHz RF модулиуд болон пик микроконтроллер ашиглан утасгүй холбоо. 2 -р хэсэг: 4 алхам (зурагтай)

Видео: Хямд 433MHz RF модулиуд болон пик микроконтроллер ашиглан утасгүй холбоо. 2 -р хэсэг: 4 алхам (зурагтай)
Видео: Shelby GT500 TPMS Reset/Relearn | Applies to all 2011-2022 Ford | Autel TS401 TPMS Tool. 2024, Арваннэгдүгээр
Anonim
Хямд 433MHz RF модулиуд болон пик микроконтроллер ашиглан утасгүй холбоо. 2-р хэсэг
Хямд 433MHz RF модулиуд болон пик микроконтроллер ашиглан утасгүй холбоо. 2-р хэсэг

Энэхүү зааврын эхний хэсэгт би MPLAB IDE болон XC8 хөрвүүлэгч ашиглан PIC12F1822 -ийг хэрхэн програмчлах, хямд TX/RX 433MHz модулийг ашиглан утасгүй утас дамжуулахыг үзүүлэв.

Хүлээн авагч модулийг USB -ээс UART TTL кабелийн адаптераар компьютерт холбосон бөгөөд хүлээн авсан өгөгдлийг RealTerm дээр харуулав. Харилцаа холболтыг 1200 бауд дээр гүйцэтгэсэн бөгөөд хамгийн дээд хүрээ нь хананд 20 метр орчим байв. Миний туршилтууд нь өгөгдөл дамжуулах өндөр хурд, холын зай шаарддаггүй, тасралтгүй дамжуулах шаардлагатай програмуудын хувьд эдгээр модулиудыг маш сайн гүйцэтгэдэг болохыг харуулсан.

Энэхүү төслийн хоёр дахь хэсэг нь хүлээн авагч дээр PIC16F887 микроконтроллер, 16 × 2 тэмдэгт бүхий LCD модулийг хэрхэн яаж оруулахыг харуулав. Нэмж дурдахад дамжуулагч дээр хэд хэдэн урьдчилсан байт нэмж оруулснаар энгийн протоколыг дагаж мөрдөнө. Эдгээр байт нь RX модульд бодит ачааг авахаас өмнө ашиг орлогоо тохируулахад шаардлагатай байдаг. Хүлээн авагчийн талд PIC нь LCD дэлгэц дээр гарч буй өгөгдлийг хүлээн авах, баталгаажуулах үүрэгтэй.

Алхам 1: Дамжуулагчийн өөрчлөлт

Дамжуулагчийн өөрчлөлт
Дамжуулагчийн өөрчлөлт
Дамжуулагчийн өөрчлөлт
Дамжуулагчийн өөрчлөлт
Дамжуулагчийн өөрчлөлт
Дамжуулагчийн өөрчлөлт

Эхний хэсэгт дамжуулагч нь хэдхэн мс тутамд найман өгөгдлийн бит, эхлэл, зогсолтын битийг секундэд 1200 бит ашиглан энгийн мөрийг илгээдэг байв. Дамжуулалт бараг тасралтгүй явагдаж байсан тул хүлээн авагч нь хүлээн авсан өгөгдөлд ашиг орлогоо тохируулахад бэрхшээлтэй байсангүй. Хоёрдахь хэсэгт програм хангамжийг өөрчилсөн бөгөөд ингэснээр дамжуулалтыг 2.3 секунд тутамд хийдэг. Үүнийг дамжуулагч бүрийн хооронд унтах горимд оруулдаг микроконтроллерийг сэрээхийн тулд харуулын нохойн таймерын тасалдал (2.3 сек -ээр тохируулсан) ашиглан хийдэг.

Хүлээн авагч нь ашиг орлогоо нарийн тааруулах цаг гаргахын тулд богино өгөгдөл дамжуулах хугацаатай хэд хэдэн оршил байт "(0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xfa)" гэсэн хэдэн оршил байтыг бодит өгөгдлөөс өмнө илгээдэг. Дараа нь ачааг '&' эхлэх ба зогсоох '*' байтаар зааж өгнө.

Тиймээс энгийн протоколыг дараах байдлаар тайлбарлав.

(0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xf8) (0Xfa) & Hello InstWorld!*

Үүнээс гадна, dc-dc алхам дээшлэх модулийн улмаас үүссэн долгионоос салахын тулд RF модулийн V+ ба GND хооронд 10uF задлах тантал конденсаторыг нэмж оруулав.

Баудын хурд ижил хэвээр байсан боловч миний туршилт 2400 baud дээр дамжуулалт үр дүнтэй болохыг харуулсан.

Алхам 2: Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD нэмэх

Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD нэмж оруулах
Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD нэмж оруулах
Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD дэлгэцийг нэмж оруулах
Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD дэлгэцийг нэмж оруулах
Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD нэмж оруулах
Хүлээн авагчийн өөрчлөлт: PIC16F887 ба HD44780 LCD нэмж оруулах

Хүлээн авагчийн загварыг PIC16F887 дээр суурилсан боловч та бага зэрэг өөрчлөлт хийснээр өөр PIC ашиглаж болно. Төсөлдөө би энэ 40 зүү μC -ийг ашигласан бөгөөд энэ загвар дээр үндэслэсэн ирээдүйн төслүүдэд надад нэмэлт зүү хэрэгтэй болно. RF модулийн гаралт нь UART rx зүүтэй холбогддог бол 16x2 тэмдэгт lcd (HD44780) нь хүлээн авсан өгөгдлийг харуулахын тулд b2-b7 PORTB зүүгээр холбогддог.

1 -р хэсгийн нэгэн адил хүлээн авсан өгөгдлийг RealTerm дээр харуулдаг. Үүнийг USB -UART TTL кабелийн адаптер ашиглан компьютерт холбосон UART tx зүү ашиглан хийдэг.

Програм хангамжийг үзэхэд UART тасалдах үед програм нь хүлээн авсан байт нь эхлэлийн байт ('&') эсэхийг шалгадаг. Хэрэв тийм бол, энэ нь дараагийн байтуудыг бүртгэж эхэлнэ. Өгүүлбэрийг бүхэлд нь олж аваад, хэрэв энэ нь өмнө тайлбарласан энгийн протоколд нийцэж байвал түүнийг lcd дэлгэц болон UART tx порт руу илгээнэ.

Эхлэх байтыг хүлээн авахаас өмнө хүлээн авагч өмнөх оршил байтуудыг ашиглан ашиг орлогоо тохируулсан байна. Эдгээр нь хүлээн авагчийн хэвийн ажиллагааг хангахад чухал үүрэгтэй. Илүүдэл ба хүрээний алдааны энгийн шалгалтыг хийдэг боловч энэ нь UART -ийн алдааг зохицуулах үндсэн ажил юм.

Тоног төхөөрөмжийн хувьд хүлээн авагчийн хувьд хэд хэдэн хэсэг шаардлагатай болно.

1 x PIC16F887

1 х HD44780

1 x RF Rx модуль 433 МГц

1 x 10 μF тантал конденсатор (салгах)

1 x 10 K тайрагч (LCD фонтын тод байдал)

1 x 220 Ω 1/4 W эсэргүүцэл (LCD арын гэрэлтүүлэг)

1 x 1 KΩ 1/4 W

1 x 433Mhz антен, 3dbi

Практикт хүлээн авсан хүмүүс хана хэрмээс 20 метрийн зайд маш сайн ажилладаг байв.

Алхам 3: Цөөхөн хэдэн лавлагаа …

Интернет дээр албан ёсны Microschip вэбсайтаас гадна PIC програмчлал, алдааг олж засварлах талаар зөвлөгөө өгдөг олон блог байдаг. Надад дараахь зүйлс маш их тустай санагдсан.

www.romanblack.com/

0xee.net/

www.ibrahimlabs.com/

picforum.ric323.com/

Алхам 4: Дүгнэлт ба ирээдүйн ажил

Энэхүү зааварчилгаа нь RF модулиуд болон Pic микроконтроллеруудыг хэрхэн ашиглах талаар ойлгоход тусалсан гэж найдаж байна. Та өөрийн програм хангамжийг өөрийн хэрэгцээнд нийцүүлж, CRC болон шифрлэлтийг оруулах боломжтой. Хэрэв та дизайныг илүү боловсронгуй болгохыг хүсвэл Microschip-ийн Keeloq технологийг ашиглаж болно. Хэрэв таны програмд хоёр талт өгөгдөл шаардлагатай бол та хоёр микроконтроллер дээр хос TX/RX-тэй байх ёстой, эсвэл илүү боловсронгуй дамжуулагчийг ашиглаж болно. модулиуд. Гэсэн хэдий ч ийм хямд 433MHz модулийг ашиглан зөвхөн хагас дуплекс холболтыг хийх боломжтой болно. Цаашилбал, харилцаа холбоог илүү найдвартай болгохын тулд TX ба RX хооронд ямар нэгэн байдлаар гар барих шаардлагатай болно.

Дараагийн зааварчилгаа дээр би дамжуулагч дээр температур, барометрийн даралт, чийгшил бүхий хүрээлэн буй орчны мэдрэгчийг суурилуулсан практик хэрэглээг үзүүлэх болно. Энд дамжуулсан өгөгдөл нь crc -ийг багтаах бөгөөд үндсэн шифрлэлттэй байх болно.

Мэдрэгч нь PIC12F1822 -ийн i2c портыг ашиглах бөгөөд дамжуулагч болон хүлээн авагчийн аль алиных нь хэрэгжилтийг схем болон pcb файлуудаар дамжуулан үзүүлэх болно. Намайг уншсанд баярлалаа!

Зөвлөмж болгож буй: