找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 12903|回复: 5
收起左侧

新手求救!51串口怎么才能发送十进制变量到串口助手啊!!!

[复制链接]
ID:141602 发表于 2016-10-27 21:46 | 显示全部楼层 |阅读模式
新手求救!51串口怎么才能发送十进制变量到串口助手以字符方式显示啊!!!

if(powerflag==1)
                {
                        powerflag=0;  
                        D1=initpower[0];           // initpower[0]存放的为十六进制数,但是变化的  如:D1=0X01;
                        D2=initpower[1];           // initpower[1]存放的为十六进制数,但是变化的  如:D2=0X02;
                        D3=initpower[2];                // initpower[2]存放的为十六进制数,但是变化的 如:D3=0X03;

                        Wh=D1/10*sixfive+D1%10*sixfour+D2/10*sixthree+D2%10*sixtwo+D3/10*sixone+D3%10*sixzero;       
                        //把D1,D2,D3转化为一个是十进制数 (A3 02 01)
                        //转化后为Wh= 0*16^5 + 1*16^4 + 0*16^3 + 2*16^2 + 0*16^1 + 3*16^0  = 66051 ;

                        Whtmp=Wh/1000;                 //将Wh缩小1000倍,  Whtmp = 6.6051
                        WhtmpH=(int)Whtmp;          //WhtmpH存放Whtmp 整数部分 WhtmpH= 6 ;
                        WhtmpL=(Whtmp-WhtmpH)*100;          //WhtmpL存放Whtmp 小数部分 WhtmpH= 6051 ;

                        //怎样才能输出整数部分与小数部分到串口助手以字符方式显示????

                        UART_One_Printf("WhtmpH");           //输出整数整数部分到串口助手????
                        Uart_One_Send(WhtmpH);

                  /*   /////////////////
                        //串口1发送字符串函数
                        void UART_One_Printf(uchar *p)          
                        {     
                                while(* p!='\0')
                                Uart_One_Send(*p++);
                        }


                         //串口1发送一个字符函数
                         void Uart_One_Send(uchar k)       
                        {
                                ES=0;
                                TI=0;
                                SBUF=k;
                                while(!TI);
                                TI=0;
                                ES=1;
                        }  
                        */        /////////////

回复

使用道具 举报

ID:141602 发表于 2016-10-27 21:47 | 显示全部楼层
怎样才能输出整数部分与小数部到串口助手以字符方式显示????
回复

使用道具 举报

ID:138155 发表于 2016-10-28 08:57 | 显示全部楼层
可以做为一个数据一起发送 小数点另外加上去
回复

使用道具 举报

ID:144883 发表于 2016-10-28 10:07 | 显示全部楼层
小数点另加?
回复

使用道具 举报

ID:113415 发表于 2016-10-28 10:53 | 显示全部楼层
   缺少ASCII转换吧?比如你的意图是发到对方,能显示一个“0”,直接发“0”是不行的,应当发送0x30。具体可以查询国际标准信息交换编码表(ASCII)。

评分

参与人数 1黑币 +3 收起 理由
wenzedong + 3 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:111634 发表于 2016-10-28 20:46 | 显示全部楼层
本帖最后由 zl2168 于 2016-10-28 20:47 编辑

实验16  单片机与PC机虚拟串行通信


虚拟串行通信说明   


添加虚拟串口   


下载“串口调试助手”   


电路设计   


程序设计   


Keil调试   


Proteus仿真   


Proteus仿真一下,确认有效。
实验16 与PC机虚拟串行通信.rar (151.41 KB, 下载次数: 47)
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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