05.06.2019, 12:14
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,629
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от AVI-crak
|
RD_WRN
|
Пробовал - МК виснет (хотя у меня там везде таймауты)!..
UPD: нормально, поперло помаленьку! Вот с чтением может не проканать: если без RD_WRN RXDR не заполнится, то клавиши в пролете!
Код на гитхаб выложил. Работает на запись. Чтение, как и думал, не работает.
__________________
Союз Советских Социалистических Округов Северной Америки
Последний раз редактировалось eddy; 05.06.2019 в 18:17.
|
|
|
|
05.06.2019, 15:16
|
|
Вид на жительство
Регистрация: 27.11.2007
Сообщений: 429
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 30 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Кто то работал с RCC-›CSR, камень 103С8
У меня при любом варианте сброса устанавливается помимо нужного флага еще и PINRSTF.
Так от сторожевика IWDGRSTF и PINRSTF.
По питанию PORRSTF и PINRSTF.
Когда софтовый сброс происходит SFTRSTF и PINRSTF.
Естественно после проверки обнуляю записывая RMVF.
|
|
|
|
06.06.2019, 09:52
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,629
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от sat_art
|
Кто то работал с RCC-›CSR, камень 103С8
У меня при любом варианте сброса устанавливается помимо нужного флага еще и PINRSTF.
|
Из даташита: Reset value: 0x0C00 0000. Т.е. всегда после сброса будут активны PORRSTF|PINRSTF.
P.S. все источники сброса тупо физически ногу reset к нулю подтягивают, см. картинку "Simplified diagram of the reset circuit" из даташита!
__________________
Союз Советских Социалистических Округов Северной Америки
|
|
|
|
06.06.2019, 13:21
|
|
Вид на жительство
Регистрация: 27.11.2007
Сообщений: 429
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 30 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Спасибо, уже дошел и сам.
|
|
|
|
07.06.2019, 16:35
|
|
Вид на жительство
Регистрация: 27.11.2007
Сообщений: 429
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 30 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Ткните носом в ссылку на ПДФ с описанием DWT регистров. Я имею ввиду полным побитовым.
Или проще может у кого есть пример как правильно заставить сравниваться CYCCNT и COMP0?
И где читать результат сравнения?
Нашел http://infocenter.arm.com/help/index...h11s05s01.html изучаю.
|
|
|
|
07.06.2019, 16:59
|
|
Вид на жительство
Регистрация: 27.11.2007
Сообщений: 429
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 30 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Может кому пригодится
Функция задержки мкС без сброса DWP-›CYCNT
PHP код:
|
void _delay_us(uint32_t us)
{
uint32_t t0 = (us*(SystemCoreClock/1000000))+DWT-›CYCCNT;
DWT-›COMP0=t0;
DWT-›FUNCTION0|=DWT_FUNCTION_CYCMATCH_Msk|(0x02‹‹DWT_FUNCTION_DATAVSIZE_Pos)|0x08;
while((DWT-›FUNCTION0&DWT_FUNCTION_MATCHED_Msk)==0){};
}
|
Для тех кто не в курсе
при старте надо инициализировать
PHP код:
|
CoreDebug-›DEMCR |= CoreDebug_DEMCR_TRCENA_Msk;
DWT-›CTRL|=DWT_CTRL_CYCCNTENA_Msk;
|
|
|
|
|
07.06.2019, 17:03
|
|
Почётный гражданин KAZUS.RU
Регистрация: 27.01.2005
Адрес: Россия, КЧР, Нижний Архыз
Сообщений: 3,629
Сказал спасибо: 115
Сказали Спасибо 814 раз(а) в 591 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
sat_art, абдуринство какое-то, чесслово!
__________________
Союз Советских Социалистических Округов Северной Америки
|
|
|
|
07.06.2019, 17:06
|
|
Вид на жительство
Регистрация: 27.11.2007
Сообщений: 429
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 30 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от eddy
|
sat_art, абдуринство какое-то, чесслово!
|
Конкретней можно? Что имеется ввиду?
|
|
|
|
07.06.2019, 17:49
|
|
Заблокирован
Регистрация: 07.09.2014
Адрес: В Кремле!
Сообщений: 4,486
Сказал спасибо: 396
Сказали Спасибо 2,220 раз(а) в 1,319 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
(SystemCoreClock/1000000) может вычисляться очень долго (при софтовом делении), ибо SystemCoreClock - это переменная, а не константа времени компиляции.
Использовать переменную SystemCoreClock удобно лишь с динамическим управлением частотой, когда частота в процессе работы меняется. В остальных случаях целесообразно частоту задавать как #define
|
|
|
|
07.06.2019, 17:50
|
|
Вид на жительство
Регистрация: 27.11.2007
Сообщений: 429
Сказал спасибо: 19
Сказали Спасибо 39 раз(а) в 30 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
NewWriter, согласен. Но это уже детали. Тут важен сам принцип.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:12.
|
|