Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: microC. Доступ к отдельным битам
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
Specialist
Код
void main() {
  TRISD = 0;
  PORTD = 0;
  PORTD.f0 = 1;
  PORTD.f1 = 1;
}

В симуляторе только светодиод на порту RD1 горит. Получается, что
Код
PORTD.f1 = 1;
очищает все остальные биты ? Как мне отдельно устанавливать биты ?
asmon
Думаю тут не в компиляторе проблема. Если 18-й пик, то нужно LATD использовать. Если 16-й, я бы ввёл дополнительную переменную, можно всё красиво в виде структуры с соответствующими полями сделать, менял сначала нужный бит в этой переменной и записывал её в порт. Точно помню, что так делал с PORTA. Он тоже "не запоминает" биты.
Specialist
Огромное спасибо!
Я только игрался с 16F84A и то на АСМе, а сейчас у меня пик 18F4550, пытаюсь на си кодить.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.