реклама на сайте
подробности

 
 
> порты
chainikru
сообщение Jan 11 2012, 17:16
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 24
Регистрация: 5-12-11
Пользователь №: 68 682



при програмировании для MSP430F2013:
#define LED 0x01 // P1.0
#define Led_1 0x02 // P1.1
#define TXD 0x20 // TXD on P1.5
#define Led_2 0x?? // P1.2
#define Led_3 0x?? // P1.4
подскажите пожалуйста как записать другие порты.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zhevak
сообщение Jan 11 2012, 18:08
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065



Вы не правильно поняли.

То, что Вы написали

CODE
#define LED 0x01 // P1.0
#define Led_1 0x02 // P1.1
#define TXD 0x20 // TXD on P1.5

это всего лишь определение названий битов _без_привязки_к_портам.

Допустим, у меня висят два ЛЭД-а разного цвета на разных портах, и оба на последнем -- седьмом бите: один на P1.7, другой на -- P2.7. Тогда я пишу:

CODE
// Биты определения порта P1
#define LED_R 0x80
...
// Биты определения порта P2
#define LED_G 0x80


Как можно видеть, коды совпадают. Но я-то знаю, что красный ЛЭД подключен к первому порту, по
этому я буду писать (1):

CODE
P1OUT |= LED_R;


Но компилятор скушает и даже не поперхнется и такой код (2):

CODE
P1OUT |= LED_G;


и такой (3):

CODE
P2OUT |= LED_R;


Разница только в том, что в первом случае (1) логически будет правильный. Во втором случае, исходный код будет неправильный, но откомпилированный будет точно такой же, как и в случае (1). В третьем случае, мы не замечаем, что у нас перепутан порт, и хотим зажечь красный ЛЭД. Только на реальном железе можно обнаружить такую путаницу.

Но я думаю, что Вы достаточно внимательны при написании кодов чтобы видеть такие описки.

Но если Вам нужно знать коды других битов, то это просто:

бит_0 -- это 0x01
бит_1 -- это 0x02
бит_2 -- это 0x04
бит_3 -- это 0x08
бит_4 -- это 0x10
бит_5 -- это 0x20
бит_6 -- это 0x40
бит_7 -- это 0x80

Возможно я неправильно ответил на ваш вопрос, но тогда уточняйте, что Вы хотели спросить в отличие от того, что спросили.


--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 02:56
Рейтинг@Mail.ru


Страница сгенерированна за 0.01349 секунд с 7
ELECTRONIX ©2004-2016