|
Почему PORT1 не работает, нет выхода на порту P1OUT, м/к MSP430F133 |
|
|
|
Apr 19 2006, 10:15
|
Группа: Новичок
Сообщений: 10
Регистрация: 31-03-06
Пользователь №: 15 664

|
Знающие люди, помогите кто знает, в чем может быть тут дело. Нужно включить порт 1, как цифровые входы/выходы, на вход и выход, делаю так: P1DIR = 0x0F; P1OUT = 0xFF; P1SEL = 0x00; Но на самом деле на выходе нет сигнала. Что не так?
Сообщение отредактировал alex_tt - Apr 19 2006, 10:16
|
|
|
|
|
 |
Ответов
(1 - 10)
|
Apr 20 2006, 08:36
|
Группа: Новичок
Сообщений: 10
Регистрация: 31-03-06
Пользователь №: 15 664

|
Я знаю, что все должно работать. Но ведь устройство работает, и все остальные порты тоже работают. А вот именно на портах 1 - плавающее состояние. При программировании пиков, там был такой глюк. Пока не отключишь АЦП, портами 1 нельзя управлять. я думал может и здесь что-нибудь не так. Значит сам проц.
|
|
|
|
|
Apr 20 2006, 21:17
|

Местный
  
Группа: Свой
Сообщений: 319
Регистрация: 3-09-05
Из: Беларусь, Новополоцк
Пользователь №: 8 188

|
С этим процессором не работал и описания на него нет, поэтому точно сказать не могу. Но! У TI часто на одной ноге висит целая куча переферии (например АЦП/ЦАП, таймер, выход генератора и т.п.) и сброс P1SEL еще не означает, что нога работает как цифровой I/O. Посмотри внимательно в даташите на этот проц схемотехнику P1.0-P1.7 (в самом конце pdf'а), там есть таблички - какие доп. функции на какой ноге и как их включить/включить. Например, у этого проца есть, кажется. АЦП и скореее всего как рах на ногах порта 1 - проверь! Но, бди! Пару раз встречал там ошибки.
|
|
|
|
|
Apr 21 2006, 23:42
|

Местный
  
Группа: Свой
Сообщений: 319
Регистрация: 3-09-05
Из: Беларусь, Новополоцк
Пользователь №: 8 188

|
Цитата(rezident @ Apr 21 2006, 00:50)  Цитата(shasik @ Apr 21 2006, 03:17)  и сброс P1SEL еще не означает, что нога работает как цифровой I/O.
Означает. Однозначно. Команда P1SEL=0x00; однозначно переводит пины Port1 в режим GPIO. А вот P1DIR=0x0F, лишь младшую половину порта переводит в режим вывода. Старший полубайт в режиме ввода остается и на нем плавающий потенциал будет. 1. НЕОДНОЗНАЧНО!. Примереы: если у MSP есть такая вещь как SD16, то если SD16AE.x=1 - P1SEL.x абсолютно сиренево. Если у MSP есть такая вещь как DAC12, то если DAC12OPS=1, то P1SEL по барабану (как впрочем и SD16AE). Наверное есть и другие примеры. Эти взяты из опыта работы с F169, F427, F4270, FG439. Это все я веду к тому, что иногда очень полезно читать инструкции. 2. А что если сначала обнулить P1SEL (т.е. "включить" digital I/O), а затем уже настроить ноги на вход/выход? Может поможет
|
|
|
|
|
May 11 2006, 12:25
|
Участник

Группа: Свой
Сообщений: 23
Регистрация: 28-02-05
Пользователь №: 2 946

|
А может что-то еще туда пишет (в прерывании например или еще откуда), вот и получается плавающее состояние, нужно выполнить программу пошагово и постмотреть что происходит в процессе выполнения конкретно этих команд. А может просто эти выходы сожжены... такое тоже быват...
|
|
|
|
|
May 17 2006, 12:07
|

Частый гость
 
Группа: Свой
Сообщений: 78
Регистрация: 4-11-04
Из: Омск
Пользователь №: 1 035

|
Цитата(alex_tt @ Apr 19 2006, 13:15)  Знающие люди, помогите кто знает, в чем может быть тут дело. Нужно включить порт 1, как цифровые входы/выходы, на вход и выход, делаю так: alex_ttПодскажите чем дело закончилось? Просто у меня такой же трабл с портом P1.0
--------------------
-- Если б мишки были пчелами... (с) --
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|