problém v AVR C kódů

E

engineer khan

Guest
?? to, co dělá tyto prostředky v programu propojení LCD (plz někdo pomoct mi bratry)
Code:
 lcd_cmd (unsigned char položka) {dataport = item; ctlrport = (0
 
Oba výpis kódu dělají totéž s výjimkou zpoždění (50) v prvním seznamu.
 
Myslím, že problém je se složitostí zde autor kódu snažil kód jasné, ale to by mohlo být složitější nezkušených očích. (S) se pokusil zdůraznit "R" a "rw" bity by měly být 0, pokud "en" je taktovaný:
Code:
 ctlrport = (0
 
co>, |?? stát stručný nich plz,,,, převýšení v použití stejné c kódy jako pro 8051, jak jsem dal v předchozím příspěvku??
 
Už jste udělali hledání pro operátory C? Pokud ne, měli byste, najdete mnoho webových stránek, které vysvětlují tyto.
 
[QUOTE = inženýr khan; 1139411]????, Co>, | stojan na krátké nich plz,,,, převýšení v použití stejné c kódy jako pro 8051, jak jsem dal v předchozím příspěvku [/QUOTE]> posune bit právo. Pokud PORTA = 0b00000001, pokud je to posunuty vlevo stává 0b00000010, tj. 1PORTA 8PORTA znamená hodnota zůstává stejný. | Je bitový operátor OR.
 
To není správné chování, které je popsáno se otočit nemohly posunout. Pro správnou posunu 1 na byte dává 0 a posun doleva od 8 dává také 0, pokud je počáteční hodnota je 1.
 
Tam není žádný operace použitá na "ctrlport" v 1. řádku, je to jen naloženo s novou hodnotou, která '0 'se posunul' en ', kolikrát, který je stále '0'. V 2. řádku se opět nabita s novou hodnotou, ale tento čas 3 hodnoty ORed. Zatímco "(0
 

Welcome to EDABoard.com

Sponsor

Back
Top