Значение 0xff

#c #pic18

#c #рис. 18

Вопрос:

Мне было интересно, представляют ли 0xff, 0x00 и 0x0f. TRISA, TRISB и TRISC — это порты, используемые на моей плате.

 void main()
{
TRISA = 0xff;
TRISB = 0x00;
TRISC = 0x00;
ADCON1 = 0x0f;
}
 

Комментарии:

1. в чем заключается вопрос?

2. Я запрограммировал код, приведенный в учебнике, но из любопытства я хотел знать, что 0xff, 0x00 и 0x0f делают с остальной частью кода. Я просмотрел книгу, но не смог найти ни одной ссылки на это. @artm

3. Какую доску и какую книгу вы используете?

4. @CEPB с использованием микроконтроллера pic18f4620 и светодиодов RGB

5. Это просто шестнадцатеричные константы. 0xff это наибольшее 8-разрядное число без знака, имеющее все биты 1, так что это может быть его значением. Аналогично 0xf является наибольшим 4-разрядным числом без знака, и, конечно 0x00 , равно нулю и имеет все биты равными нулю.

Ответ №1:

TRISA являются ли биты контроллера трех состояний для линии ввода-вывода A. Это включает или выключает вентили трех состояний, которые выбирают, питает ли выходной регистр контакты или нет. При отключенных трех состояниях выводы являются входными выводами.

Я не совсем уверен, так как я не проверял руководство более 10 лет, но я думаю, что 0xFF включает все три состояния, поэтому все контакты являются входными контактами. Хотя я мог бы сделать это в обратном направлении.