DMA1 не работает с USART1 в stm32f103c8?

голоса
0

Я пытаюсь включить DMA1 с USART1 в stm32f103c8, но он не работает. я позволил USART для работы в качестве передатчика. а затем позволили DMA1 и сделать эту конфигурацию к нему 1 включите DMA1 часы от РКЦ. 2-отключила DMA1 канал. 3-установка periority DMA1 канала как очень высокая periority. 4-сделать направление канала DMA1 из памяти в периферийное устройство. 5-сделать размер памяти и периферийного размер, как байты. 6 включить приращение памяти и отключить периферийное приращение. 7 включить круговой режим. 8-установить прерывание DMA для передачи полной. 7-установка адрес памяти буфера и установить периферический адрес в качестве регистра USART1 данных. 8-установить число раз, чтобы ДМА передачи как 6. 9-разрешить прерывание DMA1 канала в NVIC. 10 включите DMAT в USART1 сделать USART работу с DMA1 11 включите DMA1 начать работу.

после всей этой конфигурации DMA не вки, но УСАППЫ работы успешно. в основном коде я сделать инициализировать в USART1, а затем инициализировать в DMA1, как я сказал, и затем отправить один символ терминал и сделать пустое время (1). терминал только получить только полукокс я был отправить его, но не получить символ в памяти и DMA не пошло к проводнику в DMA, что подразумевают DMA не работают никогда почему?

Задан 02/12/2019 в 23:57
источник пользователем
На других языках...                            


1 ответов

DMA1 не работает с USART1 в stm32f103c8?

голоса
0

Я пытаюсь включить DMA1 с USART1 в stm32f103c8, но он не работает. я позволил USART для работы в качестве передатчика. а затем позволили DMA1 и сделать эту конфигурацию к нему 1 включите DMA1 часы от РКЦ. 2-отключила DMA1 канал. 3-установка periority DMA1 канала как очень высокая periority. 4-сделать направление канала DMA1 из памяти в периферийное устройство. 5-сделать размер памяти и периферийного размер, как байты. 6 включить приращение памяти и отключить периферийное приращение. 7 включить круговой режим. 8-установить прерывание DMA для передачи полной. 7-установка адрес памяти буфера и установить периферический адрес в качестве регистра USART1 данных. 8-установить число раз, чтобы ДМА передачи как 6. 9-разрешить прерывание DMA1 канала в NVIC. 10 включите DMAT в USART1 сделать USART работу с DMA1 11 включите DMA1 начать работу.

после всей этой конфигурации DMA не вки, но УСАППЫ работы успешно. в основном коде я сделать инициализировать в USART1, а затем инициализировать в DMA1, как я сказал, и затем отправить один символ терминал и сделать пустое время (1). терминал только получить только полукокс я был отправить его, но не получить символ в памяти и DMA не пошло к проводнику в DMA, что подразумевают DMA не работают никогда почему?

Ответил 02/12/2019 в 23:57
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more