用C语言编写单片机上计算器程序遇到问题
目的是通过串口输入100以内任意两个数,进行加法运算后通过串口输出结果。我遇到两个问题:第一,如何输入两位数;第二,加法运算的时候是按照ASCII码来计算的,比如我输入1...
目的是通过串口输入100以内任意两个数,进行加法运算后通过串口输出结果。我遇到两个问题:第一,如何输入两位数;第二,加法运算的时候是按照ASCII码来计算的,比如我输入1和2,ASCII码分别是49和50,计算结果是99,输出的时候也按照ASCII码输出看到的结果就变成了c,求解。希望能提供下程序代码。特别声明下,我想做2个2位数的加法运算,但是SBUF变量是八位的,比如我输第一个两位数33,通过助手传入单片机后,单片机误认为是传了两次1位的数字,并以ASCII码的形式相加。很是苦恼。
展开
展开全部
可以定义一个缓冲区 将收过来的数据(上位机的串口与单片机必须进行ascii转换,比如0x31就是数据1.)传入缓冲区,然后进行数据计算。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以换个助手,比如串口调试器,输入什么就是什么,不会转为ASCII码,这样就方便多了,要不可以在PC上自己用MFC的串口控件去实现一个串口驱动程序,这个简单,网上能搜到很多教程。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1 设计上位机和下位机的通讯协议
2
0 = '0' - '0'
1 = '1' - '0'
2
0 = '0' - '0'
1 = '1' - '0'
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询