你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

求助大侠,stm32串口通讯实现简单的计算

[复制链接]
袁伟康1993 提问时间:2013-10-26 23:16 /
求大虾帮助啊,急急急啊,调了3天了,STM32串口通讯实现简单的计算功能,还是调不出,我的配置都正确了,下面是我的it.c里的中断服务函数
#include "stm32f10x_it.h"
#include"stdio.h"
#include "string.h"

static  int j=0;
void USART1_IRQHandler(void)
{
        int i=1,k,m,n=0,index=0;
        
           char str[6]="";
           if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)// 如果是串口接收中断
        {        
                USART_ClearITPendingBit(USART1,USART_IT_RXNE);//清除USARTx的中断待处理位
                USART_ClearFlag(USART1,USART_FLAG_TC);  //清除标志位

                if(USART_ReceiveData(USART1)!=' ')
                {
                        str[j]=USART_ReceiveData(USART1);        // 将接收到的字节发送出去
                        j++;        
                }
                if(USART_ReceiveData(USART1)==' ')
                {
                        m=strlen(str);
<span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; letter-spacing: normal; display: inline !important; font: 14px/21px Tahoma, 'Microsoft Yahei', Simsun; white-space: normal; orphans: 2; float: none; color: rgb(68,68,68); word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">                        for(j=0;j
收藏 评论1 发布时间:2013-10-26 23:16

举报

1个回答
废鱼 回答时间:2013-10-29 09:01:35

RE:求助大侠,stm32串口通讯实现简单的计算

USART_ReceiveData(USART1)只能用1次,应该是先读取:
ch=USART_ReceiveData(USART1);然后对ch进行判断处理。
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版