BYTE un BIT adresējamā reģistri c kompilators HELP

R

RFdata

Guest
Čau, Man ir vajadzīga neliela palīdzība ar pasludina adrese c kompilatoru par 89S8253:

80H P0 11111111
81h SP 00000111
82h DP0L 00000000
83h DP0H 00000000
84h DP1L 00000000
85h DP1H 00000000
86h SPDR ########
87h PCON 00XX0000

Šī ir noklusējuma baitu adresējamā reģistru datu lapā 89S8253,
piemēram, tas nozīmē, ka visi P0 pins par ir 1?
Ja es vēlos būt, piemēram, 10101010 ostā 1, ko man darīt kompilatoru?

SFR ir (0x80) P0 / / norāda P0 adrese

P0 = 10101010b / / nosūtīt datus uz P0

Vai šī procedūra ir pareiza?Kā es varu paziņot P0 izejas vai ieejas?
Es esmu sajaukt par baits adresējamā reģistru un mazliet adresējamā reģistros
SFR ir (0x80) P0 vai sbit laikā (0x80) P0_0 tās pašas Andress, vai, piemēram sbit pie (0x81) P0_1 ir tā adrese, to pašu adresi, SP, kas ir 81h?

Jebkura palīdzība ir welcome

Tvertnēm

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Smaids" border="0" />
 
Adresēšana SFRs un SFR bitu izmanto rīks atkarīga C valodas paplašinājumi, un to nevar atbildēt vispārīgi.Jums jākonsultējas ar instrumentiem rokasgrāmatu.
E. g.Keil ir šāda sintakse paziņo SFR bit mainīgos
Kods:

sbit LED1 = P0 ^ 0;
 
Hi,
Papildus tam, kas FVM ir minēts, 89S8253 ir 8051 variantu un visiem bit / baits addressability ir atvasināts no 8051 arhitektūras.Papildus minētajiem reģistriem, RAM platība 0x20 uz 0x2F arī mazliet adresējama.In 8051, lai izveidotu ostu ievades ports, pietiek noteikt porbits augsts.Bit risinot izmanto pārklājas adreses dažās ostās, bet līmenis instrukcijas bitu līmenī atšķiras no tiem, attiecībā uz ostas CPU spēj atšķirt tos.

Quote:

SFR ir (0x80) P0 vai sbit laikā (0x80) P0_0
 

Welcome to EDABoard.com

Sponsor

Back
Top