嵌入式作业五(第六章)

1、编写UART_2串口发送程序时,初始化需要设置哪些参数?

(1)确定MCU串口号、所接MCU的引脚。    

        采用的串口为UART_2,但在程序中不直接使用这个串口名,而是在user.h中宏定义使用的串口名为UART_User,以便增强编程的可移植性。

(2)确定串口UART_User的波特率,在main.c中,对其初始化。                   uart_init(UART_User,115200);          //初始化串口模块

2、假设速度为115200,系统时钟为72MHz,波特率寄存器BRR中的值应该是多少?

        根据过采样模式的不同结果不同

        

        如果过采样模式为0(系数为16):625

        如果过采样模式为1(系数为8):1250

3、中断向量表在哪个文件中?表中有多少项?给出部分截图。

        STM32L431的中断向量表在startup_stm32l431rctx.s 中。

        表中有99个中断,前16个为内核中断,后面的为非内核中断。

        

        

4、以下是中断源使能函数,假设中断源为TIM6,将函数实例化(写出各项具体数值)。

查找IRQ号,取32模得置位

得TIM6的IRQ号为54,取32模得22,应该在ISER[1]的第22位设置为1

5、假设将UART_2和TIM6交换其在中断向量表中的位置和IRQ号, UART_2可以正常中断吗?

        可以,中断号的改变不影响中断控制器NVIC的配置,只是改变了中断向量表中的终端函数入口地址

6、实现UART_2串口的接收程序,当收到字符时: ①在电脑的输出窗口显示下一个字符,如收到A显示B; ②亮灯:收到字符G,亮绿灯;收到字符R,亮红灯;收到字符B,亮蓝灯;收到其他字符,不亮灯。

实现方式:

1、用构件调用方式实现;

声明

主程序:

2、UART部分用直接地址方式实现(即不调用uart.c中的函数,其他部分如GPIO、中断设置可调用函数)。

功能等同uart_re1接收字节

功能等同uart_send1发送字节

相关推荐

  1. c++ primer中文版作业

    2024-05-25 19:14:47       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-25 19:14:47       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-25 19:14:47       100 阅读
  3. 在Django里面运行非项目文件

    2024-05-25 19:14:47       82 阅读
  4. Python语言-面向对象

    2024-05-25 19:14:47       91 阅读

热门阅读

  1. 中移物联OneMO Cat.1模组推动联网POS规模应用

    2024-05-25 19:14:47       34 阅读
  2. C++之左值、右值、完美转发

    2024-05-25 19:14:47       39 阅读
  3. Redis实现MQ

    2024-05-25 19:14:47       32 阅读
  4. 定时器

    定时器

    2024-05-25 19:14:47      33 阅读
  5. eclipse 快捷键

    2024-05-25 19:14:47       36 阅读
  6. pytest

    2024-05-25 19:14:47       31 阅读
  7. uniApp 创建Android.keystore证书&IOS的证书

    2024-05-25 19:14:47       37 阅读
  8. Spring Boot中的缓存注解

    2024-05-25 19:14:47       31 阅读
  9. (九)npm 使用

    2024-05-25 19:14:47       32 阅读
  10. android关于framework层的中间件jar的流程

    2024-05-25 19:14:47       34 阅读
  11. 日用百货元宇宙 以科技创新培育产业新质生产力

    2024-05-25 19:14:47       33 阅读