欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年完整word版,STMUart串口中断响应、发送接收详细程序 .pdf

    • 资源ID:40168617       资源大小:38.45KB        全文页数:4页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年完整word版,STMUart串口中断响应、发送接收详细程序 .pdf

    程序实现功能:可以直接接收USART1 的数据,并通过串口调试输出显示#includestm32f10 x_lib.h void NVIC_Configuration(void);void RCC_Configuration(void);void GPIO_Configuration(void);ErrorStatus HSEStartUpStatus;USART_InitTypeDef USART_InitStructure;USART_ClockInitTypeDef USART_ClockInitStructure;int main()#ifdef DEBUG debug#endif RCC_Configuration();NVIC_Configuration();GPIO_Configuration();/*串口传输速率的大小必须与RCC 所设定的时钟相对应起来*/USART_InitStructure.USART_BaudRate=9600;/设置 USART 的传输速率/*设定数据的接收发送模式*/USART_InitStructure.USART_WordLength=USART_WordLength_8b;/在一帧中传输或接受 8 位数据位USART_InitStructure.USART_StopBits=USART_StopBits_1;/定义在帧的结尾传输一个停止位USART_InitStructure.USART_Parity=USART_Parity_No;/奇偶失能USART_InitStructure.USART_HardwareFlowControl=USART_HardwareFlowControl_None;/指定硬件流控制模式RTS 和 CTS 使能USART_InitStructure.USART_Mode=USART_Mode_Rx|USART_Mode_Tx;/指定使能或失能发送和接受模式Tx 发送使能和Rx 接收使能USART_ ClockInitStructure.USART_Clock=USART_Clock_Disable;/提升 USART 时钟时使能还是失能,钟低电平活动USART_ClockInitStructure.USART_CPOL=USART_CPOL_Low;/指定 SLCK 引脚上时钟的极性USART_ClockInitStructure.USART_CPHA=USART_CPHA_2Edge;/时钟第二个边缘进行数据捕获USART_ClockInitStructure.USART_LastBit=USART_LastBit_Disable;/在 SCLK 引脚上输出最后发送的那个数据字的脉冲不从SCLK 输出USART_ClockInit(USART1,&USART_ClockInitStructure);USART_Init(USART1,&USART_InitStructure);/*输入输出的中断使能*/USART_ITConfig(USART1,USART_IT_TXE,ENABLE);USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 4 页 -USART_Cmd(USART1,ENABLE);/启动串口使能 USART1 外设while(1)/*USART_SendData(USART1,0X26);/发送数据while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)=RESET)/等待发送结束*/void NVIC_Configuration(void)NVIC_InitTypeDef NVIC_InitStructure;#ifdef VETB_TAB_RAM NVYC_SetVectorTable(NVIC_VectTab_RAM,0 x0);#else NVIC_SetVectorTable(NVIC_VectTab_FLASH,0 x0);#endif/*Enable the USART1 Interrupt*/NVIC_InitStructure.NVIC_IRQChannel=USART1_IRQChannel;/通道设置为串口1 中断(故后面应选择在“void USART1_IRQHandler(void)”开中断)NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=0;/中断占先等级0 NVIC_InitStructure.NVIC_IRQChannelSubPriority=0;/中断响应优先级0 NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;/打开中断NVIC_Init(&NVIC_InitStructure);void RCC_Configuration(void)RCC_DeInit();RCC_HSEConfig(RCC_HSE_ON);HSEStartUpStatus=RCC_WaitForHSEStartUp();if(HSEStartUpStatus=SUCCESS)FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);FLASH_SetLatency(FLASH_Latency_2);RCC_HCLKConfig(RCC_SYSCLK_Div1);RCC_PCLK2Config(RCC_HCLK_Div1);/串口波特率的确定RCC_PCLK1Config(RCC_HCLK_Div2);RCC_PLLConfig(RCC_PLLSource_HSE_Div1,RCC_PLLMul_9);RCC_PLLCmd(ENABLE);while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY=RESET)RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 4 页 -while(RCC_GetSYSCLKSource()!=0 x08)RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOE|RCC_APB2Periph_USART1,ENABLE);/RCC 中打开相应的串口 void GPIO_Configuration(void)GPIO_InitTypeDef GPIO_InitStructure;/GPIO_PinRemapConfig(GPIO_Remap_USART1,ENABLE);/改变指定管脚脚的映射Changes the mapping of the specified pin/*Configure USART1 RTS(PA12)and USART1 Tx(PA9)as alternate function push-pull 根据资料可查得各管脚对应*/GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;/推挽输出GPIO_Init(GPIOA,&GPIO_InitStructure);/*Configure USART2 CTS(PA11)and USART1 Rx(PA10)as input floating*/GPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_IN_FLOATING;GPIO_Init(GPIOA,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1|GPIO_Pin_0|GPIO_Pin_2|GPIO_Pin_3;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode=GPIO_Mode_Out_PP;GPIO_Init(GPIOE,&GPIO_InitStructure);中断函数:(可在 stm32f10 x_.it.c 中调用)void USART1_IRQHandler(void)u8 RX_dat;/定义字符变量if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET)/判断发生接收中断 GPIO_WriteBit(GPIOE,GPIO_Pin_1,(BitAction)0 x01);/LED M RX_dat=(USART_ReceiveData(USART1)&0 x7F);/接收数据,整理除去前两位USART_ClearITPendingBit(USART1,USART_IT_RXNE);/清除中断标志while(USART_GetFlagStatus(USART1,USART_FLAG_RXNE)=RESET)/等待接收结束/USART_ITConfig(USART1,USART_IT_RXNE,DISABLE);/关中断USART_SendData(USART1,RX_dat);/发送数据名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 4 页 -GPIO_WriteBit(GPIOE,GPIO_Pin_2,(BitAction)0 x01);/LED M 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 4 页 -

    注意事项

    本文(2022年完整word版,STMUart串口中断响应、发送接收详细程序 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开