Проблемы с pic16f676.

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
RNV
Родился
Сообщения: 15
Зарегистрирован: Вт сен 30, 2008 15:29:51

Проблемы с pic16f676.

Сообщение RNV »

Впервые сталкнулся с такой проблемой, не могу разделить порт А, делаю динамическую индикацию, порт В отрабатывает нормально, а порт А, как будто завязан между собой. Если выдаёшь сигнал на один из выводов порта А, то на другом выводе порта А сигнал пропадает. В чём может быть причина, с другими МК, такого никогда небыло.
Реклама
vladlen-from-vrtp
Первый раз сказал Мяу!
Сообщения: 28
Зарегистрирован: Чт май 01, 2014 07:28:15

Re: Проблемы с pic16f676.

Сообщение vladlen-from-vrtp »

Скорее всего проблема в принципе RMW.
Здесь почитать.
Реклама
RNV
Родился
Сообщения: 15
Зарегистрирован: Вт сен 30, 2008 15:29:51

Re: Проблемы с pic16f676.

Сообщение RNV »

Что то не очень понытно. Пишу в FC , есть ли какие команды что бы убрать проблему?
-=Vovka=-
Опытный кот
Сообщения: 844
Зарегистрирован: Пн апр 11, 2011 10:08:52

Re: Проблемы с pic16f676.

Сообщение -=Vovka=- »

FC что за зверь?

А по теме: RMW или чтение-модификация-запись.
Если ты меняешь один бит на порту, то МК делает так:
- считывает значение из порта
- модифицирует бит
- записывает результат обратно в порт.
Вот вся пакость кроется в считывании с порта.
Простое решение: заведи переменную, которая будет копией значения, выведенного в порт.
Вот ее и изменяй, а потом выводи в порт.
Типа так:

Код: Выделить всё

unsigned char OutPortA;
OutPortA = 0;
PORTA = OutPortA;
...
OutPortA |= 0b11001101;
PORTA = OutPortA;
Реклама
Эиком - электронные компоненты и радиодетали
RNV
Родился
Сообщения: 15
Зарегистрирован: Вт сен 30, 2008 15:29:51

Re: Проблемы с pic16f676.

Сообщение RNV »

FC- это FlowCode Дак это что особенность этого МК что ли? Раньше с ним не работал С другими проблем небыло. Как я понял, нужно не напрямую управлять битами порта, а через переменную, так? И почему это проблема только с портом А?
Реклама
-=Vovka=-
Опытный кот
Сообщения: 844
Зарегистрирован: Пн апр 11, 2011 10:08:52

Re: Проблемы с pic16f676.

Сообщение -=Vovka=- »

RNV писал(а):FC- это FlowCode Дак это что особенность этого МК что ли? Раньше с ним не работал С другими проблем небыло.
Если есть желание научиться программировать, чтоб в дальнейшем не прославиться извините, "быдлокодером", советую избавиться от FlowCode и начать с ассемблера или в крайнем случае с си. И не пользоваться Протеусами и им подобными. Тогда будет опыт и подобных элементарный вопросов по особенностям МК возникать не будет, да и если что-то не работает, то можно было бы спокойно глянуть дизассемблерный текст и понять в чем не прав компилятор, хотя в 99% виноват программист.
А вот когда научитесь программировать, вот тогда можно уже и за что-то по серьезней браться.
Потом скачать даташит на этот МК с [url=microchip.com]microchip.com[/url] - там все разжевано. Если проблема с английским, то есть русские переводы, но как правило в них присутствуют ошибки.
RNV писал(а):Как я понял, нужно не напрямую управлять битами порта, а через переменную, так?
Я уже выше объяснил, уже и код привел...
RNV писал(а):И почему это проблема только с портом А?
Эта проблема с любым портом, учим даташит...

Удачи!
Реклама
Аватара пользователя
Enigm
Говорящий с текстолитом
Сообщения: 1663
Зарегистрирован: Вт апр 03, 2012 20:36:41
Откуда: Сочи

Re: Проблемы с pic16f676.

Сообщение Enigm »

А что так слабо асемблер всего ?
Давайте уже сразу в ручную хекс писать. :)
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Проблемы с pic16f676.

Сообщение Albert_V »

ASM приучает к аккуратности написания текста программ и к тому, что вначале изучают pdf а потом пишут программу, а не наоборот.
С Уважением, Альберт (Albert_V).
Аватара пользователя
rxstart1
Вымогатель припоя
Сообщения: 508
Зарегистрирован: Пт фев 22, 2013 18:00:43
Откуда: Беларусь, г. Гомель

Re: Проблемы с pic16f676.

Сообщение rxstart1 »

не понимаю зачем заводить переменную, чтобы изменить бит, не проще ли сразу поменять его????
-=Vovka=-
Опытный кот
Сообщения: 844
Зарегистрирован: Пн апр 11, 2011 10:08:52

Re: Проблемы с pic16f676.

Сообщение -=Vovka=- »

Enigm писал(а):А что так слабо асемблер всего ?
Давайте уже сразу в ручную хекс писать. :)
Помнится как-то в начале 90-х занимался таким делом для КР580ВМ80, но тогда условия были не то, что сейчас :)
Аватара пользователя
Enigm
Говорящий с текстолитом
Сообщения: 1663
Зарегистрирован: Вт апр 03, 2012 20:36:41
Откуда: Сочи

Re: Проблемы с pic16f676.

Сообщение Enigm »

Albert_V писал(а):ASM приучает к аккуратности написания текста программ и к тому, что вначале изучают pdf а потом пишут программу, а не наоборот.
Так это понятно, кто хочет писать компактно, тот и пишет на асме, а многим много от контроллера не надо и нет строгих задач, им достаточно и С или разных оболочек типа ФК .
Для домашних поделок и от случая к случаю, нет необходимости изучать асм , достаточно С и разных оболочек к нему.
Ну а кто серьезно занимается контроллерами тот уже и так знает на чем писать ))
Последний раз редактировалось Enigm Вт янв 13, 2015 20:43:05, всего редактировалось 1 раз.
Аватара пользователя
Enigm
Говорящий с текстолитом
Сообщения: 1663
Зарегистрирован: Вт апр 03, 2012 20:36:41
Откуда: Сочи

Re: Проблемы с pic16f676.

Сообщение Enigm »

-=Vovka=- писал(а): Помнится как-то в начале 90-х занимался таким делом для КР580ВМ80, но тогда условия были не то, что сейчас :)
Эх были времена, где в 48к впихивали такие шедевры как Элита :)
Аватара пользователя
Albert_V
Друг Кота
Сообщения: 4119
Зарегистрирован: Чт сен 12, 2013 00:54:12
Откуда: ЗаМКАДье. Там, где ЦУП

Re: Проблемы с pic16f676.

Сообщение Albert_V »

Enigm, возможно, вы не правильно меня поняли. :facepalm:
"Ключево́е" в моих словах:
...вначале изучают pdf а потом пишут программу, а не наоборот.
:beer:
____
P.S.
А кто на чём пишет - можно и на ASM такое напахать, что :kill:
С Уважением, Альберт (Albert_V).
Аватара пользователя
Enigm
Говорящий с текстолитом
Сообщения: 1663
Зарегистрирован: Вт апр 03, 2012 20:36:41
Откуда: Сочи

Re: Проблемы с pic16f676.

Сообщение Enigm »

Для простых поделок в той же среде ФК или Ардуино ПДФ и не нужон ))
А вот если нужно то что нереализованное в оболочках, то да даташит наше все .
Хотя даташит и так наше все, но не во всех случаях и не везде он обьязателен.
У меня есть знакомый ремонтник телеков и прочей техники, так он даже и не знает что такое даташит и нечего работает, криво косо но работает уже лет 15 :)
Все зависит от желания возможностей и качества нужной поделки.
Ответить

Вернуться в «PIC»