11.04.2018, 14:25
|
|
Частый гость
Регистрация: 10.04.2018
Сообщений: 29
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: FAQ по STM8
Да, это программный бит,спасибо,правильно ли я понимаю,что при установке бита сдвига,операция происходит моментально?
|
|
|
|
11.04.2018, 14:41
|
|
Прописка
Регистрация: 24.11.2016
Адрес: Moscow
Сообщений: 287
Сказал спасибо: 57
Сказали Спасибо 54 раз(а) в 39 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от vladimirkh
|
Да, это программный бит,спасибо,правильно ли я понимаю,что при установке бита сдвига,операция происходит моментально?
|
Условно. У STM8 конвеерная архитектура. Можно только гарантировать то, что инкремент или декремент часов произойдет до того, как одна из последующих команд процессора обратится к регистрам RTC. И не произойдет до того, как одна из предыдущих команд процессора не завершит чтение регистров RTC.
В том числе и поэтому, не рекомендуется инкрементировать или декрементировать часы, когда показание минут и секунд 59:59.
|
|
|
|
11.04.2018, 15:12
|
|
Частый гость
Регистрация: 10.04.2018
Сообщений: 29
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: FAQ по STM8
Все понятно.
И еще вопрос,по stm8, выход шим всегда Push-pul, вне зависимости от настройки выхода, можно ли в каких-то других сериях STM конфигурировать ,например Open drain output?
|
|
|
|
11.04.2018, 15:41
|
|
Прописка
Регистрация: 24.11.2016
Адрес: Moscow
Сообщений: 287
Сказал спасибо: 57
Сказали Спасибо 54 раз(а) в 39 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от vladimirkh
|
И еще вопрос,по stm8, выход шим всегда Push-pul, вне зависимости от настройки выхода, можно ли в каких-то других сериях STM конфигурировать ,например Open drain output?
|
А это уже надо конкретный кристалл указывать. Например, у STM8S103F2/F3 в чистом виде открытый коллектор на выходе может быть только у выходов PB4 и PB5, на которые PWM не вывести.
А вот если речь о псевдо-открытом коллекторе, то как укажете в Px_CR1, так и будет. Цитирую даташит (RM0016 Reference manual):
An alternate function output can be push-pull or pseudo-open drain depending on the peripheral and Control register 1 (Px_CR1) and slope can be controlled depending on the Control register 2 (Px_CR2) values.
|
|
|
|
11.04.2018, 15:49
|
|
Частый гость
Регистрация: 10.04.2018
Сообщений: 29
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: FAQ по STM8
STM8L152K4,Timer 2 - channel 2,при любой конфигурации выхода всегда Push-pul.
|
|
|
|
11.04.2018, 16:16
|
|
Прописка
Регистрация: 24.11.2016
Адрес: Moscow
Сообщений: 287
Сказал спасибо: 57
Сказали Спасибо 54 раз(а) в 39 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от vladimirkh
|
STM8L152K4,Timer 2 - channel 2,при любой конфигурации выхода всегда Push-pul.
|
А как Вы это определяете? Псевдо-открытый коллектор там может быть включен.
Другое дело, что "псевдо". То бишь, если на нем 0 - то это действительно низкий уровень, а вот если 1, он просто переключается в режим входа, чтобы его не могли спалить низким уровнем )
|
|
|
|
11.04.2018, 21:02
|
|
Частый гость
Регистрация: 10.04.2018
Сообщений: 29
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: FAQ по STM8
Читаю внимательно даташит,выходной каскад состоит из N и P транзисторов,функция
open drain это когда верхний транзистор закрыт,управление только нижним.Если пин определен как выход,он не может работать как вход,пока не будет изменен регистр DDR, и при закрытом нижнем транзисторе напряжению взяться неоткуда.
|
|
|
|
11.04.2018, 21:55
|
|
Прописка
Регистрация: 24.11.2016
Адрес: Moscow
Сообщений: 287
Сказал спасибо: 57
Сказали Спасибо 54 раз(а) в 39 сообщении(ях)
|
Re: FAQ по STM8
Сообщение от vladimirkh
|
функция open drain это когда верхний транзистор закрыт
|
Нет. Это как раз функция псевдо-открытого коллектора. А для того, чтобы получить открытый коллектор, необходимо еще:
1. Отключить диод с входа на плюс питания.
2. Перевести вход в высокоимпедансное состояние.
Сообщение от vladimirkh
|
Если пин определен как выход,он не может работать как вход
|
Вы заблуждаетесь, он продолжает работать на вход в любом случае. Цитирую: "The pin register can be used to read the pin value irrespective of whether port is in input or output mode."
Сообщение от vladimirkh
|
при закрытом нижнем транзисторе напряжению взяться неоткуда.
|
В том то и дело, что обратного тока защитного диода вполне хватает для создания потенциала, достаточного для открытия FET на входе и формирования высокого уровня на пине. Да, очень слаботочного, но вполне доступного для измерений даже обычным тестером.
Да и емкости затвора FET на входе хватает для возникновения паразитных эффектов, которые не возникают при честном открытом коллекторе.
P.S. Принципиальная разница между псевдо-открытым и открытым коллектором в том, что открытым коллектором вполне возможно коммутировать напряжение в разы превышающее напряжение питания МК, а псевдо-открытым - нет.
Проверить мое утверждение можно даже программно. Попробуйте перевести пин в режим выхода с псевдо-открытым коллектором и считать Px_IDR, когда:
1. Пин через резистор 10К скоммутирован на землю. Будет считываться 0.
2. Пин через резистор 10К скоммутирован на плюс питания. Будет считываться 1.
Последний раз редактировалось ptr; 11.04.2018 в 22:09.
|
|
|
|
11.04.2018, 22:34
|
|
Частый гость
Регистрация: 10.04.2018
Сообщений: 29
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: FAQ по STM8
Может я не правильно читаю даташит,но функция open drain это:
1.Pull-up резистор выключен
2.P-buffer выключен
3.защитные диоды включены,оба
защитные диоды стоят после транзисторов,и включить их ну не как не могут.
регистр IDR работает при сконфигурированном входе и выходе,да.
если на вход подать напряжение,в разы превышающее питание,то первым делом пробьет защитный диод,нижний,а через верхний , напряжение попадет на питание всего контроллера.Пробивное напряжение Lсерии примерно равно 5 вольтам.
Последний раз редактировалось vladimirkh; 11.04.2018 в 22:46.
Причина: добавление
|
|
|
|
11.04.2018, 22:56
|
|
Частый гость
Регистрация: 10.04.2018
Сообщений: 29
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: FAQ по STM8
Я понял ,Вы перепутали с True open drain (on specific pins),их всего два,и они расчитаны на шину I2C и повышеное напряжение,(но не в разы)
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 19:02.
|
|