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

 
 
> Почему PORT1 не работает, нет выхода на порту P1OUT, м/к MSP430F133
alex_tt
сообщение Apr 19 2006, 10:15
Сообщение #1





Группа: Новичок
Сообщений: 10
Регистрация: 31-03-06
Пользователь №: 15 664



Знающие люди, помогите кто знает, в чем может быть тут дело. Нужно включить порт 1, как цифровые входы/выходы, на вход и выход, делаю так:

P1DIR = 0x0F;
P1OUT = 0xFF;
P1SEL = 0x00;

Но на самом деле на выходе нет сигнала. Что не так? help.gif

Сообщение отредактировал alex_tt - Apr 19 2006, 10:16
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 10)
rezident
сообщение Apr 19 2006, 11:31
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Что значит "нет сигнала"?
После такой как у вас инициализации P1.0-P1.3 работают как выходы и имеют потенциалы лог.1. P1.4-P1.7 работают как входы и имеют плавающие потенциалы, если к ним не подключены внешние цепи.
Go to the top of the page
 
+Quote Post
Vladimir_T
сообщение Apr 19 2006, 14:07
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 517
Регистрация: 7-02-06
Пользователь №: 14 073



Нужно проверить общую работоспособность системы и инициализацию по включениии. Ведь может и зациклить процессор в какой-либо процедуре. Отлаживайте внимательно, все должно работать, как написал rezident.
Go to the top of the page
 
+Quote Post
alex_tt
сообщение Apr 20 2006, 08:36
Сообщение #4





Группа: Новичок
Сообщений: 10
Регистрация: 31-03-06
Пользователь №: 15 664



Я знаю, что все должно работать. Но ведь устройство работает, и все остальные порты тоже работают. А вот именно на портах 1 - плавающее состояние.
При программировании пиков, там был такой глюк. Пока не отключишь АЦП, портами 1 нельзя управлять. я думал может и здесь что-нибудь не так. Значит сам проц.
Go to the top of the page
 
+Quote Post
shasik
сообщение Apr 20 2006, 21:17
Сообщение #5


Местный
***

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



С этим процессором не работал и описания на него нет, поэтому точно сказать не могу. Но! У TI часто на одной ноге висит целая куча переферии (например АЦП/ЦАП, таймер, выход генератора и т.п.) и сброс P1SEL еще не означает, что нога работает как цифровой I/O. Посмотри внимательно в даташите на этот проц схемотехнику P1.0-P1.7 (в самом конце pdf'а), там есть таблички - какие доп. функции на какой ноге и как их включить/включить. Например, у этого проца есть, кажется. АЦП и скореее всего как рах на ногах порта 1 - проверь! Но, бди! Пару раз встречал там ошибки.
Go to the top of the page
 
+Quote Post
rezident
сообщение Apr 20 2006, 21:50
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(shasik @ Apr 21 2006, 03:17) *
и сброс P1SEL еще не означает, что нога работает как цифровой I/O.

Означает. Однозначно. Команда P1SEL=0x00; однозначно переводит пины Port1 в режим GPIO. А вот P1DIR=0x0F, лишь младшую половину порта переводит в режим вывода. Старший полубайт в режиме ввода остается и на нем плавающий потенциал будет.
Go to the top of the page
 
+Quote Post
shasik
сообщение Apr 21 2006, 23:42
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 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), а затем уже настроить ноги на вход/выход? Может поможет
Go to the top of the page
 
+Quote Post
rezident
сообщение Apr 24 2006, 08:52
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



shasik, вы в заголовке тип кристалла видели? Ответ был дан для указанного кристалла, а не "вообще". Насчет того, что "полезно читать инструкции" совершенно с вами согласен.
Go to the top of the page
 
+Quote Post
АДИКМ
сообщение Apr 25 2006, 08:53
Сообщение #9


Знающий
****

Группа: Свой
Сообщений: 630
Регистрация: 2-08-05
Пользователь №: 7 294



Покажите весь проект. Чего гадать-то?


--------------------
летаю на пепелаце...
Go to the top of the page
 
+Quote Post
shindarah
сообщение May 11 2006, 12:25
Сообщение #10


Участник
*

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



А может что-то еще туда пишет (в прерывании например или еще откуда), вот и получается плавающее состояние, нужно выполнить программу пошагово и постмотреть что происходит в процессе выполнения конкретно этих команд.
А может просто эти выходы сожжены... такое тоже быват... sad.gif
Go to the top of the page
 
+Quote Post
CeDeX
сообщение May 17 2006, 12:07
Сообщение #11


Частый гость
**

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



Цитата(alex_tt @ Apr 19 2006, 13:15) *
Знающие люди, помогите кто знает, в чем может быть тут дело. Нужно включить порт 1, как цифровые входы/выходы, на вход и выход, делаю так:

alex_tt
Подскажите чем дело закончилось?
Просто у меня такой же трабл с портом P1.0


--------------------
-- Если б мишки были пчелами... (с) --
Go to the top of the page
 
+Quote Post

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

 


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


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