单片机学习小组
直播中

半导体开发

9年用户 848经验值
擅长:可编程逻辑
私信 关注

如何配置MCU?

如何配置MCU?

回帖(1)

刘佳

2022-2-14 10:29:26
一、配置MCU
   (1) 、文件--新建项目--选择自己所用的MCU类型、接着配置RCC时钟,都选外部晶振。


(2)、配置时钟频率(这里配置为180M)


二、配置串口的参数、
(1)、选使用的串口、串口模式。
           

(2)、选串口的输入、输出脚、这里配置PA9 .PA10
      


(3)、波特率中断NVIC。
   

第四步、配置NVIC优先级及生成自动中断服务函数。
    (1)、选项卡 NVIC的优先级及勾选中断使能。


(2)、选项卡-Code generation的生成1、中断初始化   2、中断处理函数  3、中断回调函数。
      

第四、生成KEIL项目文件。
(1)PROJECT选项配置,编译环境的这里选KEIL   V5.0(我的机子上安装的是KEIL 2.0)

(2)、Code Generator 选项卡的配置。


第五步 、测试串口1发送数据 。只加入两行代码就可以用串口1发送数据。

第六步、串口1发送数据成功。


第七步、测试串口1接收数据。
    (1).开启了中断才会执行中断函数。  
       __HAL_UART_ENABLE_IT(&huart1,UART_IT_RXNE);//开启串口1的中断使能(大开关)         HAL_UART_Receive_IT(&huart1,aRxBuffer,RxXferCount); //开启接收串口1中断,注意每接收完一次                                                          //  要重新开启 才,接收完成。 以上两行代码:::》》》只有开启了  1.串口1总中断, 2. 串口1接收中断。
  ========== 以下是执行流程图过程,执行完========================





(2)、通过stm32f7xx_it.c找到自带的原回调函数,定位到串口1的接收回调方法中。并复制到MAIN.C中


(3)、复制到MAIN.C中,这里的HAL_UART_RxCpltCallback方法就无效了。

(4)、当串口1每接收到有1字符过来时,就会执行串口1的接收中断函数USART1_IRQHandler, 执行完后会去判断HAL_UART_Receive_IT(&huart1,aRxBuffer,RxXferCount)的RxXferCount值是否为0,
             为0时就会执行接收回调函数HAL_UART_RxCpltCallback。。








举报

更多回帖

发帖
×
20
完善资料,
赚取积分