timer2 auto-reload-tilassa

P

palchen

Guest
Minun hankkeen
Olen käyttäen AT89C52 näyttää 6x7segment Multipleksoituja näyttö.
Haluan päivittää näytöt käyttävät timer2 auto reload tilassa.
Timer2 ei toimi minulle.Näyttää siltä, että ohjelma ei edes päästä timer2-ISR.

Katsoin 2 keskustelua timer2 vuonna edaboard foorumi myös noudatti samaa ... mutta ei onnea.sirulle ja näyttö r sakko,
olen jo tarkistanut, muiden ohjelmaan.En ole varma, onko T2CON ja T2MOD valuse r sakko (i kokeillut erilaisia yhdistelmiä ... T2MOD = T2CON = 0x00, T2MOD = 0x01, T2CON = 0x40) ..

Olen käyttäen Keil uVision3.Below on minun ohjelmaan.Tällä hetkellä ohjelma,
olen vain virkistävää yksi näyttö tämä on vain testata timer2 työpäivän .. apua arvostetaan ..
Code:

# include <REGX52.H>

# include <stdio.h>/ /

/ / TMR2 ajastin keskeyttää palvelun rutiinia.
Ohjelma hyppää sen ISR joka 1ms.

/ /mitätön timer2_ISR (void) keskeyttää 5 käyttäen 1

(TF2 = 0;

/ / 1. LCD-näyttö ei.
0

P2 = 0XEE;

P0 = 0x01;)//------------------------------------------------ ------------------------

//------------------------------------------------ ------------------------

//---------------------------- MAIN PROGRAM ------------------ ---------------mitätön tärkeimmät ()

(

/ / satama init

P2 = 0x00; / / Yhteydessä LCD-segmentit

P0 = 0x00; / / P0.0-0,5 kytketty LCD valvonta/ / timer2 init näytön virkistystaajuusT2MOD = 0x01;

T2CON = 0x40; / / EXF2 = 1, auto uudelleen kuorma-tilassa

RCAP2H = 0xFC; / / count for 3ms

TH2 = 0xFC;

RCAP2L = 0x65;

TL2 = 0x65;

Tr2 = 1; / / Käynnistä ajastin

while (1);

)
 
Hi palchen,

Mielestäni sinun pitää antaa Maailmanlaajuisesti mahdollistaa katkaisevat EA = 1; alkamisesta ajastin 2 (Tr2 = 1)

Hurraa

 
kiitos Bassan,
u olivat oikeassa,
olin jotta timer2 IE ...Sen työ nyt.

Näyttö toimii hyvin vain tämän ohjelman, mutta jos voin lisätä mitään uutta koodia (minun tapauksessani, olen rajapinnat näppäimistö syöttää numeroita ja näyttää sen, että 7-seg), näyttö alkaa vipattaa ..

Olen antanut erittäin tärkeitä timer2 keskeyttää IP ...riippumatta siitä, virtauksen, timer2 keskeyttää pitäisi mennä kaikilla 1 ms oikea?Olenko puuttuu jotain?on olemassa muita toteuttamista, joka on suurempi painoarvo?

Olen alkanut ihmetellä, jos ajastin keskeyttää on tapa 6x7-segmentin mux näyttö virkistävä ....( olen jo kokeiltu viive toiminto .. että oli välkyntä liian ..)

 

Welcome to EDABoard.com

Sponsor

Back
Top