单片机产品设计与调试——基于STM32F1xx机型和HAL库函数 课件 任务9.2 两台STM32单片机UART通信系统的设计与调试.pptx

单片机产品设计与调试——基于STM32F1xx机型和HAL库函数 课件 任务9.2 两台STM32单片机UART通信系统的设计与调试.pptx

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

单片机产品设计与制作

(stm32机型)石梅香

项目9、利用UART实现LED灯控制任务9.2两台STM32UART通信系统的设计与调试

总目录1项目1、利用GPIO和位带操作实现温度报警2项目2、利用SysTick实现温度报警与控制3项目3、利用按键查询实现参数设定及显示4项目4、利用外部中断实现工件计数显示5项目5、利用定时器实现直流电动机PWM调速6项目6、利用计数器实现工件计数显示和打包控制7项目7、利用DAC实现LED亮度控制8项目8、利用ADC实现土壤湿度采集

项目总目标项目总目标通过UART与UART通信、UART与PC机通信等工作任务,掌握UART通信电路与程序设计方法。具体包括:1、了解单片机串行通信基本概念,能够说出串行通信特点与分类;2、理解STM32F10x的UART结构组成与工作特性,能够对照结构框图说出其基本工作过程;3、掌握基于STM32F10xUART的电路设计方法,能进行基本独立设计与调试;4、掌握基于HAL库函数的STM32F10xUART编程方法,能独立编程实现;5、会查找相关资料、阅读相关文献。

子目录9项目9、利用UART实现LED灯控制9.1任务9.1 认识STM32单片机的USART9.2任务9.2 两台STM32UART通信系统的设计与调试9.3任务9.3 STM32UART与PC机通信系统设计与调试

任务9.2两台STM32UART通信系统的设计与调试一、任务要求(一)总目标1、能画出两台STM32UART通信电路;2、能利用HAL_UART_Receive()和HAL_UART_Transmit()库函数编写两台STM32UART通信程序。(二)具体任务描述按下1#机K_UP键(PA0): 点亮2#机LED0;按下1#机K_DOWN键(PE2): 熄灭2#机LED0;按下1#机K_LEFT键(PE3): 点亮2#机LED0~LED7;按下1#机K_RIGHT键(PE4): 熄灭2#机LED0~LED7。

分组讨论要实现两台STM32的UART通信,电路和程序应该怎样设计讨论与发言

方案设计图9.2.1系统方框图

电路设计由于1#机只发送,2#机只接收,图中虚线也可以不接

程序设计与调试1、1#程序文件布局与框架搭建

程序设计与调试2、1#程序流程图

程序设计与调试3、1#程序主程序(1)第5行:声明UART操作变量UART1_Handler,指出它是一个extern型变量(该变量在文件uart.c中被定义),数据类型是UART_HandleTypeDef。关于UART_HandleTypeDef类型详情参见表9.2.1。(2)第7行:定义变量TX_Char,该变量用于存储准备从UART发送的数据。(3)第13行,调用函数UART1_Init(),初始化UART。该函数在uart.c中定义,带一个参数,用于指出波特率,这里是9600bps。(4)第16~20行:进行按键采集,根据按键情况为变量TX_Char赋值。第22行:使用了库函数HAL_UART_Transmit(),将变量TX_Char的值送入UART进行发送。该函数共有4个参数

程序设计与调试4、1#UART程序设计

程序设计与调试4、1#UART程序设计(1)第2行:定义UART操作变量名为UART1_Handler,数据类型固定为UART_HandleTypeDef,用于指出用哪个UART,怎么发送或接收,具体要求参见表9.2.1。(2)第4~14行:UART初始化函数。该函数带一个参数baund,用于指出波特率。(3)第5~11行用于设置变量UART1_Handler,指出使用USART1,波特率=bound、数据位+校验位字长=8、1个停止位、无校验位、无硬件流控制、数据发送和接收模式。对于本应用,由于1#机只进行数据发送,也可将其设置为数据发送模式(UART_MODE_TX)。(4)第13行调用UART初始化库函数HAL_UART_Init(),按照变量UART1_Handler的值进行UART初始化。该库函数定义参见表9.2.2。(5)第19~35行:执行UART初始化库函数HAL_UART_Init()时,会自动调用库函数HAL_UART_MspInit()。此库函数内容可自行编写。我们在这里开启USART1和GPIOA时钟,初始化USART1的引脚PA9(Tx)和PA10(Rx)。注意PA9应设置为复用推挽输出,PA10应设置为复用输入。

程序设计与调试5、UART相关库函数解读表9.2.1?UART操作变量UART操作变量数据类型:UART_HandleTypeDeftypedefstruct{ USART_TypeDef *In

您可能关注的文档

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档