Например TDA7294

Форум РадиоКот • Просмотр темы - PIC16F57 проблемы с программированием.
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Ср май 14, 2025 00:59:29

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 24 ]    , 2
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: PIC16F57 проблемы с программированием.
СообщениеДобавлено: Чт фев 22, 2024 05:23:13 
Первый раз сказал Мяу!
Аватар пользователя

Зарегистрирован: Чт июн 08, 2017 17:52:33
Сообщений: 39
Рейтинг сообщения: 0
тут тоже какие то подводные камни есть ?

Подводные камни есть при побитной записи в порт. Ибо это процедура RMW, которая из-за отсутствия входной защелки порта способна перезаписать входные состояния пинов в выходную защелку по всем разрядам порта кроме явно устанавливаемого.
Чтение особых проблем не имеет, хотя гораздо корректнее НА ЛЮБОМ контроллере для атомарности чтения сначала защелкнуть порт в переменную, а лишь затем производить какие либо if-ы, switch-и и другие действия. Даже если вы пишите на АСМе и понимаете реальный исполняемый код.

А можно это как то в коде показать? как я понял -сначала записать туда 1 например а потом смотреть есть ли она там?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC16F57 проблемы с программированием.
СообщениеДобавлено: Чт фев 22, 2024 08:13:42 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2916
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23674
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
как я понял -сначала записать туда 1


Код:
   bufPort=PORTB;
   if(bufPort&<mask>) ... blah-blah-blah;


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC16F57 проблемы с программированием.
СообщениеДобавлено: Пт фев 23, 2024 05:35:33 
Первый раз сказал Мяу!
Аватар пользователя

Зарегистрирован: Чт июн 08, 2017 17:52:33
Сообщений: 39
Рейтинг сообщения: 0
как я понял -сначала записать туда 1


Код:
   bufPort=PORTB;
   if(bufPort&<mask>) ... blah-blah-blah;


Да, так все запустилось. Теперь еще вопрос с прерываниями по таймеру Timer0

вот такая конструкция :

void __interrupt() Timer0_interrupt() {
// if (TMR0IF) {


читаю документацию - в данном контроллере вообще нет прерываний и векторов соответственно? Я так понял при включении таймена с заданным шагом начинает увеличиваться TMR0 и его надо программно отслеживать ? нет флага о его переполнении ?

// Сброс флага прерывания
// TMR0IF = 0;
// }
}


не работает - пишет что не поддерживается данным девайсом . Как можно попасть в вектор прерывания таймера?

и где сам регистр настройки самого таймера -прескайлер, источник тактирования..


на 870 дела так все работало , а здесь нет

void interruptInit() {
T0CS = 0;
PSA = 0;
PS1 = 0;
PS0 = 1;
TMR0IE = 1;

}


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: PIC16F57 проблемы с программированием.
СообщениеДобавлено: Пт фев 23, 2024 07:35:49 
Друг Кота
Аватар пользователя

Карма: 139
Рейтинг сообщений: 2916
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 23674
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Странный вы...
Читаете, что в этом МК нет прерываний и задаете вопрос где вектор прерываний...
Причем тут 870-ый?
У Микрочипа есть так называемое базовое семество МК. В них 12 битная шина инструкций, отсутствуют прерывания , нет прямого доступа к TRIS и стартовый вектор находится на последем адресе флеша.
Это простейшие МК, которым лет 30 от роду. Микрочип вообще почти ничего не снимает с производства.

Таймер или его флаг в регистре INTCON просто опрашивается либо в общем программном цикле, либо в локальном while.
Источник его тактирования - осциллятор МК. Прескалер делится между ним и вачдогом. Настройка в OPTION_REG. Кстати, доступ в этот регистр тоже односторонний через инструкцию option , а значит не надо пытаться его читать. В него можно только писать.


Вернуться наверх
 
Открыт интернет-магазин MEAN WELL.Market – весь ассортимент MEAN WELL, выгодные цены

Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России. На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.

Подробнее>>
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 24 ]    , 2

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y