微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 谁能看看为什么protues仿真结果中virtual terminal显示的数字和数组不同

谁能看看为什么protues仿真结果中virtual terminal显示的数字和数组不同

时间:10-02 整理:3721RD 点击:

谁能看看为什么protues仿真结果中virtual terminal显示的数字和数据SZ[10]={0XA0,0X0B,0X39,0X0A,0X36,0X80,0X00,0X00,0X00,0X00};中的不一样啊。
程序如下:
#include<reg51.h>
#define  TIMEth    250  //9600Hz,11.0592MHz
#define uint unsigned int
#define uchar unsigned char
unsigned char code SZ[10]={0XA0,0X0B,0X39,0X0A,0X36,0X80,0X00,0X00,0X00,0X00};
sbit DATA=P3^1; //向液晶输出串行数据
sbit p=PSW^0;     /* p位定义为PSW 寄存器的第0位,即奇偶校验位*/
void Delay10ms(unsigned int c);   //误差 0us
void csh();
void Delay200ms (void)                         /* 延时大约200ms函数*/
        {        unsigned char m,n;
                for(m=0;m<250;m++);
                for(n=0;n<250;n++);
        }
void csh(void)
{
        PCON=0x00;          //波特率不加倍
        TMOD=0x20;
        TCON=0x40;
        SCON=0xC0;//方式1只发送,不接收*D0
    TH1=0XFD;                //计数器初始值设置,
        TL1=0XFD;
        TR1=1;                //打开计数器
}
void main()
{
unsigned char i;
csh();
while(1)                        /*循环*/
{
for(i=0;i<10;i++)        /*发送10次码*/
                {
                send(SZ);                /*发送数据*/
                Delay200ms ();                /*每隔500ms发送一次数据*/
                }
                }
}
for(i=0; i<10; i++)
                {
                        SBUF =SZ;   //将要发送的数据放入到发送寄存器
                        while(TI==0);                  //等待发送数据完成
                        TI=0;                          //清除发送完成标志位
                }
                Delay10ms(50);                  //延时一下再发
                while(1);
                }            
}


都没看到send函数,谁知道结果,波特率设置对吗

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top