pic pwm 38 kHz
pic pwm 38 kHz
Helt ny inför pic... finns det någon pic med pwm (pulse with modulation) som kan generera 38 kHz för tex infrarött ljus.
Som andra har sagt, vilken PIC som helst med PWM/CCP modul.
Allt från 8-pinnaren 12F683 till praktiskt taket all a större modellern.
För övrigt är det himla enkelt att köra IR-com med CCP modulen.
Bara sett upp den och styr sedan bärvågen till/av med enda bit i ett register. Genom att "kolla" en bit i den räknare som styr CCP modulen så kan man enkelt få "rena" till/från av bärvågen utan halva pulser och liknande.
Allt från 8-pinnaren 12F683 till praktiskt taket all a större modellern.
För övrigt är det himla enkelt att köra IR-com med CCP modulen.
Bara sett upp den och styr sedan bärvågen till/av med enda bit i ett register. Genom att "kolla" en bit i den räknare som styr CCP modulen så kan man enkelt få "rena" till/från av bärvågen utan halva pulser och liknande.
- bengt-re
- EF Sponsor
- Inlägg: 4829
- Blev medlem: 4 april 2005, 16:18:59
- Skype: bengt-re
- Ort: Söder om söder
- Kontakt:
Med risk att vara en tråkmåns vill jag påpeka ett problem om man inte tänker sig för - man bygger sin 38khz med ccp-modulen, matar iväg den till en ir-diod, frid och fjöjd, men om man på samma kort vill ta emot 38khz med en ir-modul och dessa sitter på ungefär samma ställe finns en stor risk att 38khz plockas upp man tar emot sig själv. lätt löst med ett RC-filter på matningen för ir-mottagarmodlen, men gör det också! Har stött på dessa EMI-problem och det är rätt störande..... (hihi)
- Schnegelwerfer
- Inlägg: 1863
- Blev medlem: 8 november 2004, 13:46:56
Du kan inte göra flera saker samtidigt med en enprocessorlösning. Jag vet att det finns OS till PIC som stöder timeslotting, men jag vet inte exakt hur bra de fungerar.
Jag antar att du tänker bygga någon fjärkontrollapplikation? Du kan kanske använda dig av interrupts för att hålla koll på inkommande signaler samtidigt som ditt huvudprogram exekverar.
Jag antar att du tänker bygga någon fjärkontrollapplikation? Du kan kanske använda dig av interrupts för att hålla koll på inkommande signaler samtidigt som ditt huvudprogram exekverar.
För att ha timeslotting "måste" du ha ett RTOS och jag har aldrig sett sånt till PIC, å andra sidan är det total överkill på en PIC. Ska man köra flera task "samtidig" ska du nog se dig om efter en helt annan styrenhet med helt andra recurser.
Men rätt använd kan interrupts vara det helt rätta, man får nära nog realtidsrespons och man kan använda timern t.ex. till att sekventiera saker i samarbete med mjukvaran såklart.
Men rätt använd kan interrupts vara det helt rätta, man får nära nog realtidsrespons och man kan använda timern t.ex. till att sekventiera saker i samarbete med mjukvaran såklart.
Hela denna diskussion är helt bortkastad innan vi vet vad vlad menar med "samtidigt".
"Samtidigt" kan vara "inom samma millisekund", "inom 10 microsekunder" eller "samma dag" helt beroende på sammanhanget.
I allmänhet är det inga problem alls för en PIC att göra flera sakar "samtidigt" och det finns inget som helst koppling till interrupt.
Interrupt har med att göra "något annat" snabbt, även om det oftast blir enklare och "renare" kod på det sättet.
Med en mer "sann" definition av samtidigt, så gäller naturligtsvis att ingen PIC (eller någon annan singel task/singel thread processor heller) kan utföra någonting alls samtidigt...
"Timesharing" och "Real time" OS är inte detsamma, snarare motsatser och är optimerade för att lösa olika saker. Ett RTOS är optimerat för att svara snabbt (vad det är är en annan sak) på ej planerade händelser som t.ex interrupt från interface. Ett "time share" system är optimerat för att effektivt dela på tillgängliga resurser på ett sådant sätt att användarna upplevar att de har kontinuerlig "access" till systemet.
Jag antar att det med "timeslotting" närmast avses "time sharing", eller hur ?
För att återvända till PIC, så finns det folk som påstår att de har skrivit RTOS till PIC, men jag vet inte hur använda de är i praktiken. Med lite kännedom om vad man håller på med (och en definition av vad man för tillfället menar med "samtidigt" !), så fixar sig det nog i alla fall...
"Samtidigt" kan vara "inom samma millisekund", "inom 10 microsekunder" eller "samma dag" helt beroende på sammanhanget.
I allmänhet är det inga problem alls för en PIC att göra flera sakar "samtidigt" och det finns inget som helst koppling till interrupt.
Interrupt har med att göra "något annat" snabbt, även om det oftast blir enklare och "renare" kod på det sättet.
Med en mer "sann" definition av samtidigt, så gäller naturligtsvis att ingen PIC (eller någon annan singel task/singel thread processor heller) kan utföra någonting alls samtidigt...
"Timesharing" och "Real time" OS är inte detsamma, snarare motsatser och är optimerade för att lösa olika saker. Ett RTOS är optimerat för att svara snabbt (vad det är är en annan sak) på ej planerade händelser som t.ex interrupt från interface. Ett "time share" system är optimerat för att effektivt dela på tillgängliga resurser på ett sådant sätt att användarna upplevar att de har kontinuerlig "access" till systemet.
Jag antar att det med "timeslotting" närmast avses "time sharing", eller hur ?
För att återvända till PIC, så finns det folk som påstår att de har skrivit RTOS till PIC, men jag vet inte hur använda de är i praktiken. Med lite kännedom om vad man håller på med (och en definition av vad man för tillfället menar med "samtidigt" !), så fixar sig det nog i alla fall...
- Schnegelwerfer
- Inlägg: 1863
- Blev medlem: 8 november 2004, 13:46:56
Lite läsvärt (?) :
http://www.sxlist.com/techref/microchip ... asking.htm
http://www.microchipc.com/Hi-Tech_C_multitask.htm
http://fse.bc.ca/Calvin.html
http://www.freertos.org/
http://forum.allaboutcircuits.com/lofiv ... /t992.html
http://www.picos18.com/index_us.htm
EDIT: Bara för att förtydliga, så anser att vlad inte alls har behov av något av ovanstående för projektet som han har beskrivit här...
http://www.sxlist.com/techref/microchip ... asking.htm
http://www.microchipc.com/Hi-Tech_C_multitask.htm
http://fse.bc.ca/Calvin.html
http://www.freertos.org/
http://forum.allaboutcircuits.com/lofiv ... /t992.html
http://www.picos18.com/index_us.htm
EDIT: Bara för att förtydliga, så anser att vlad inte alls har behov av något av ovanstående för projektet som han har beskrivit här...
- EagleSpirit
- Inlägg: 1288
- Blev medlem: 27 maj 2003, 23:15:48
- Ort: Västerås
- Kontakt: