forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
PIC16F690: UART wake up // pull up rezistory

 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Elektronika s mikrokontroléry, procesory
 
Dybbuk
Přispěvatel
Přispěvatel


Založen: 18.3.2016
Příspěvky: 28

PříspěvekZaslal: 03 duben 2017, 22:25    Předmět: PIC16F690: UART wake up // pull up rezistory Citovat

Zdravim, potrebujem zobudit PIC zo sleep vzdy ked sa na RX zbernici objavia nejake data. Kedze prerusenie na UART nesposobi prebudenie procesora, vyriesil som to spojenim RX zbernice s lubovolnym vstupom cez 10k - vid prilozeny obrazok. Mam to ale zapojene bez R2. Vsetko funguje perfektne, co ale neviem je, ze ci ma z elektrického hladiska vyznam davat tam R2? Povedzme ze kvôli zabraneniu vzniku nejakého neurciteho stavu na vstupe apod. Na druhej strane Rx zbernice je pripojene zariadenie ktore je tiez v sleep mode a UART ma vypnuty.

Otazka c.2 sa tyka pull-up rezistorov: na obr je na vstup RA0 pripojene tlacitko v klasickom zapojeni ktore ja pouzivam. Otazka je ze ci mozem zo zapojenia vynechat R3 v pripade ze na RA0 aktivujem pull-up. V tychto pull-up rezistoroch nemam este uplne jasno ci sa jedna o plnohodnotnu alternativu externého rezistora, alebo to ma nejake obmedzenie. Este jedna podotazka: v pripade ze R3 mozem nahradit pull-upom, mozem nim teoreticky nahradit aj R2 ak je vôbec R2 potrebny?

PS: samotne data z UARTu nepotrebujem, potrebujem len prebudit PIC, ciz nevadi ak sa nejake prvotne bajty stratia..



pic_UART.jpg
 Komentář:

Stáhnout
 Soubor:  pic_UART.jpg
 Velikost:  82.14 kB
 Staženo:  39 krát

Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Balů
Profesionál
Profesionál


Založen: 29.10.2012
Příspěvky: 719

PříspěvekZaslal: 03 duben 2017, 23:38    Předmět: Citovat

1) Pokud máš standartní UART, pak R2 musí jít na VCC nebo stačí mít aktivovaný pull-up na RB6. V klidovém stavu by měla být UART linka v log. 1 a nemůžeš jí odporem stahovat na GND. Externí přerušení na probuzení procesoru musíš nastavit na sestupnou hranu. Kromě toho, pokud RB6 budeš mít nastavený jako vstupní, s aktivovaným pull-upem a použitý čistě jenom na probuzení procesoru, můžeš vynechat i ten R1 a piny propojit přímo. Musel bys s tím ale počítat i na druhý straně a před vysíláním nastavit data linku do log. 1, chvilku počkat (mezera 2-3 bity bohatě postačí), aby se mezitím probral i tenhle procesor a můžeš začít vysílat.

2) Interní pull-upy se u tlačítek používají zcela běžně. U AVRka je interní pull-up na IO pinech cca 30k. U PICů to předpokládám bude hodnota podobná, ale to by se mělo dát vyčíst z datasheetu.

Teď jsem si teprve přečetl Tvojí poznámku, že nepotřebuješ data z UARTu. Pokud jenom potřebuješ monitorovat, jestli je nebo není aktivita na DATA lince UARTu, pak vůbec nepotřebuješ ten RB5 mít nakonfigurovaný jako UART RX a k němu z druhýho pinu pull-up. Stačí Ti jeden vstupní pin s aktivovaným pull-upem a musí umět vyvolat přerušení (ideálně) při sestupné hraně = START bit, neboli začátek přenosu. Pokud by neuměl probudit procesor na sestupnou hranu (což nepředpokládám), pak náběžná hrana může přijít s prvním datovým bitem, ale může přijít také až se STOP bitem, neboli až po odvysílání celého prvního bytu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Dybbuk
Přispěvatel
Přispěvatel


Založen: 18.3.2016
Příspěvky: 28

PříspěvekZaslal: 04 duben 2017, 17:44    Předmět: Citovat

Dakujem za odpoved - objasnilo mi to dost veci.
Tu moju poslednu poznamku som uplne nedomyslel pred tym ako som to odoslal - data z UART samozrejme potrebujem, ale filtrujem si iba urcitu cast z balika dat ktore pridu. A ta potrebna cast nikdy nie je na zaciatku, cize chcel som tym povedat, ze nie je problem keby sa nejake prvotne byty stratili kym sa PIC prebudi.
Co sa tyka log. 1 na UART v kludovom stave - potvrdzujem ze to suhlasi. Cize pull up je spravna volba.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Balů
Profesionál
Profesionál


Založen: 29.10.2012
Příspěvky: 719

PříspěvekZaslal: 04 duben 2017, 20:56    Předmět: Citovat

Pak jenom zbývá zjistit, jestli RX pin UARTu umí současně fungovat i jako externí přerušení na sestupnou hranu. AVRka (ty, co mají PinChange Interrupt - PCINT) to umí. Já to používám k rozsvícení RX LEDky při komunikaci po UARTu, abych nemusel nějak čas RX LEDky prodlužovat, když by se rozsvítila až po přijetí bytu. Takhle na začátku START bitu LEDku rozsvítím a s UART RX Complete Interruptem ji zhasínám. Pokud ne, musíš propojit TX pin ještě s jedním (odpor R1), ale nedával bych tam víc, než 100R. Jako ochrana to stačí a na druhém pinu aktivuj pull-up a přerušení na sestupnou hranu.

Otázkou zůstává, jaký sleep mód používáš a zda nevypne i pull-upy. Pak bys musel buď použít jiný sleep mód nebo externí pull-upy. PICy nedělám, takže tohle si musíš zjistit sám nebo Ti to musí zodpovědět někdo jiný. Ale rychlejší asi bude to vyzkoušet.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Dybbuk
Přispěvatel
Přispěvatel


Založen: 18.3.2016
Příspěvky: 28

PříspěvekZaslal: 05 duben 2017, 9:14    Předmět: Citovat

To by bolo idealne riesenie keby pin v rezime Rx zaroven mohol fungovat aj ako externe prerusenie - urcite to vyskusam.
Co sa tyka pull-upov v sleep mode, nenasiel som zatial v datasheete nic co by potvrdzovalo, ze sa vypnu, asi tiez vymyslim nejaky sposob ako to otestovat. Asi len meranim napatia/prudu.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Atlan
Profesionál
Profesionál


Založen: 4.2.2009
Příspěvky: 892

PříspěvekZaslal: 05 duben 2017, 19:38    Předmět: Citovat

Kde to bude pouzite? Ako mas osetrene mozne rusenie vstupov procesora? Ktore moze sposobit az jeho reset?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Dybbuk
Přispěvatel
Přispěvatel


Založen: 18.3.2016
Příspěvky: 28

PříspěvekZaslal: 05 duben 2017, 21:03    Předmět: Citovat

Popravde zatial nijak a velmi ani nemam predstavu ako to korektne osetrit nakolko ruseni moze byt million druhov. Mne napada jedine kondik medzi vstup a zem pripadne zener, google radi varistor.
Pripomienka je to vsak velmi dobra, rad si neham poradit ak mas s tym skusenost. Riziko rusenia je vysoke, na druhom konci uart je GSM modem a je/bude umiestneny velmi blizko PIC.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Mahoney
Profesionál
Profesionál


Založen: 26.12.2013
Příspěvky: 107

PříspěvekZaslal: 08 duben 2017, 9:08    Předmět: Citovat

Dybbuk napsal:
Popravde zatial nijak a velmi ani nemam predstavu ako to korektne osetrit nakolko ruseni moze byt million druhov.
Dybbuk napsal:
na druhom konci uart je GSM modem a je/bude umiestneny velmi blizko PIC.


Rovnou na to zapomeň, s tím se nedomluvíš když nevíš co děláš, neexistuje jednoduchá obecná rada - všelék, která by se dala udělit a začalo to fungovat. Ve VF se každá konkrétní realizace vždy řeší konkrétními řešeními a opatřeními (a nezřídka se u doho měří hodně drahým vybavením) a dost často z toho mají těžkou hlavu i lidi, co na to mají školu i s titulem a celoživotní praxi. GSM může vysílat až 4W výstupního výkonu a používá frequency hopping, to proleze všude. Dát hned vedle toho MCU opravdu není dobrý nápad když nevíš jak, a to ty ani netušíš. Popravdě já taky ne, VF nedělám, a lidi co tohle dělají (za velké peníze) nebudou mít čas vypisovat se ti tu na fóru s radami.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Radius
Profesionál
Profesionál


Založen: 22.2.2013
Příspěvky: 471

PříspěvekZaslal: 08 duben 2017, 11:26    Předmět: Citovat

Pokud na to budeš kreslit desku, tak naopak, čím blíže, tím lépe. Krátký spoj = špatná anténa. Minimálně jedna zemní rovina pod celou deskou, signály v mezivrstvě,všemu co má odběr se musí patřičně blokovat napájení. Vstupy a výstupy mimo desku přes RC / LC odrušovací články nebo průchodky, pokud to bude mít kovovou krabičku. Mám to z praxe. Ve firmě kde dělám, jsme takové zařízení vyvinuli - gsm,gps,arm pospolu na desce 18x65 mm a funguje stabilně.

https://www.google.cz/search?q=odrušovací+LC&client=opera&hs=EIU&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjf_I7DwpTTAhUJP5oKHemNBdMQ_AUICSgC&biw=1280&bih=926#tbm=isch&q=odru%C5%A1ovac%C3%AD+LC+%C4%8Dl%C3%A1nek

_________________
x51 , ARM , XILINX
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky
 

 
Dybbuk
Přispěvatel
Přispěvatel


Založen: 18.3.2016
Příspěvky: 28

PříspěvekZaslal: 08 duben 2017, 18:56    Předmět: Citovat

Zase az tak dramaticky by som to hned nevidel, funguje to uz vyse roka a zatial problemy neboli a pred tym to bolo este pol roka na prepojovacom poli natahane kablami. Asi hlavne preto ze 90% casu to spi. Momentalne akurát len riesim prebudzanie USARTom namiesto watchdogu a to teda bolo uz vramci tohto prispevku vyriesene.

BTW Balu potrvrdzujem:
citace:
RX pin UARTu umí současně fungovat i jako externí přerušení na sestupnou hranu


Mahoney:
je pravda co pises, v minulosti ked som cital knihu o VF technike, tak vzdal som to v polovici s tym, ze to je velka veda a na to nemam. No myslim, ze v ramci hobby ma zmysel robit taketo zariadenia aj v domácich podmienkach a nemusim hned kupovat techniku za miliony, aby som vytvoril dokonale odtienene zariadenie, ktore bude fungovat desiatky rokov bez jedinej chyby. Snazim sa robit s tym co mam a vytazit z toho maximum.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Elektronika s mikrokontroléry, procesory Časy uváděny v GMT + 2 hodiny
 
Strana 1 z 1
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2017 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)