Asynkroninen CCS-C ohjelmasuunnitteluun PIC

Y

yuenkit

Guest
Hei,

Tarvitsen apua koodin Asynkroninen Lähetetty pöytäkirjan CCS-C.

Olen käyttäen yhtä IO nastainen.Joten cann't käyttöä "# käyttää RS232" (joka käyttää yhtä XMIT ja yksi RCV nastainen).

Joku kertoi minulle ppl yleensä käyttää ASM koodin Async protokollan sijaan, C, koska tiukka aikataulu.

1.Miten koodi sen käyttämällä C?Tiedän, että se
on mahdollista, mutta I dont osaat laskea viivästyminen ja ajoitus.

2.Jos i on käytettävä ASM, i on taipumus käyttää # ASM joka sekoittaa C-koodia.Ongelmana on, se saattaa sotkea oma koodi, koska C ja ASM voivat käyttää samoja muistipaikka,
enkä tiedä etukäteen, että C käyttää tallentaa tietoja.

Kiitos ratkaista minun ongelmani.

 
Vuonna mikro, kaikki on synkroninen on kello.Do you mean pöytäkirjasta muuttujan välisestä viivästyksestä bittiä?Jos on,
millaisia viiveitä olet odottanut?

 
Esimerkkinä mainittakoon, että bittinen viive on 104 meille.
Kuitenkin lisäksi 104 meille, että silmukka se itse luo viipymättä shift_left luo viivytystä ja joka opetus myös aiheuttaa viivästyksiä.

Laske ne viive voi kestää jopa joitakin vaivaa.
Code:

Code:# define BIT_DELAY 104;mitätön RS232_xmit (BYTE tiedot)

(

int i;output_low (RS232_XMIT);

delay_us (BIT_DELAY);

for (i = 8; i! = 0, i -)

(

output_bit (RS232_XMIT, shift_left (& data, 1, 0));

delay_us (BIT_DELAY);

)

output_high (RS232_XMIT);

delay_us (BIT_DELAY);

)

 
104us on melko tiukka.Jotta tällainen tiukka aikataulu, sinun täytyy tehdä se ASM.Et tiedä, kuinka laskea dealys alkaen ASM oikeassa?Jos käytät CCS, voit katsoa sen LST-tiedosto.

 

Welcome to EDABoard.com

Sponsor

Back
Top