|
STM32F1->MCO качество сигнала |
|
|
|
May 28 2013, 15:15
|
Местный
  
Группа: Свой
Сообщений: 459
Регистрация: 30-03-06
Из: Москва
Пользователь №: 15 600

|
STM32F100, пин PA8, с альтернативными функциями USART1_CK / MCO / TIM1_CH1. Таймер1 отключен. USART1 включен, работает в асинхронном режиме. Включил MCO ( вывод клока для внешнего использования ), в качестве источника клока HSI. Наблюдаю такую картину, в моменты передачи по USART1:
Круто. Сам сигнал с MCO выводится для тактирования ПЛИС. Кто-нить уже сталкивался с подобным? С инициализацией проблем нет, там всего две строчки: Код void BspPldInit( void ) { McuPinConfig( MCU_PIN_PA08, MCU_PIN_MODE_OUT_PP_AF_10MHz ); McuClkOutConfig( MCU_CLK_OUT_SRC_HSI ); }
|
|
|
|
|
 |
Ответов
|
Jun 1 2013, 14:29
|

Местный
  
Группа: Свой
Сообщений: 213
Регистрация: 28-02-07
Из: Киев
Пользователь №: 25 744

|
Использовал МСО для тактирования внешнего АЦП частотой 12МГц (выход HSE), был задействован USART1, всё отлично работало. Правда, на F103, но это скорее всего не важно. Проверьте, не установлен ли бит CLKEN в USART1->CR2 Если на пин выведены альтернативные функции от нескольких модулей, нужно быть внимательным и не допускать одновременной работы таких модулей либо блокировать работу альтернативной функции в одном из модулей. В Вашем случае выход CLK у USART1 должен быть запрещен. Цитата(DASM @ Jun 1 2013, 16:59)  Если Вы видели эти стмовские полумакросы-полуфункции (иногда и не понять что есть что Чтобы так говорить, нужно вначале самому их видеть. В приведенном топикстартером фрагменте использованы не стандартные библиотечные функции, а свои. Как раз при отказе от библиотечных функций часто и возникают ошибки, связанные с неправильной инициализацией периферии. Поэтому прежде, чем писать свои функции, напрямую работающие с регистрами, лучше вначале взять и разобраться со стандартными, понять где и что не нравится, и только потом уже писать свои
|
|
|
|
|
Jun 1 2013, 19:22
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(koyodza @ Jun 1 2013, 18:29)  Поэтому прежде, чем писать свои функции, напрямую работающие с регистрами, лучше вначале взять и разобраться со стандартными, понять где и что не нравится, и только потом уже писать свои Это уже пошёл оффтопик, но я, тем не менее, вставлю свои 5 копеек. Всегда манипулировал регистрами, опираясь только на Reference Manual. Всё получалось. Библиотеку не использовал из-за неприязни (кривой она показалась). Сейчас, однако, мог бы и потерпеть неприязнь, если библиотека реально ускоряет разработку: жизнь слишком коротка. Старею, наверное :-)
|
|
|
|
|
Jun 3 2013, 08:20
|

Универсальный солдатик
     
Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362

|
Цитата(scifi @ Jun 1 2013, 22:22)  Всегда манипулировал регистрами, опираясь только на Reference Manual. Всё получалось. Библиотеку не использовал из-за неприязни (кривой она показалась)... Аналогично. Но вот, подбираюсь к USB, и, поскольку дело новое и, говорят, тяжелое, не знаю, что лучше - разбираться самому с битами или  разбираться с функциями (и потом все равно с битами).
|
|
|
|
|
Jun 4 2013, 06:30
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(ViKo @ Jun 3 2013, 14:20)  Аналогично. Но вот, подбираюсь к USB, и, поскольку дело новое и, говорят, тяжелое, не знаю, что лучше - разбираться самому с битами или  разбираться с функциями (и потом все равно с битами). Если на LPC (ARM7 и Cortex-M3) - я использовал стек из примеров NXP. Что-то в нём переделал/оптимизировал, на что-то закрыл глаза. Но можно его юзать и как есть - вполне работоспособный хоть и не оптимальный. Использовал control- и изохронные передачи, с DMA и без. На OMAP-L137 пришлось писать свой стек, так как варианты были - или брать готового кота в мешке со встроенной непонятной ОС и в бинарниках (а по объёму занимаемых ресурсов - не кота, а слона), или из-за стека тащить в нормально работающую реалтайм-систему линух. Использовал и на 51-ядре, но это отдельная песня. На написание стека на ARM-ядро OMAP у меня примерно так же как и у уважаемого Golikov A. ушло около месяца (на базе знаний полученных ранее при использовании стеков от NXP).
|
|
|
|
Сообщений в этой теме
Tahoe STM32F1->MCO качество сигнала May 28 2013, 15:15 diwil подтверждаю.
когда работает уарт на передачу, то о... May 29 2013, 04:54 DASM А можно посмотреть код инициализации на уровне асс... May 29 2013, 05:05 DASM Очередной "бэгрипорт" не состоялся ? May 30 2013, 08:49 ViKo Цитата(Tahoe @ May 28 2013, 18:15) Круто.... May 30 2013, 11:01 Tahoe Цитата(ViKo @ May 30 2013, 15:01) Не могу... May 30 2013, 14:13 Genadi Zawidowski Ну пять-то вольт откуда в процессоре вообще? Это н... May 30 2013, 19:08 Tahoe Цитата(Genadi Zawidowski @ May 30 2013, 23... May 30 2013, 21:10  Genadi Zawidowski Цитата(Tahoe @ May 31 2013, 01:10) Нет. Н... May 31 2013, 22:36 ViKo А вы посмотрите, что делается на разных концах 100... May 31 2013, 05:57 khach Цитата(Tahoe @ May 28 2013, 17:15) Кто-ни... Jun 1 2013, 07:22 DASM Абсолютно поддерживаю. Если Вы видели эти стмовски... Jun 1 2013, 13:59 Tahoe Цитата(koyodza @ Jun 1 2013, 18:29) Прове... Jun 4 2013, 01:49 DASM Да никто не против, а еще лучше - привести кусок д... Jun 1 2013, 15:28 Golikov A. 2 раза на 2 разных процах написал без библиотек по... Jun 3 2013, 11:32 ViKo Цитата(Golikov A. @ Jun 3 2013, 14:32) 2 ... Jun 3 2013, 19:51  Golikov A. Цитата(ViKo @ Jun 3 2013, 23:51) Вы говор... Jun 4 2013, 05:35
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|