:::: MENU ::::
Posts tagged with: STM32

Примеры использования StdPeriph — DMA

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


Примеры использования StdPeriph — SPI

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


Примеры использования StdPeriph — I2C

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


Примеры использования StdPeriph — USART

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


Примеры использования StdPeriph — Timer 6

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


Примеры использования StdPeriph — Прерывания

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


Примеры использования StdPeriph — GPIO

В данной серии статей будут приведены примеры работы с периферией STM32L с помощью библиотеки, предоставляемой ST — StdPeriph. Перед использованием примеров не забывайте включать, соответствующие файлы библиотеки в проект.

Continue Reading


STM32 DMA

Процедура конфигурации канала DMA.

Итак, первоначально надо определиться с источником и получателем данных, откуда и куда будем пересылать. Фактически все задается прямыми адресами в пространстве памяти, для этого предназначены два регистра: DMA_CPARx (базовый адрес периферии) и DMA_CMARx (базовый адрес памяти). В этих регистрах заданы начальные адреса, они остаются неизменными.

Continue Reading


STM32, USART прерывания, отличие TC и TXE

Регистр статуса модуля USART, USART_SR — в нем находятся флаги, указывающие на текущее состояние модуля.

PE (разряд 0) — ошибка паритета при приеме байта. Можно задавать четное или нечетное число единиц в принимаемом байте. Если приняли байт, а в нем другое количество единиц, значит имеем ошибку.

FE (разряд 1) — ошибка кадра при приеме байта, т.е. первый стоп-бит принятой посылки равен 0.

NE (разряд 2) — флаг наличия шума. Ставится аппаратно, когда обнаружен шум в принимаемом кадре.

RXNE (разряд 5) — в регистре данных приема есть данные, т.е. принят байт данных, нужно срочно что-то делать.

TC (разряд 6) — передача завершена. Если регистр передачи данных пуст (на что указывает флаг TXE регистра USART_SR) и в USART_CR1 бит TCIE=1, то генерируется прерывание.

TXE (разряд 7) — регистр данных передачи пуст.

В чем отличие TXE от TC ?

USART передает данные из сдвигового регистра. А в этот сдвиговый регистр они попадают из регистра DR: процессор записывает данные в DR и в нем они будут находиться пока сдвиговый регистр не освободится. Как только он освободится (данные будут переданы) информация из DR будет переписана в него и будет установлен флаг TXE (регистр данных пуст). Если процессор на это никак не отреагирует, то по освобождению сдвигового регистра будет установлен также флаг TC.



Страницы:123