单片机发送电脑_单片机52 串口由串口由单片机发送到电脑的代码 - CSDN
精华内容
参与话题
  • 51单片机向PC电脑发送汉字的方法

    千次阅读 2013-05-14 15:01:11
    单片机STC89C52.  5.晶振11.0592M  操作步骤:  1.设置TMOD设置波特率和定时器1的工作方式.  2.设置定时器的初始值.  3.设置串行口工作方式.  4.设置波特率不加倍.


    操作条件:

      1.XP操作系统.

      2.XP的超级终端显示.

      3.WJ-V4.0开发板.

      4.单片机STC89C52.

      5.晶振11.0592M

      操作步骤:

      1.设置TMOD设置波特率和定时器1的工作方式.

      2.设置定时器的初始值.

      3.设置串行口工作方式.

      4.设置波特率不加倍.

      5.打开TR1允许发送.

      6.启动定时器.
    生活信息分类目录Hzomd4t
      7.串行中断打开.

      8.打开EA中断.

      现在发上源代码:

      #include<AT89X52.H>

      #define uchar unsigned char

      #define uint unsigned int

      bit FS_Bit = 0; //发送标志位

      code uchar TEXT0[] = "********************************
    n";

      code uchar TEXT1[] = "电子爱好者社区欢迎您!
    n";

    n";

      code uchar TEXT3[] = "51免费开发板PCB赠送!
    n";

    n";

      code uchar TEXT5[] = "********************************



    n";

      void Delay_Ms(uint i); //延时函数

      void Uart_Char(uchar Value); //发送一个数据

      void Prints(uchar *Value); //发送一组数据

      void main(void)

      {

      TMOD = 0x20; //设置波特率为9600和定时器1工作方式

      TL1 = 0xFD; //设置初始值

      TH1 = 0xFD;

      SCON = 0x50; //设置串行口工作方式

      PCON = 0x00;

      TR1 = 1; //允许发送

      ET0 = 1; //启动定时器

      ES = 1; //串行中断允许

      EA = 1;

      while(1)

      {

      Prints(TEXT0); //发送数据

      Prints(TEXT1);

      Prints(TEXT2);

      Prints(TEXT3);

      Prints(TEXT4);

      Prints(TEXT5);

      Delay_Ms(60000); //延时

      }

      }

      void INIT_Uart(void) interrupt 4

      {

      if(RI) //如果收到数据

      {

      RI = 0;

      }

      else

      {

      TI = 0; //发送完一个数据

      FS_Bit = 0; //清标志位

      }

      }

      void Uart_Char(uchar Value)

      {

      SBUF = Value; //发送数据

      FS_Bit = 1; //设置发送标志位

      while(FS_Bit);

      }

      void Prints(uchar *Value)

      {

      while((*Value) != '') //如果没有发送完毕

      {

      Uart_Char(*Value); //发送一位数据

      Value++; //指针指向下一位数据

      }

      }

      void Delay_Ms(uint i)

      {

      while(--i );

      }

    展开全文
  • 电脑单片机发数据格式问题总结

    千次阅读 2017-10-19 10:55:06
    2.电脑发字符串到单片机中,那单片机接收到数据形式是字符,也就是ASCALL码。 3.电脑个数据13,那就是看成字符1和字符3,写在一起“13”发给单片机单片机接收到字符(char) 1和3,想还原成整形13必须使用'1'...

    1.串口精灵设置十六进制显示,每个字节就是单片机串口SBUF依次收到的数据。

    2.电脑发字符串到单片机中,那单片机接收到数据形式是字符,也就是ASCALL码。

    3.电脑给发个数据13,那就是看成字符1和字符3,写在一起“13”发给单片机。

    单片机接收到字符(char) 1和3,想还原成整形13必须使用'1'对应内容是0x31,

    ‘3’对应是0x33进行换算。这种情况,直接电脑端发送二进制数0x0c就行。

    也就是说单片机程序必须要有对字符的处理程序,本质上串口工具都有此处理程序。

    4.发字符串,收到的就是字符串,至于显示成什么样的,都可以。电脑收到单片机

    发的数据是以10进制显示的,这不是必然的,看上位机接收程序的显示方式如何处理。

    电脑向单片机发送0x**,其实是字符串,不是16进制数,单片机接收到还需要将字符
    串转换成数值。



    展开全文
  • 【C51单片机】PC机控制单片机

    千次阅读 2019-09-29 20:32:29
    单片机与PC机通过RS232相连,编写一个异步...③PC机向单片机发送字符并显示在1602液晶显示器上,也可命令删除字符、换行、清除显示 ④在单片机一端,点击矩阵按键,并将按键序号发送给PC机 PROTEUS中设计的单片...

    单片机与PC机通过RS232相连,编写一个异步串行口通信程序,实现单片机与PC机上的串口助手之间的通信。具体要求如下:

    ①PC机向单片机发送命令打开或关闭指定LED灯

    ②PC机向单片机发送命令启动或停止蜂鸣器播放音乐

    ③PC机向单片机发送字符并显示在1602液晶显示器上,也可发命令删除字符、换行、清除显示

    ④在单片机一端,点击矩阵按键,并将按键序号发送给PC机


    PROTEUS中设计的单片机系统电路图:

    程序流程:

     辅助软件:

                    1.虚拟串口

                    2.串口调试助手

    程序:

     main.c

    #include <config.h>
    #include<1602.h>
    #include<music.h>
    #include<uart.h>
    #include<keypad4_3.h>
    
    u8 str[]="123456789*0#";
    u8 led=0xff;
    void delay_ms(u16 x)//毫秒延时函数
    {u16 i,j;
    for(i=0;i<x;i++)
        for(j=0;j<115;j++);
    }
    void main (void)
    { 
    	u8 t;
    	u8 key;
    	u8 led=0xff;
    	LCD1602_Init();
    	LCD1602pos(0,0);
      	uart_init(9600);
      	P0=led;
    
      	while(1)
      	{
    		key=KeyScanf4_3();
    		if(key!=12)
    		{
    			SBUF=str[key];
        		while(!TI);//等待发送完
        		TI=0;//清除发送结束标志
    			LCD1602disch(str[key]);
    		}
        	if(RI)//接收上位机数据
        	{	
    			RI=0;//清接收标志
            	t=SBUF;	//接收上位机发来的数据
    			if((t>='a'&&t<='z')||(t>='A'&&t<='Z'))
    			{	
    				if(t=='C'){LCD1602_clear();}
    				if(t=='D'){LCD1602_backspace();}
    				if(t=='H'){LCD1602pos(1,0);}
    				if(t=='S'){PlayMusic();}
    				if(t!='C'&&t!='D'&&t!='H'&&t!='S') {LCD1602disch(t);}
    			}
    			else
    			{
    				t=t-'0';// 获取上位机按键码
    				led=led^(1<<t);//按键对应位取反
    				P0=led;	//更新单片机显示
    				uart_send(led); //发送显示状态给上位机
    			}	
        	}
      	}  
    }
    

    仿真效果:

     1.发送数字5,第6个led亮

    2.发送字符

    3.矩阵按键

     

     

     


     【下载】如需完整的程序以及仿真电路请这里下载

    展开全文
  • 现在需要做一个篮球计分器 想要把比分上传到电脑

    现在需要做一个篮球计分器

    想要把比分上传到电脑上,所以要用到串口助手

    请问串口助手和单片机应该应该怎么连接呢?

    展开全文
  • 将摄像头与单片机的串口相连,连接好WiFi模块,将各个模块初始化完成。 连接电脑与WiFi模块,最后使用UDP协议,因为TCP协议有调错功能,会影响数据的传送,而UDP则没有,可以实现实时数据传输,就算有错误也会跳过...
  • 1、功能描述 1.单片机与PC机通过RS232相连,编写一个异步...③PC机向单片机发送字符并显示在1602液晶显示器上,也可命令删除字符、换行、清除显示 ④在单片机一端,点击矩阵按键,并将按键序号发送给PC机 2、P...
  • 上位机发送指令给单片机 单片机完成相应指令动作,很好的实现了人机交互功能
  • *pc端使用串口调试工具发送 *usb转232串口小板连接51单片机 */ #include<reg51.h> #include<intrins.h> //--定义使用的IO--// #define GPIO_DIG P0 //使用138译码器接八个数码管 sbit LSA=P2^2; sbit ...
  • 编译环境:keil c51 代码功能:51单片机通过串口向电脑端Python发送一个16进制数 注:代码内包含工程和代码文件
  • matlab解析单片机发送数据的一种简单方法 经常使用单片机的同学,应该会经常面对这样一种情况,那就是对单片机采回的某些数据绘图、再处理等应用。大家经常用的两款软件,比如匿名的地面站,它通过固定的数据通讯...
  • 单片机实现接收从电脑发送过来的字符串的方法【转】 qcmc发表于-2011-6-23 0:52:00 很多朋友会碰到这个问题:单片机接收从电脑串口发送出来的一串字符串,却只能接收到第一个字符,其他的都丢失了...
  • 单片机串口通信与电脑

    千次阅读 2018-08-06 18:33:32
    //调用51单片机的头文件 //--------------------------------------- //串口接收寄存器设置 unsigned char USARTbuf; //设置8位的unsigend char型寄存器用来暂存串口接收内容 void main(void) //主函数,单...
  • 这是我学习PIC单片机调试过程中尝试的PIC单片机串口发送实验,当按键RB0有按下时,num自加,同时RC0端口接的LED翻转,并把num的数传给发送寄存器发送电脑端,波特率为9600,4M晶振. 代码如下: #include&amp;lt;pic...
  • 注:串口发送数据(USART)是STM32调试中经常使用的功能,但是电脑USB的电平标准与串口所使用的TTL标准不同,所以需要一条USB转TTL线来完成它们之间的通信。本文介绍使用USB转TTL线完成单片机电脑通信的方法。
  •   #include #define uchar unsigned char #define uint unsigned int uchar flag,i; uchar rec[3]={0}; void delay() {  int i,j;  for(i=0;i  for(j=0;j } void init() ... TH1=0xfd
  • 最近弄一个小东西的时候,需要将AD采集的数据,通过串口发送上位机。由于还得在下位机部分显示出来,所以这个AD采集的数据转换之后发送到串口,比较容易...单片机将浮点数从串口发送出去: 1.http://www.51hei.com/bbs
  • 上位机向单片机发送一串字符串,存入一个数组缓冲区RX1_Buffer[COM_RX1_Lenth]中,接下来单片机提取数组缓冲区中的一部分字符串,将该字符串转化为整形数据,接着将整形数据转化为十六进制数通过串口发送给上位机,...
  • 51单片机串口通信的发送与接收(转)

    万次阅读 多人点赞 2013-02-20 15:01:56
    51单片机的串口,是个全双工的串口,发送数据的同时,还可以接收数据。 当串行发送完毕后,将在标志位 TI 置 1,同样,当收到了数据后,也会在 RI 置 1。 无论 RI 或 TI 出现了 1,只要串口中断处于开放状态,...
1 2 3 4 5 ... 20
收藏数 8,025
精华内容 3,210
关键字:

单片机发送电脑