OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2322|回复: 8

串口中断

[复制链接]

22

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
378
金钱
378
注册时间
2018-7-16
在线时间
58 小时
发表于 2018-10-6 11:07:10 | 显示全部楼层 |阅读模式
#include "stm32f10x.h"

void My_USART_Init(void)
{
                GPIO_InitTypeDef GPIO_InitStruct;
          USART_InitTypeDef USART_InitStruct;
          NVIC_InitTypeDef NVIC_InitStruct;
       
                RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
          RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
                GPIO_InitStruct.GPIO_Mode=GPIO_Mode_AF_PP;
          GPIO_InitStruct.GPIO_Pin=GPIO_Pin_9;
          GPIO_InitStruct.GPIO_Speed=GPIO_Speed_10MHz;
          GPIO_Init(GPIOA,&GPIO_InitStruct);
       
          GPIO_InitStruct.GPIO_Mode=GPIO_Mode_IN_FLOATING;
          GPIO_InitStruct.GPIO_Pin=GPIO_Pin_10;
          GPIO_InitStruct.GPIO_Speed=GPIO_Speed_10MHz;
          GPIO_Init(GPIOA,&GPIO_InitStruct);
       
          USART_InitStruct.USART_BaudRate=115200;
          USART_InitStruct.USART_HardwareFlowControl=USART_HardwareFlowControl_None;
          USART_InitStruct.USART_Mode=USART_Mode_Tx|USART_Mode_Rx;
          USART_InitStruct.USART_Parity=USART_Parity_No;
          USART_InitStruct.USART_StopBits=USART_StopBits_1;
          USART_InitStruct.USART_WordLength=USART_WordLength_8b;
          USART_Init(USART1,&USART_InitStruct);
          
                USART_Cmd(USART1,ENABLE);
               
                USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);//开启接收中断
               
                NVIC_InitStruct.NVIC_IRQChannel=USART1_IRQn;
                NVIC_InitStruct.NVIC_IRQChannelCmd=ENABLE;
                NVIC_InitStruct.NVIC_IRQChannelPreemptionPriority=2;
                NVIC_InitStruct.NVIC_IRQChannelSubPriority=2;
                NVIC_Init(&NVIC_InitStruct);
               
               
               
}

void USART1_IRQHander(void)
{
                u8 res;
                if(USART_GetITStatus(USART1,USART_IT_RXNE))
                {
                                res=USART_ReceiveData(USART1);
                          USART_SendData(USART1,res);
                }
               
}

int main(void)
{       
         
                NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
          My_USART_Init();
          while(1);
}
这是我跟原子PPT的步骤写的,但是不能用,和原子的源程序对比,也没检查出啥错误,希望大神帮忙看下,感谢。

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-10-6 13:23:19 | 显示全部楼层
本帖最后由 275891381 于 2018-10-6 13:27 编辑

其实说实话,你一句传不了,据我所知很多人都不爱回答了,自己都没有一颗分享的心,就是别人帮你解决你学会了,你对后来人一点用处都没有,你根本不会分享你的经验。不知道是上传不了还是属于机密,属于机密的话,串口都没搞定,别的能有啥隐私呢,求问还是坦诚相对点好。就当你权限不够传不了吧,把测试过你的代码的这个工程给你吧
测试.rar (258 KB, 下载次数: 31)
回复 支持 反对

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-10-6 12:52:26 | 显示全部楼层
看着没问题,也给你试了能用,不过中断配置还是最好放在使能前面吧
回复 支持 反对

使用道具 举报

22

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
378
金钱
378
注册时间
2018-7-16
在线时间
58 小时
 楼主| 发表于 2018-10-6 12:56:14 | 显示全部楼层
275891381 发表于 2018-10-6 12:52
看着没问题,也给你试了能用,不过中断配置还是最好放在使能前面吧

我的就是不能使用,不知道出了什么问题。谢谢了
回复 支持 反对

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-10-6 12:58:54 | 显示全部楼层
wgb123 发表于 2018-10-6 12:56
我的就是不能使用,不知道出了什么问题。谢谢了

你把你的工程传上来吧,这部分代码没问题
回复 支持 反对

使用道具 举报

22

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
378
金钱
378
注册时间
2018-7-16
在线时间
58 小时
 楼主| 发表于 2018-10-6 13:08:21 | 显示全部楼层
275891381 发表于 2018-10-6 12:58
你把你的工程传上来吧,这部分代码没问题

那个传不了
回复 支持 反对

使用道具 举报

51

主题

2166

帖子

2

精华

论坛元老

Rank: 8Rank: 8

积分
10653
金钱
10653
注册时间
2017-4-14
在线时间
2780 小时
发表于 2018-10-6 13:10:13 | 显示全部楼层

那就没办法了,你在研究研究吧,串口这部分没问题
回复 支持 反对

使用道具 举报

22

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
378
金钱
378
注册时间
2018-7-16
在线时间
58 小时
 楼主| 发表于 2018-10-6 13:12:57 | 显示全部楼层
275891381 发表于 2018-10-6 13:10
那就没办法了,你在研究研究吧,串口这部分没问题

嗯嗯,谢谢了
回复 支持 反对

使用道具 举报

22

主题

95

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
378
金钱
378
注册时间
2018-7-16
在线时间
58 小时
 楼主| 发表于 2018-10-6 13:28:01 | 显示全部楼层
275891381 发表于 2018-10-6 13:23
其实说实话,你一句传不了,据我所知很多人都不爱回答了,自己都没有一颗分享的心,就是别人帮你解决你学 ...

我是重新编辑这个帖子,上传时显示不支持此类文件上传。谢谢了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-8 00:46

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表