书签 分享 收藏 举报 版权申诉 / 39
上传文档赚钱

类型2-STM32串口通信实验课件-002.ppt

  • 上传人(卖家):晟晟文业
  • 文档编号:4349493
  • 上传时间:2022-12-01
  • 格式:PPT
  • 页数:39
  • 大小:2.62MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《2-STM32串口通信实验课件-002.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    STM32 串口 通信 实验 课件 _002
    资源描述:

    1、LOGO第二课第二课串口通信串口通信C串口简介串口简介u串行接口简称串口,也成串行通信接口,是采用串行通串行接口简称串口,也成串行通信接口,是采用串行通信方式的扩展接口。串口的使用对于开发调试过程的作信方式的扩展接口。串口的使用对于开发调试过程的作用是非常大的,串口可以用来查看、打印及输出相关信用是非常大的,串口可以用来查看、打印及输出相关信息,使我们在嵌入式开发中最先与中央处理器通信的接息,使我们在嵌入式开发中最先与中央处理器通信的接口。口。u串行通讯的特点是:数据位传送,传按位顺序进行,最串行通讯的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成,成本低但传送速度慢。串少只需

    2、一根传输线即可完成,成本低但传送速度慢。串行通讯的距离可以从几米到几千米。行通讯的距离可以从几米到几千米。C串口简介串口简介u 串行通讯又分为异步通讯和同步通讯两种:串行通讯又分为异步通讯和同步通讯两种:n同步串行是指同步串行是指ISP(interface Serial Peripheral)的缩写。)的缩写。ISP总总线系统是一种同步串行外设接口,它可以使线系统是一种同步串行外设接口,它可以使MCU与各种外围设与各种外围设备以串行方式进行通信以交换信息,备以串行方式进行通信以交换信息,TRM450是是ISP接口。接口。n异步串行是指异步串行是指UART(Universal Asynchron

    3、ous Receiver/Trans mitter),通用异步接收),通用异步接收/发送。发送。UART是一个并行输入成为串是一个并行输入成为串行输出的芯片,通常集成在主板上。行输出的芯片,通常集成在主板上。UART包含包含TTL电平的串电平的串口和口和RS232电平的串口。电平的串口。u 串行接口按电气标准及协议来分包括串行接口按电气标准及协议来分包括RS-232-C、RS-422、RS485等。等。RS-232-C、RS-422与与RS-485标准只对接口的电气特性做出规定,标准只对接口的电气特性做出规定,不涉及接插件、电缆或协议。不涉及接插件、电缆或协议。u 在单片机中,主要使用异步通讯

    4、方式。在单片机中,主要使用异步通讯方式。C串口简介串口简介u串口通信的概念非常简单,串口按位串口通信的概念非常简单,串口按位(bit)发送和接收字发送和接收字节,尽管比按字节节,尽管比按字节(byte)的并行通信慢,但是串口可以的并行通信慢,但是串口可以再使用一根线发送数据的同时用另一根线接收数据。它再使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。串口通信最重要的参很简单并且能够实现远距离通信。串口通信最重要的参数是波特率、数据位、停止位和奇偶校验。数是波特率、数据位、停止位和奇偶校验。u 对于两个进行通信的端口,这些参数必须匹配:对于两个进行通信的端口,这些参数

    5、必须匹配:n1、波特率:这是一个衡量通信速度的参数,它表示每秒、波特率:这是一个衡量通信速度的参数,它表示每秒钟传送的钟传送的bit的个数。例如的个数。例如300波特表示每秒钟发送波特表示每秒钟发送300个个bit。CSTM32串口简介串口简介u2、数据位:这是衡量通信中实际数据位的参数。当计、数据位:这是衡量通信中实际数据位的参数。当计算机发送一个信息包,实际数据不会是算机发送一个信息包,实际数据不会是8位的,标准的位的,标准的值是值是5、7或或8位(如何设置取决于你想传送的信息:比位(如何设置取决于你想传送的信息:比如标准的如标准的ASCII码是码是0127(7位),扩展的位),扩展的AS

    6、CII码是码是0255(8位)。位)。u3、停止位:用于表示单个包的最后一位。典型的值为、停止位:用于表示单个包的最后一位。典型的值为1、1.5和和2位。优于数据是在传输线上定时的,并且每一个位。优于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备间出现设备有其自己的时钟,很可能在通信中两台设备间出现了小小的不同步。因此停止位不仅仅是表示传输的结束,了小小的不同步。因此停止位不仅仅是表示传输的结束,并且提供计算机校正时钟同步的机会。并且提供计算机校正时钟同步的机会。CSTM32串口简介串口简介u4、奇偶校验位:在串口通信中一种简单的检错方式。、奇偶校验位:在串口通信

    7、中一种简单的检错方式。有有4中检错方式:偶、奇、高和低。中检错方式:偶、奇、高和低。u5、硬件流控制:硬件流控制常用的有、硬件流控制:硬件流控制常用的有RTS/CTS流控制流控制盒盒DTR/DSR流控制。硬件流控制必须将相应的电缆线接流控制。硬件流控制必须将相应的电缆线接上,用上,用RTS/CTS流控制时,应将通讯两端的流控制时,应将通讯两端的RTS、CTS线对应相连。常用的流控制信号还有线对应相连。常用的流控制信号还有DTR/DSR。CSTM32串口简介串口简介u STM32根据芯片型号的不同资源数量也不一样,根据芯片型号的不同资源数量也不一样,103VC系列最多可提供系列最多可提供5路串口

    8、(本次着重讲解串口路串口(本次着重讲解串口1和串口和串口2),有分数波特率发生器、支持同步单线通信和半双),有分数波特率发生器、支持同步单线通信和半双工单线通讯、支持工单线通讯、支持LIN、支持调制解调器操作、智能卡、支持调制解调器操作、智能卡协议和协议和IrDA SIR ENDEC规范、具有规范、具有 DMA等。等。uSTM32的串口与其他单片机的操作方式基本相同:的串口与其他单片机的操作方式基本相同:n1、开启串口时钟、开启串口时钟n2、设置相应、设置相应I/O模式模式n3、配置波特率、数据位长度、奇偶校验位等、配置波特率、数据位长度、奇偶校验位等CSTM32串口原理图串口原理图CSTM3

    9、2 UART库函数库函数CSTM32串口时钟使能串口时钟使能u 串口作为串口作为STM32的一个外设,其时钟由外设时钟使能寄存器控制,的一个外设,其时钟由外设时钟使能寄存器控制,串口串口1的时钟使能在的时钟使能在APB2ENR寄存器,其他串口的时钟使能位都在寄存器,其他串口的时钟使能位都在APB1ENR。(以串口以串口1为例为例)u 而用库函数则是而用库函数则是:RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE)CSTM32串口复位串口复位u 当外设出现异常的时候可以通过复位寄存器里面的对应位设置,实当外设出现异常的时候可以通过复位寄存器里

    10、面的对应位设置,实现该外设的复位,然后重新配置这个外设达到让其重新工作的目的。现该外设的复位,然后重新配置这个外设达到让其重新工作的目的。一般在系统刚开始配置外设的时候都会先执行复位该外设的操作。一般在系统刚开始配置外设的时候都会先执行复位该外设的操作。串口串口1的复位时通过配置的复位时通过配置APB2RSTR寄存器来实现的,其他的几个寄存器来实现的,其他的几个串口都是通过串口都是通过PAB1RSTR寄存器来实现的。而用库函数则是使用寄存器来实现的。而用库函数则是使用USART_DeInit(USART_TypeDef*USARTx)来实现的。来实现的。USART_ DeInit函数在函数在s

    11、tm32f10 x_usart.c文件中。文件中。CSTM32串口波特率设置串口波特率设置u STM32中每个串口都有一个自己独立的波特率寄存器中每个串口都有一个自己独立的波特率寄存器USART_BRR,通过设置该寄存器达到配置不同波特率的目的,该寄存器的各位描通过设置该寄存器达到配置不同波特率的目的,该寄存器的各位描述如下:述如下:u 该寄存器中最低该寄存器中最低4为用来存放为用来存放小数小数部分的部分的DIV_Fraction,15:4这这12位位用来存放用来存放整数整数部分部分DIV_Mantissa。高。高16位未使用(图片上小数整数位未使用(图片上小数整数有错误,以英文手册为准)。有

    12、错误,以英文手册为准)。CSTM32串口波特率设置串口波特率设置uCSTM32串口控制串口控制u STM32中每个串口都有中每个串口都有3个控制寄存器个控制寄存器USART_CR13,串口的很,串口的很多配置都是通过这多配置都是通过这3个寄存器来设置的。这里我们只要用到个寄存器来设置的。这里我们只要用到USART_CR1就可以实现我们的功能了,其他的寄存器就不一一列就可以实现我们的功能了,其他的寄存器就不一一列出了。具体各位的功能及操作方法见出了。具体各位的功能及操作方法见STM32参考手册的参考手册的496497页。页。其中发送和接收的中断都通过这个寄存器进行使能。其中发送和接收的中断都通过

    13、这个寄存器进行使能。CSTM32串口数据的发送和接收串口数据的发送和接收u STM32串口的发送和接收是通过数据寄存器串口的发送和接收是通过数据寄存器USART_DR来实现的,来实现的,这是一个双寄存器,包含了发送和接收两部分。当向该寄存器写数这是一个双寄存器,包含了发送和接收两部分。当向该寄存器写数据时,串口就会自动发送,当收到数据的时候,也在该寄存器中。据时,串口就会自动发送,当收到数据的时候,也在该寄存器中。u 其中只用了低其中只用了低9位,其他位都保留且硬件强制为位,其他位都保留且硬件强制为0。CSTM32串口数据的发送和接收串口数据的发送和接收u STM32串口的发送和接收在库文件中

    14、分别有对应的函数,可直接调串口的发送和接收在库文件中分别有对应的函数,可直接调用,分别是:用,分别是:u void USART_SendData(USART_TypeDef*USARTx,u8 Data)u u8 USART_ReceiveData(USART_TypeDef*USARTx)CSTM32串口状态串口状态u STM32串口的状态可通过状态寄存器串口的状态可通过状态寄存器USART_SR读取。读取。u 这里我们关注一下三个位,第这里我们关注一下三个位,第5、6、7位位RXNE、TC和和TXE。CSTM32串口串口u 如果理解了以上寄存器等的讲解,那么就可以对如果理解了以上寄存器等的

    15、讲解,那么就可以对STM32进行进行相关的设置和操作,就可以达到串口最基本的配置了,更详相关的设置和操作,就可以达到串口最基本的配置了,更详细的介绍可参考细的介绍可参考STM32参考手册参考手册。u 在很多串口操作中都可以直接调用在很多串口操作中都可以直接调用printf函数打印输出信息,函数打印输出信息,但是在但是在STM32中还需要进行一些配置才可以。接下来我们首中还需要进行一些配置才可以。接下来我们首先会讲解如何使用先会讲解如何使用printf函数进行输出,然后再讲解输入输出函数进行输出,然后再讲解输入输出函数的使用方法。函数的使用方法。CSTM32串口串口printf实现实现u 本次试

    16、验采用本次试验采用UART1的查询方式实现:的查询方式实现:CSTM32串口串口printf实现实现u本次试验中我们用到了本次试验中我们用到了GPIO、RCC、USART这三个外这三个外设的库文件设的库文件stm32f10 x_gpio.c、stm32f10 x_rcc.c、stm32f10 x_usart.c,所以试验中如果你的库文件,所以试验中如果你的库文件stm32f10 x_conf.h里面将相应的头文件注释了就需要将里面将相应的头文件注释了就需要将需要用到的几个头文件的注释去掉。需要用到的几个头文件的注释去掉。u 跟跟LED的操作一样,首先是将相应的的操作一样,首先是将相应的I/O配

    17、置成串口模配置成串口模式,本次函数名为式,本次函数名为USART1_Config();CSTM32串口串口printf实现实现u CSTM32串口串口printf实现实现u USART1_Config()主要做了如下工作:主要做了如下工作:n1、使能了串口、使能了串口1的时钟的时钟n2、配置了、配置了uart1的的I/On3、配置了、配置了uart1的工作模式的工作模式CSTM32串口简介串口简介u 上面的配置中将串口上面的配置中将串口1的的TX和和RX引脚配置成引脚配置成AF_PP和和IN_FLOATING模式,因为模式,因为RX是接收引脚所以设置沉高是接收引脚所以设置沉高输入模式。输入模式

    18、。u接下来将接下来将UART1的工作模式配置成波特率为的工作模式配置成波特率为115200(可可自行更改自行更改),数据位长度为,数据位长度为8bit,停止位为,停止位为1,无校验位。,无校验位。u在使用在使用printf函数之前还需要进行一些操作。如果要函数之前还需要进行一些操作。如果要printf函数工作的话,还需要把函数工作的话,还需要把printf()重新定向到串口重新定向到串口中,这部分工作是由中,这部分工作是由fputc(int ch,FILE*f)这个函数来完这个函数来完成的,这个函数在成的,这个函数在usart.c中实现。中实现。CSTM32printf用法配置用法配置u 在在

    19、STM32中直接调用中直接调用printf函数会出错,需要进行一些函数会出错,需要进行一些配置:配置:n1、在、在main文件中包含文件中包含stdio.hn2、重定义、重定义fputc函数,如下:函数,如下:/发送数据发送数据 int fputc(int ch,FILE*f)USART_SendData(USART1,(unsigned char)ch);while(!(USART1-SR&USART_FLAG_TXE);return(ch);3、在工程属性的、在工程属性的“Target”-“Code Generation”选项中勾选选项中勾选“Use MicroLIB”。CSTM32pri

    20、ntf用法配置用法配置u 在这里讲解一下在这里讲解一下fputc函数里面的代码,我们前面提到函数里面的代码,我们前面提到过过USART_SR寄存器的寄存器的5、6、7三位,理解了这几位的三位,理解了这几位的功能就可以大概理解串口是如何发送数据的了。功能就可以大概理解串口是如何发送数据的了。CSTM32printf用法配置用法配置u 当当TXE置位时,就表示发送数据寄存器中的数据已经移到了发送置位时,就表示发送数据寄存器中的数据已经移到了发送移位寄存器中,如果使能中断的话就会产生中断。当移位寄存器中,如果使能中断的话就会产生中断。当RXNE置位时置位时表示接受移位寄存器中的数据已经移到接受数据寄

    21、存器中了,如果表示接受移位寄存器中的数据已经移到接受数据寄存器中了,如果中断使能的话则产生中断。中断使能的话则产生中断。u 虽然虽然fputc函数里面用到的是查询模式,但道理是一样的。我们先调函数里面用到的是查询模式,但道理是一样的。我们先调用用USART_SendData(USART1,(unsigned char)ch)将我们要发送的将我们要发送的数据送到数据送到TDR中,之后我们就等待中,之后我们就等待TXE置位,当置位,当TXE置位时就表示置位时就表示TDR中的数据转移到了发送移位寄存器中了,发送移位寄存器中的中的数据转移到了发送移位寄存器中了,发送移位寄存器中的数据会由串口硬件自动发

    22、送,如此循环,直到将我们要发送的数据数据会由串口硬件自动发送,如此循环,直到将我们要发送的数据全部发送完为止。全部发送完为止。CSTM32 printf用法配置用法配置u进行上述设置之后就可以使用进行上述设置之后就可以使用printf函数了函数了u如果设置成功,下载程序,将开发板的串口接到如果设置成功,下载程序,将开发板的串口接到PC机上,机上,打开串口调试助手,设置好波特率等参数就可以看到打开串口调试助手,设置好波特率等参数就可以看到this is a uart test demo的字符。的字符。u以上例程展示了如何使用以上例程展示了如何使用printf函数发送字符串。函数发送字符串。Cu

    23、前面讲解了前面讲解了printf函数的使用方法,接下来讲解如何使函数的使用方法,接下来讲解如何使用用STM32的串口输入输出实现双向通信。的串口输入输出实现双向通信。uSTM32串口的相关寄存器和原理在前面都有提到,这里串口的相关寄存器和原理在前面都有提到,这里就不再赘述,这里主要讲解软件的实现方法。就不再赘述,这里主要讲解软件的实现方法。u首先我们讲解查询方式的发送和接收。首先我们讲解查询方式的发送和接收。Cu 本实验中我们通过串口本实验中我们通过串口1持续等待接收数据,当接收到持续等待接收数据,当接收到回车符时将接收到的内容再通过串口发送出去。回车符时将接收到的内容再通过串口发送出去。u发

    24、送函数:发送函数:Cu 发送有两个函数,分别是发送单个字符和发送字符串函发送有两个函数,分别是发送单个字符和发送字符串函数,发送单个字符函数首先是将要发送的字符写到缓存数,发送单个字符函数首先是将要发送的字符写到缓存中,然后等待串口自动发送完成,如果不等待发送完成中,然后等待串口自动发送完成,如果不等待发送完成就返回,则在字符串发送函数中函数会被连续循环调用就返回,则在字符串发送函数中函数会被连续循环调用多次,如果上一次发送的字节在寄存器中还没有发送结多次,如果上一次发送的字节在寄存器中还没有发送结束,此时再次写入同样的寄存器会将刚才的数据覆盖掉,束,此时再次写入同样的寄存器会将刚才的数据覆盖

    25、掉,接收端将得不到预期的结果,所以需要等待发送完一个接收端将得不到预期的结果,所以需要等待发送完一个字符之后再发送下一个字符。字符之后再发送下一个字符。u发送字符串函数则是循环调用发送单个字符函数,直到发送字符串函数则是循环调用发送单个字符函数,直到检测到空格即表明字符串已发送完。检测到空格即表明字符串已发送完。Cu查询接收函数:查询接收函数:u接收函数首先是查询寄存器中是否有数据,如果有数据接收函数首先是查询寄存器中是否有数据,如果有数据就将数据取出,然后清除相应的标志位,如果没有数据就将数据取出,然后清除相应的标志位,如果没有数据就一直等待数据出现。就一直等待数据出现。Cu 接下来就是在接

    26、下来就是在main函数中调用发送和接收函数:函数中调用发送和接收函数:u 首先设置系统时钟,然后初始化首先设置系统时钟,然后初始化USART1,然后循环读取数据,如,然后循环读取数据,如果读取到了数据则将数据再通过串口发送出去。果读取到了数据则将数据再通过串口发送出去。u 如果操作成功,则通过串口调试助手发送一串数据可在接收区看到如果操作成功,则通过串口调试助手发送一串数据可在接收区看到发送的数据。发送的数据。CSTM32串口中断串口中断u 接下来讲解串口的中断接收方式:接下来讲解串口的中断接收方式:u在驱动中频繁的使用查询方式接收数据不仅会降低系统在驱动中频繁的使用查询方式接收数据不仅会降低

    27、系统的效率而且可能使系统崩溃。采取中断方式可以很好地的效率而且可能使系统崩溃。采取中断方式可以很好地缓解这一问题。本次讲解串口缓解这一问题。本次讲解串口1的中断接收方式:的中断接收方式:u用串口中断函数除了要初始化用串口中断函数除了要初始化I/O和时钟等,还要配置和时钟等,还要配置相应的中断及中断函数。相应的中断及中断函数。CSTM32串口中断串口中断u STM32(Cortex-M3)中有两个优先级的概念:抢占式优先级中有两个优先级的概念:抢占式优先级和响应优先级,也把响应优先级称作和响应优先级,也把响应优先级称作“亚优先级亚优先级”或或“副优副优先级先级”,每个中断源都需要被指定这两种优先

    28、级。,每个中断源都需要被指定这两种优先级。u占先式优先级占先式优先级(pre-emption priority):高占先式优先级的中:高占先式优先级的中断事件会打断当前的主程序断事件会打断当前的主程序/中断程序运行中断程序运行抢断式优先响应,抢断式优先响应,俗称中断嵌套。俗称中断嵌套。u副优先级副优先级(subpriority):在占先式优先级相同的情况下,高:在占先式优先级相同的情况下,高副优先级的中断优先被响应;副优先级的中断优先被响应;u在占先式优先级相同的情况下,如果有低副优先级中断正在在占先式优先级相同的情况下,如果有低副优先级中断正在执行,执行,高副优先级的中断要等待已被响应的低副

    29、优先级中断高副优先级的中断要等待已被响应的低副优先级中断执行结束后才能得到响应执行结束后才能得到响应非抢断式响应非抢断式响应(不能嵌套不能嵌套)。C stm32中对中断优先级的定义中对中断优先级的定义u Cortex-M3允许具有较少中断源时使用较少的寄存器位指定允许具有较少中断源时使用较少的寄存器位指定中断源的优先级,因此中断源的优先级,因此STM32把指定中断优先级的寄存器位把指定中断优先级的寄存器位减少到减少到4位,这位,这4个寄存器位的分组方式如下:个寄存器位的分组方式如下:n第第0组:所有组:所有4位用于指定响应优先级位用于指定响应优先级n第第1组:最高组:最高1位用于指定抢占式优先

    30、级,最低位用于指定抢占式优先级,最低3位用于指位用于指定响应优先级定响应优先级n第第2组:最高组:最高2位用于指定抢占式优先级,最低位用于指定抢占式优先级,最低2位用于指位用于指定响应优先级定响应优先级n第第3组:最高组:最高3位用于指定抢占式优先级,最低位用于指定抢占式优先级,最低1位用于指位用于指定响应优先级定响应优先级n第第4组:所有组:所有4位用于指定抢占式优先级位用于指定抢占式优先级C stm32中对中断优先级的定义中对中断优先级的定义u中断优先级分组是为了给抢占式优先级和响应优先级在中断优中断优先级分组是为了给抢占式优先级和响应优先级在中断优先级寄存器的高四位分配各个优先级数字所占

    31、的位数,在一次先级寄存器的高四位分配各个优先级数字所占的位数,在一次程序中只能设定一次。程序中只能设定一次。uAIRC(Application Interrupt and Reset Register)寄存器中有用寄存器中有用于指定优先级的于指定优先级的 4 bits。这。这4个个bits用于分配用于分配preemption优先级优先级和和sub优先级。优先级。u 可以通过调用可以通过调用STM32的固件库中的函数的固件库中的函数NVIC_PriorityGroup Config()选择使用哪种优先级分组方式,这个函数的参数有下选择使用哪种优先级分组方式,这个函数的参数有下列列5种:种:nNV

    32、IC_PriorityGroup_0=选择第选择第0组组NVIC_PriorityGroup_1=选择第选择第1组组NVIC_PriorityGroup_2=选择第选择第2组组NVIC_PriorityGroup_3=选择第选择第3组组NVIC_PriorityGroup_4=选择第选择第4组组C stm32中对中断优先级的定义中对中断优先级的定义u接下来就是指定中断源的优先级:接下来就是指定中断源的优先级:u要注意的几点是:要注意的几点是:n 1.如果指定的抢占式优先级别或响应优先级别超出了选定的优如果指定的抢占式优先级别或响应优先级别超出了选定的优先级分组所限定的范围,将可能得到意想不到的

    33、结果;先级分组所限定的范围,将可能得到意想不到的结果;n 2.抢占式优先级别相同的中断源之间没有嵌套关系;抢占式优先级别相同的中断源之间没有嵌套关系;n 3.如果某个中断源被指定为某个抢占式优先级别,又没有其它如果某个中断源被指定为某个抢占式优先级别,又没有其它中断源处于同一个抢占式优先级别,则可以为这个中断源指定任中断源处于同一个抢占式优先级别,则可以为这个中断源指定任意有效的响应优先级别。意有效的响应优先级别。CSTM32串口中断串口中断u 之前讲过之前讲过stm32库文件中的库文件中的stm32f10 x_it.c和和stm32f10 x_it.h文文件中是中断映射函数,所以需要操作串口

    34、的中断必须清楚串件中是中断映射函数,所以需要操作串口的中断必须清楚串口的中断映射函数,有些口的中断映射函数,有些it文件中并没有串口的中断映射函文件中并没有串口的中断映射函数,在启动文件数,在启动文件startup_stm32f10 x_hd.s中可以看到各种中断中可以看到各种中断的映射函数:的映射函数:u从中可以看出串口从中可以看出串口2的中断映射函数名为的中断映射函数名为USART2_IRQHandlerCSTM32串口中断串口中断u 接下来就是编写中断响应函数在中断响应函数中写入进接下来就是编写中断响应函数在中断响应函数中写入进中断后想要进行的操作,本实验中是将接收端接收的数中断后想要进行的操作,本实验中是将接收端接收的数据通过串口发送出去:据通过串口发送出去:u接下来将编译通过的程序下到开发板中,通过串口调试接下来将编译通过的程序下到开发板中,通过串口调试助手进行调试即可。助手进行调试即可。

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:2-STM32串口通信实验课件-002.ppt
    链接地址:https://www.163wenku.com/p-4349493.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库