Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Возможно ли сделать двунаправленную шину в MSP430F1611
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
Iskander
ПАмагите!!!
Возможно ли сделать двунаправленную шину в MSP430F1611, а так же управление каждой ногой в отдельности

и почему если я устанавливаю к примеру
P1OUT=BIT1
просиходит сброс предыдущего состояния и вообще при каждой симуляции (в отладчике) просиходит фигня какая то , биты выставляются как попало.
Заранее пасиба, если кто подскажет что то по этому поводу.


=====================
перенес отдельной темой. VAI
VAI
Можно сделать и двунаправленную шину и дрыгать каждой ногой в отдельности.
более подробно охарактеризуйте задачу и приведите код.
Сергей Борщ
Цитата(Iskander @ Aug 10 2006, 10:20) *
и почему если я устанавливаю к примеру
P1OUT=BIT1
просиходит сброс предыдущего состояния
А чего вы ожидали? он и записал в P1OUT байт из 7 нулей и одной единицы. Если вы хотели выставить только один бит, а остальные оставить как есть, то надо писать P1OUT |= BIT1. А если сбросить - P1OUT &= ~BIT1;
rezident
Можно. Для вывода установите нужные пины на вывод, записью 1 в соответствующих разрядах в регистр PxDIR. Для ввода установите нужные пины на ввод, записью 0 в соответствующих разрядах в регистр PxDIR. Управляя выводом пишите в PxOUT. Считывайте при вводе из PxIN. Для управления отдельными битами накладывайте маску, как Сергей посоветовал, а не пишите напрямую в регистр.
Установить бит x: PxOUT|=BITx;
Сбросить бит x: PxOUT&=~BITx;
Установить группу бит (напр. 0, 2, 5): PxOUT|=BIT0+BIT2+BIT5;
Сбросить группу бит (напр. 0, 2, 5): PxOUT&=~(BIT0+BIT2+BIT5);
А вообще на такие вопросы надо отвечать RTFM! wink.gif
Iskander
Спасибо за оперативность!
А резиденту в особенности за последнюю пару строк( PTFM не понял что это)
просто неуверенность в своих действиях рождает вопросы.
Еще глупый вопрос:
а возможно ли полвесить отдельные ножки в z-состояние
вроде бы PnSEL=1 не определяет направленность порта
тогда P1SEL=BIT0 для нулевого бита ?
Сергей Борщ
Цитата(Iskander @ Aug 10 2006, 18:03) *
Еще глупый вопрос:
а возможно ли полвесить отдельные ножки в z-состояние
вроде бы PnSEL=1 не определяет направленность порта
тогда P1SEL=BIT0 для нулевого бита ?
С точки зрения внешних устройств ножка настроенная на ввод ничем не отличается от ножки в третьем состоянии. Поэтому в третье состояние переводим сбрасывая бит в PxDIR, т.е. переводя ногу в режим ввода. PxSEL нужен совсем для другого - он подключает к ножке вместо PxDIR, PxOUT, PxIN соответсвующий периферийный модуль.
Iskander
Пасиба.
Пока что вопросы исчерпаны
rezident
Толкование RTFM. smile.gif
Я имел в виду, что вам, Iskander, нужно внимательнее читать MSP430x1xx User's Guide. Если проблемы с английским, то есть частичный перевод на русский. Или вот - купите или скачайте книжку Семейство микроконтроллеров MSP430x1xx: руководство пользователя с сайта российского дилера TI фирмы Компэл
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.