Probleem met power down mode in 8051

S

seemanta

Guest
Hoi,

Ik heb een RTC chip (DS12887) die op gezette tijden, bevestigt de IRQ-regel die is aangesloten op de INT0 lijn van mijn AT89S52.

Ik heb gezien dat als mijn micro is in idle-modus, de ISR voor INT0 krijgt periodiek te noemen, zonder enige interventie.

Echter, als mijn micro is de macht van mode, het ISR niet krijgen genaamd.Aan de macht down modus de enige manier om zich te beroepen op de ISR is om de korte INT0 pin op de grond even.

Ik ben niet in staat te begrijpen waarom handmatig kortsluiting naar aarde werkt in PD-modus, maar die beweert de IRQ-lijn van de RTC niet werkt.

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Triest" border="0" />Alle hulp / suggesties?Vanwege dit, ik ben niet in staat te voeren power down mode in mijn digitale klok

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Triest" border="0" />Idle mode lijkt te werken, maar het is de macht van mode waarin ik ben meer geïnteresseerd.

Alle hulp wordt zeer gewaardeerd!PS Op het veiligheidsinformatieblad AT89S52 lijkt te ontwaken uit de macht van mode door externe onderbreken.Ik ben daarom Clueless waarom dit niet werkt!

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Triest" border="0" />
 
Hi Seemanta,
U heeft nog niet gotout van dit probleem, lijkt het, de HOUDEND pin aan de macht omlaag moet wastafel meer stroom, die RTC niet in staat is tot zinken?, Probeert met behulp van een buffer tussen, het is slechts mijn raden.Controleer ook de logica niveau HOUDEND wanneer RTC stations de pin.
Groeten,
Laktronics.Toegevoegd na 4 uur 16 minuten:Hoi,
Meer dan het niveau van het signaal, is de breedte van het signaal dat is belangrijk.De INT0 moet worden geactiveerd niveau in dit geval en het niveau van het signaal moet blijven laag tot de oscillator stabiliseert en schakelaars te onderbreken routine.Dus, ofwel strekken de pols een beetje met behulp van een CMOS monoshot of een duidelijke HC Flipflop die zal genereren INT0-en in de interrupt routine de Flipflop usind een haven pin indien beschikbaar.

Groeten,
Laktronics.

 
Bedankt voor uw antwoord!
Gewoon een gedachte, kan ik gebruik maken van een transistor voor hetzelfde?Ik sluit de IRQ aan de basis en gebruik het dan als een schakelaar voor het verkrijgen van een hoge huidige station en de IRQ pin.

De reden dat ik ben meer geïnteresseerd zijn voor het gebruik van een transistor, omdat ik al enkele thuis en ik moet niet verder 15 KM weer om te winkelen voor de delen die u hebt vermeld.

Mits natuurlijk de pulsduur volstaat.Anders als u noemde ik zou hebben voor het gebruik van een flip-flop.Maar voor dat ik zou hebben om gebruik te maken van een vrije poort pin, dat is wat ik heb niet op het moment

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Triest" border="0" />Ik ben gedoemd, denk ik

<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Huilen of zeer triest" border="0" />groeten,
Seemanta

 
Hoi,
Meest waarschijnlijk is het probleem niet met de drive probleem, het zou de pulsbreedte probleem.Probeer als je kan strekken de pols en toe te onderbreken met een poort en een RC-circuit, met behulp van FF zal een schone taak.Ik veronderstel dat u al met niveau triggering voor onderbreken?Vertel me hoe groot is de breedte van de pulsuitgang van RTC?Als er een probleem is.IT, worden te krijgen over het geen andere snelkoppelingen.
Groeten,
Laktronics.

 
Hi Laktronics,
Ik controleerde de data sheet van de DS12887 RTC chip.Hier is wat er geschreven:

Citaat:De IRQ-uitgang

laag blijft, zolang de status bit waardoor de interrupt is aanwezig en de

overeenkomstige interrupt inschakelen bit is ingesteld.
De processor programma normaal

luidt de C-register om de IRQ pin.
De RESET pin ook wist in afwachting

interrupts.
Als er geen interrupt voorwaarden aanwezig zijn, de IRQ-niveau is in het highimpedance

toestand.
 
Hoi,
U bent zeer goed.Voordat proberen met transistor, kunt meten met een mutimeter wat signaal laag niveau dat u krijgt wanneer RTC is een onderbreking, zoals u hebt gezegd, als de toestand duurt totdat het wordt goedgekeurd, moet u in staat om de niveaus.Ook tijdens het gebruik van de transistor, zorg toe te passen logica laag naar interrupt lijn.Ook, onder welke voorwaarden deze interrupt wordt gegenereerd nu?
Groeten,
Laktronics

 
Citaat:Ook, onder welke voorwaarden deze interrupt wordt gegenereerd nu?

 
Hoi,
Onderbreken nadat update is heel goed.Nu heb je meten van het niveau waarop de CPU is in de macht van mode en RTC onderbreken aangesloten op INT-pin van de CPU.Als dan ook als je leest een goed niveau 0, wat kan u nog meer verwachten van RTC?Ik ga met uw verklaring dat wanneer INT-pin is kortgesloten naar aarde, de CPU is hersteld van de slaapstand.
Ook kunt u bevestigen dat de CPU is geprogrammeerd voor NIVEAU in werking stellen van de onderbreking, waarvan ik denk dat het geval zou moeten zijn, omdat anders de externe kortsluiting zou ook hebben gefaald.Als de INT-lijn toont zeer nabije 0Volts in de slaapstand wanneer IRQ output van RTC gaat laag, ik heb weinig hoop op het gebruik van de transistor, probleem is iets anders.
Groeten,
Laktronics

 
Hoi,

Je moet zorgen voor de volgende zaken, indien van RTC IRQ signaal niveau is te vinden op OK:
1.Programma externe onderbreken voor niveau op gang brengen en niet voor rand triggering.
2.Schakel externe interrupt binnen de externe interrupt routineand inschakelen voordat u naar slaapstand.
3.Omdat je zei, je leest het C register binnen de externe interrupt routine, zou het gelijk naar stap 2 zelf.

Met dit veel gedaan.uw software zou moeten werken, tenzij de chip-versie ondersteunt niet wakker uit de slaap met onderbreken, kan u contact opnemen met Atmel steun voor verdere hulp.Wat zie je door kortsluiting int-pins naar aarde door een draad, kan te wijten zijn aan uw injecteren wat lawaai in de int-pens in dat geval?

Groeten,
Laktronics

 
Hi Seemata,
Wat is er gebeurd met je probleem?Ik denk dat ik heb de oplossing voor je.Hoewel van Atmel S52 catalogus is het niet duidelijk, te vergelijken met de S2051, lijkt het erop dat u hoeft te geven slechts een puls van ongeveer 3msec aan de Int-ingang.Dus, ten minste voor test doeleinden gebruik van een CMOS monoshot en ontvang een negatieve puls van ongeveer 3 msec van RTC INTREQ-(je moet optrekken deze pen, omdat het open drain) en toepassing van de puls te INT-pin van de CPU.In je interrupt routine, ook voor de INT-pin te gaan hoog en start vervolgens de uitvoering van uw interrupt routines.
Ik ben er zeker van dat het zou moeten werken.
Groeten,
Laktronics

 
Hi Laktronics,
Bedankt voor uw blijvende hulp in deze kwestie!Ik ben verplicht.Ja ik heb een beetje van het onderzoek over dit onderwerp.
Ik heb zelfs geprobeerd met behulp van een RC-circuit ter beperking van de duur van het LOW IRQ pols.Helaas is dat niet werkt

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Triest" border="0" />Dus ik kwam tot de conclusie dat een one shot-circuit is de beste oplossing.
Maar ik heb nooit gebruikt voor een zo nemen de tijd om meer over te lezen.
Mijn grootste probleem is ik ben niet in staat om te achterhalen welke IC te gebruiken als monoshot.
Dit kan een stomme vraag, maar kunt u mij vertellen welke IC u verwijzen naar hier als je zegt "CMOS Monoshot '?

Hoewel ik niet weet wat een monoshot schakeling (een monostable multivibrator) en weten ook dat het kan worden gemaakt met behulp van een 555 timer, mijn andere probleem is dat ik kan geen gebruik maken van een zeer omvangrijke of grote IC omdat al mijn prototyping is gedaan en erg weinig ruimte wordt gelaten op het circuit bord.

<img src="http://www.edaboard.com/images/smiles/icon_sad.gif" alt="Triest" border="0" />Zoals nogmaals, ik zal u dankbaar voor uw hulp!(En voeg helpen punten te

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />

)

groeten,
Seemanta

PS In mijn huidige ontwerp ben ik niet met behulp van een externe pull-up, omdat ik dacht dat poort P3 (die de / INT0 pins, heeft een interne 10k pull-up. De klok lijkt te werken. Dus ben ik gelijk met het wegwerken van de pull-up ?

PPS Een andere vraag die ik had was, als ik nog een actieve elektronische component in de vorm van deze monoshot IC, zal ik niet worden steeds meer het stroomverbruik van de schakeling als geheel en het doel van de macht beneden?
Ik hoop dat het stroomverbruik verhogen door toevoeging van een monoshot minder zal zijn dan wat ik zal redden door te gaan op de macht van mode!

 
Hi Seemanta,
Goed dat je niet hebben verlaten de draad.
1.U kunt gebruik maken van NE555 zich als monoshot alleen voor testimg doeleinden, zonder zich zorgen te maken over het stroomverbruik, want het punt is voor het onderzoek naar de conditie van de macht naar beneden.In feite was ik verwijzen naar NE555 zelf in CMOS-versie, ik denk dat het onderdeel nummer is NE7555 en haar vermogen zal worden verantwoord in PDN toepassingen.U kunt deze IC mout op een klein daughterboard en monteer ergens in uw Klok Project zonder dat uw belangrijkste PCB lay-out.Ik heb niet suggereren de RC oplossing omdat het zal vereisen grote condensator voor het genereren van dergelijke lange vertragingen en een sluitkracht diode te beschermen zal ook worden gevraagd en nog steeds de timing niet kan worden berekend correct.
2.De pullup op INT-pin is OK in uw geval.

Groeten,
Laktronics

 
Thanks a lot for your help!
Ik zal proberen uit de 555-variant die u hebt genoemd en laten u weten wat er gebeurd met mijn probleem!

groeten,
SeemantaToegevoegd na 1 uur en 42 minuten:Ik kwam om te weten over 74LS121 chip.Het lijkt dit een toegewijde een IC-opname, en ik denk dat het aantal van randapparatuur nodig hier zou veel minder (anders dan een standaard weerstand en een condensator).

Ik zal proberen beide 555 en 74LS121 en laten u weten wat de resultaten.

groeten,
Seemanta

 
Ik gebruikte een 74LS121 en het werkte!

<img src="http://www.edaboard.com/images/smiles/icon_biggrin.gif" alt="Very Happy" border="0" />Bedankt voor uw constante begeleiding, Laktronics!

Maar ik heb twee vragen:

1.Zal niet de toevoeging van de 74LS121 het huidige getrokken en daarmee het stroomverbruik en offset enig voordeel zou ik hebben, door zich aan de macht down modus?

Ik ben van plan om de huidige maatregel die in de normale en de PD-modus en dan vinden de gemiddelde huidige echt beslissen of ik zou het implementeren van de 121.Maar wilde weten of anderen hebben een soortgelijke ervaring op dit punt.

2.Mijn code ziet er ongeveer als volgt uit:

Code:ORG 0003H; ISR voor / INT0

LCALL INT0_ISR

RETIORG 0030H

MAIN:; belangrijkste regel code

; sommige code ...

; nog meer code ...

; nog wat meer code ...

HIER: MOV PCON, # 02u; ga aan de macht van mode

SJMP HIERINT0_ISR:; ISR voor mijn onderbreken

; doen stuff

; meer doen stuff

RET
 
Hoi,
Groot om te weten dat de slaapstand werkt.

1.Nou, de manier waarop je doet alles in de interrupt routine, dit is hoe het moet zijn om de CPU in slaap-modus met behulp van een 'sjmp hier kort na de slaap instructie.Als alternatief kunt u de inerrupt routine kleine en zetten de meeste van de resterende programma net na slapen instructie met een definitieve sprong naar de slaap instructie, al ben ik niet kunnen vinden, enig voordeel doen.
Door de manier, de set van codes die je moet doen om de tweede kan er al vóór de eerste keer in de slaapstand, wat u kunt doen is niet te herhalen al die codes opnieuw in de interrupt routine,
in plaats net een sprong na de slaap-instructie aan die code ingesteld, zodat, na de uitvoering van deze codes, het programma zal automatiaclly uitgevoerd in de slaap-instructie als de eerste keer.Vergeet niet, wanneer de slaap instructie wordt uitgevoerd, wordt de CPU niet doen totdat de nect onderbreken.

2.Gebruik geen LS121, gebruik een HC121 of een CMOS-555 om energie te besparen.

All the best,
Groeten,
Laktronics

 
Bedankt voor uw antwoord!

Ik heb wel een NXP 7555 chip.Is dit een CMOS-low power variant?Ik heb ook een NE555 uit ST Micro.Welke is beter van de twee?

Ook heb ik gehoord dat HC en HCT zijn twee verschillende series.Wat zijn de verschillen tussen de twee.Zowel ik aan zijn laag vermogen varianten van 74LS121, ben ik gelijk?

Maar ik zou willen gaan met de betere van de twee.Ook is er een HC variant van mijn AT89S52 ook?Ik denk AT89S52 al gebruikt CMOS technologie dus is het toch al lage stroom verbruiken, toch?

Sorry van die domme vragen!

groeten,
Seemanta

 
Hoi,

1.7555 is een low power apparaat.Maar geen gewone 555 IC.

2.HCT apparaten zijn compatibel met TTL-interface, maar in uw toepassing, omdat u niet met TTL, HC werkt goed en zal zorgen voor een betere ruis marges.

3.Ik denk dat je moet worden voldaan voor de huidige met de kracht dissipatie van S52 in powerdown modus, ik weet niet of pinouts van 89S2052 volstaat uw eisen voldoet, kan hij waarschijnlijk zelfs mindere huidige eis.

Groeten,
Laktronics

 
Hoi,
Bent u zeggen dat mijn project niet TTL?Ik was onder de indruk dat al mijn onderdelen zijn TTL gebaseerd.

Want ik ben met behulp van een AT89S52 en een DS12887.En ja, ik zou gaan krijgen HC componenten en probeer hetzelfde.
Houden u op de hoogte!

groeten,
Seemanta

 

Welcome to EDABoard.com

Sponsor

Back
Top