algoritmi LED Moving Kirjaudu

B

boonreans

Guest
Haluan algoritmia Scan bittikarttatiedostoa varten signbord auta!

Kiitos!

<img src="http://www.edaboard.com/images/smiles/icon_eek.gif" alt="Järkyttyi" border="0" />
 
1.Käytä rasteri skannaaminen, katso soveltaminen piiri NC6B595 muutos rekisteriin.
http://www.ett.co.th/product/07004.html
Te voi näyttää binary tietojen siirtyminen sarakkeen rekisteröityä, niin muodoin mahdollistaa rivi kuljettaja.Tässä skannaus on nopea 30Hz (käytä ajastin keskeyttää skannata)

2.Muunna bittikarttatiedostoa on binaarimuotoisia, niin voit näyttää sen esittää näyttää puskuriin.

 
Kiitos Zeron!

Ei yo on, miten muuntaa Bitmap-muoto C-kielistä koodia ..

 
Kirjoitin Converter minun itse.
Voin opastaa Miten muuntaa B & W. BMP
joissa komponentteina.
Anteeksi, mutta sinun täytyy kirjautua nähdäksesi tämän liitteen

 
En tiedä, miten käyttää ajastin skannaus prosses
Voitteko auttaa minua?

 
Katso keskeyttää liittyvät doc "eBook upload / download" ja keskeyttää yksityiskohtia.

-Kirjoita koodi config ajastin Int.koskevat 30Hz (~ 30ms.)
-Kirjoita keskeyttää palvelun rutiinin ...
- Sammuta ROW kuljettaja.
- Lisätä ROW.(0-N, sitten overflow 0)
- Siirtyminen COL tietoja nnen vähän puskuria COL siirtää rekisteriin.
- Kytke ROW kuljettaja.

LED pistematriisi etsii rivin rivillä
automaattisesti.

 
Tein sen witout ajastin keskeyttää, jota scaning käsikirja ....
Voitko antaa C-koodia ajastin keskeyttää ...

En voinut tehdä sitä keskeytä ..
Olen iloinen, jos te auttaa minua ..

 
Siellä olet hieman eri C-koodi kirjallisessa keskeyttää palvelun rutiini kunkin Compiler.
Tässä on C-koodi KE * IL C-kääntäjä (MCS-51 perhettä).
Vain esimerkki

<img src="http://www.edaboard.com/images/smiles/icon_exclaim.gif" alt="Exclamation" border="0" />/ / # define CHIP_89C51RD2

# include <stdio.h>
# include <intrins.h>
# ifdef CHIP_89C51RD2
# include "reg51rd2.h"
# else
# include "reg51.h"
# endif

# define XTALFREQ 11059200
# define TIMERINTERVAL 0,030 / * Ajastimen Interval 30ms.koskevat 30Hz * /
# ifdef CHIP_89C51RD2
# define FCYCLE (XTALFREQ / 6)
# else
# define FCYCLE (XTALFREQ/12)
# endif
# define TCONST (65536 - ((UINT) (TIMERINTERVAL * FCYCLE)))
# define HiTCONST (UCHAR) (TCONST/256)
# define LoTCONST (UCHAR) (TCONST% 256)

# define TIMER0STOP (TR0 = 0)
# define TIMER0RUN (TR0 = 1)

# define ENABLE_INT (EA = 1) / * mahdollistaa keskeyttää * /
# define DISABLE_INT (EA = 0) / * poistaa keskeyttää * /

/ / Timer0 Interrupt Service Routine
void timer0int_isr (void) keskeyttää 1 käyttäen 1 / / KÄYTTÖ REKISTERIT Pankki 1
(
TIMER0STOP;
TH0 = HiTCONST;
TL0 = LoTCONST;
TIMER0RUN;
/ / Do skannaus yksi rivi tässä
//...
//...
)void timer0_init (void)
(
TH0 = HiTCONST;
TL0 = LoTCONST;
TMOD = (TMOD & 0xF0) | 0x01; / * 16 bittiä Timer * /
ET0 = 1, / * Ajastin 0 Interrupt käytössä * /
TIMER0RUN; / * Ajastin 0 Started * /
)

void main (void)
(
# ifdef CHIP_89C51RD2
AUXR = 0x01; / / Sisäinen ERAM käytössä, vähentäminen EMI (ALE pois)
# endif
timer0_init ();
ENABLE_INT;
/ / Do tulosaineiston prosessi.
//...
//...
)

 
Tein LED-näyttö 74164 (kahdeksan bittisiirto rekisteri), joka ei ole vilkkuvia pin ......
I did it
Sen takia ..
Voinko käyttää ajastinta keskeyttää?

 
Kiitos Zeron ja koodisi,
Minun Matriisitulostin oli työskennellyt loop mutta kun Testaa C-koodi näyttö alkaa täristä tiedätkö miksi?

 

Welcome to EDABoard.com

Sponsor

Back
Top