Заголовок сообщения: Re: Настройка USART в STM32 (STM32F103VBT6), Assembler.
Добавлено: Вс апр 13, 2014 11:38:20
Грызет канифоль
Карма: 1
Рейтинг сообщений: 21
Зарегистрирован: Пн май 16, 2011 10:54:32 Сообщений: 299 Откуда: Красноярск
Рейтинг сообщения:0
Часа 3 анализировал ваш код, пока в справочнике (Ссылка на который выше. Отличная вещь! Но уже нашел пару команд, которая не работает, видимо из-за совместимости M3 и M4.), не нашел.
Цитата:
Все указанные команды выполняют переход к метке label или по адресу, находящемуся в регистре Rm. Кроме того: – команды BL и BLX заносят адрес следующей команды в регистр LR (регистр связи, R14); – команды ВХ и BLX генерируют исключение Usage Fault, если бит [0] регистра Rm равен 0.
После смог написать свой код. Тут измененная часть.
Очень долго пытался найти, как включить "стрелку отладки". Так и не нашел, ушел домой, а там стоял только keil4 с полным пакетом обновлений (когда только начинал изучать и не выбрал МК загрузил обновления всего и вся), там выбрал свой мк и нормально все пошло.
Заголовок сообщения: Re: Настройка USART в STM32 (STM32F103VBT6), Assembler.
Добавлено: Вс апр 13, 2014 14:55:19
Грызет канифоль
Карма: 1
Рейтинг сообщений: 21
Зарегистрирован: Пн май 16, 2011 10:54:32 Сообщений: 299 Откуда: Красноярск
Рейтинг сообщения:0
Поиграв с разными светодиодами (Сделав мигалку на 2 светодиода), решил снова пойти к USART. Достал документацию на отладочную плату, там как раз выход USART1 находится на PA9, а он ничем не занят. Настроил его на максимальную скорость в режиме альтернативных функций. Подключил этот выход к своему модулю на FT232, настроил USART по мануалу, но ничего не выходит. После настройки (до попытки отправки байта), в терминал приходит "<0>". А далее, USART1 игнорирует любую попытку записи регистр DR (данные), при этом не меняя флагов (которые, кстати, показывают, что USART готов к приему). Вот код и проект под keil 4.
Код:
ck1 equ 0x20000000+0x101 ;Вершина стека. 0x20000000 - начало ОЗУ (СОЗУ).
;Считываем бит TXE (7). Ждем 0. SR ldr R0, = USART1_SR ldr R1, [R0] ldr R0, = USART1_SR_TXE and R1, R0 cmp R1, R0 bne SR
;Отправляем байт по USART K ldr R0, =USART1_DR mov R1, #'L' str R1, [R0] b SR
b main
END END
Во время настройки PA9 возникла проблема. На этом же порту, как оказалось, висел отладчик, а я в коде перезаписал этот порт с одним пином как выход, и отладка зависла. Никак не удавалось включить плату. Не перезагрузка ничего не помогало. Решил проблему с помощью встроенного в плату jtag-а через него стер программу с помощью STM32 ST-LINK Utility . Несколько раз так попадался.
Вадиматоричик, ты читал по ссылке что я дал ? Там есть ответы на все твои вопросы . Окромя непонятного твоего ляпа -что на PA9 висит отладчик, SWD висит на PA13 и PA14 ...
Цитата:
Несколько раз так попадался.
Connect under Reset поможет и никаких танцев с бубном...
Заголовок сообщения: Re: Настройка USART в STM32 (STM32F103VBT6), Assembler.
Добавлено: Вс апр 13, 2014 18:23:21
Грызет канифоль
Карма: 1
Рейтинг сообщений: 21
Зарегистрирован: Пн май 16, 2011 10:54:32 Сообщений: 299 Откуда: Красноярск
Рейтинг сообщения:0
На этом же порту. Я сначала записывал регистр целиком, тем самым сбрасывая пины отладчика. Потом уже дошло делать через "достал, изменил, положил обратно". Читаю документацию по контроллеру LCD-TFT. Завис на "накопленный вертикальное заднее крыльцо и ширина". Буду в ручную со словарем завтра переводить .
_________________ Все можно сделать, было бы желание!
Заголовок сообщения: Re: Настройка USART в STM32 (STM32F103VBT6), Assembler.
Добавлено: Вс апр 13, 2014 19:33:02
Грызет канифоль
Карма: 1
Рейтинг сообщений: 21
Зарегистрирован: Пн май 16, 2011 10:54:32 Сообщений: 299 Откуда: Красноярск
Рейтинг сообщения:0
Огромное спасибо!!! Прочел внимательно треть форума. Откуда узнал, что помимо того, что пин нужно перевести в альтернативный режим, его нужно еще и указать, т.к. для каждого пина куча доп. функций. Я думал, что он становиться общим для всех автоматически. Вот исправленный код. Спойлер
Код:
Steck1 equ 0x20000000+0x101 ;Вершина стека. 0x20000000 - начало ОЗУ (СОЗУ).
Заголовок сообщения: Re: Настройка USART в STM32 (STM32F103VBT6), Assembler.
Добавлено: Ср апр 16, 2014 11:49:24
Грызет канифоль
Карма: 1
Рейтинг сообщений: 21
Зарегистрирован: Пн май 16, 2011 10:54:32 Сообщений: 299 Откуда: Красноярск
Рейтинг сообщения:0
Да, ветку, прошу прощения. И уже целиком. Перевел начало того мануала, касательно контроллера LTDC. Перевод на 3-чку, но куда лучше авто переводчика. Нет ли статей на русском о работе с этим контроллером на русском? Просто тупо библиотеки не интересуют. Если не найду, то буду и дальше переводить даташит.
_________________ Все можно сделать, было бы желание!
Заголовок сообщения: Re: Настройка USART в STM32 (STM32F103VBT6), Assembler.
Добавлено: Ср апр 16, 2014 14:45:04
Грызет канифоль
Карма: 1
Рейтинг сообщений: 21
Зарегистрирован: Пн май 16, 2011 10:54:32 Сообщений: 299 Откуда: Красноярск
Рейтинг сообщения:0
Перевод дается очень сложно. Иногда приходиться гадать, о чем идет речь... Ни смотря на то, что основы английского я все таки знаю. Вот кусок, над переводом которого бился около часа: Английский: СпойлерLTDC Global configuration parameters Synchronous Timings: Figure 82 presents the configurable timing parameters generated by the Synchronous Timings Generator block presented in the block diagram Figure 81. It generates the Horizontal and Vertical Synchronization timings panel signals, the Pixel Clock and the Data Enable signals. Русский. Спойлер16.4.1 Глобальные настраиваемые параметры LTDC. Синхронизация координат: На рисунке 82 показана конфигурация координат, параметры генератора по синхронизации синхронизационного генератора в блок-диаграмме на рисунке 81. Он генерирует вертикальные и горизонтальные сигналы синхронизации координат панели, пиксельного времени и данных включения сигнала.
_________________ Все можно сделать, было бы желание!
Чаще всего проблема правильного восприятия мысли, изложенной на английском в том, что имеет место попытка частично-фрагментального перевода, "кусками". Русская речь имеет иную фразеологию, не совпадающую с английским. Слова в фразах переставлены местами, что дает при кусочном переводе "вывернутый" смысл. Лучше всего выписать отдельные незнакомые слова в предложении, попытаться их осмыслить "по-русски", переставляя их так или эдак, а потом и перевод сложится. Не по смешному.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 19
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения