51单片机串口向计算机发送字符串C程序

发布者:ArtisticSoul最新更新时间:2016-09-28 来源: eefocus关键字:51单片机  串口  发送字符串 手机看文章 扫描二维码
随时随地手机看文章
51单片机串口向计算机发送字符串C程序,本布衣实验过的,可以用,串口需有一个232-TTL电平转换
通过串口调试助手可以看到发送字符信息。波特率为9600
#include
#include
//--------------------------------
char *name_month(int n);
void Delay(int x);
void put(char str);
void initUart(void);
void putString(unsigned char const *pstr);//const
//------------------------------
void put(char str)
{
SBUF=str;
while(!TI);
TI=0;

//------------------------------
void initUart(void)
{
  TMOD=0x20;
    SCON=0x50;
    TH1=250;
    TL1=250;   
    TR1=1;
    EA = 1;
  Delay(2);
  putString("Uart init!\n");
}

//--------------------------
void Delay(int dly)
{
  int j,k;
  for (j=0;j   for(k=0;k<125;k++);
}
//---------------------------------
char *name_month(int n)
{
  static char *name[]=
          { 
          "Illegal month\n", 
          "January\n", 
          "February\n", 
          "March\n", 
          "April\n", 
          "May\n", 
          "June\n", 
          "July\n", 
          "August\n", 
          "September\n", 
          "October\n", 
          "November\n", 
          "December\n" 
                };
  return((n<1||n>12) ? name[0]:name[n]);
}
//------------------------------------
void putString(unsigned char const *pstr)//const
{
  while(1)
  {
  if(*pstr=='\0') break;
    put(*pstr++);
  }
}
//--------------------------------------
void main(void)
{
  int i; 
  char *s;
  initUart();
  putString("I come here pointer!\n");
  for (i=1;i<13;i++)
  {
      s=name_month(i);
    while(1)
    {
    if (*s=='\0') break;     
      put(*s++);
    }   
    Delay(1000);
  }
}
关键字:51单片机  串口  发送字符串 引用地址:51单片机串口向计算机发送字符串C程序

上一篇:ICL7135的串行采集方式在单片机中的应用
下一篇:51单片机ADC0832电压测量液晶1602显示的C程序与proteus仿真

推荐阅读最新更新时间:2024-03-16 15:12

51单片机的引脚及各引脚功能介绍
当我们拿到一块MCS-51系列单片机芯片时,看到这么多的引脚,他们都有干什么用的? 8051单片机的引脚图 引脚功能: MCS-51是标准的40引脚双列直插式集成电路芯片,引脚分布请参照----单片机引脚图: l P0.0~P0.7 P0口8位双向口线(在引脚的39~32号端子)。 l P1.0~P1.7 P1口8位双向口线(在引脚的1~8号端子)。 l P2.0~P2.7 P2口8位双向口线(在引脚的21~28号端子)。 l P3.0~P3.7 P2口8位双向口线(在引脚的10~17号端子)。 这4个I/O口具有不完全相同的功能,大家可得学好了,其它书本里虽然有,但写的太深,初学者很难理解,这里都是按我自已的表达
[单片机]
基于AT89C51单片机的便携式数字血压计的设计
引言 目前,由于不科学的饮食习惯以及不健康的生活习惯,导致人们容易患上各种疾病而高血压作为其中的一类疾病,己经严重威胁着现代人的健康。如何及早的检测高血压就成为人们抗击高血压的首要问题。目前的数字血压计亦是多种多样,但大多数不具有自动报数和自主监测功能。本文所设计的便携式数字血压计即是一种操作简单的测压装置,为家庭保健提供了方便。其主动报数及超压监测提酿功能尤其是对于眼睛不好的老人和盲人来说,提供了极大的方便。 2.数字血压计系统设计框图 2.1数字血压计工作原理 本血压计采用示波法测量血压其测压过程与柯氏音法相同,将袖带加压至胧动脉处阻断血管血液,然后缓慢减压,此时血管中而液由于压力发生脉冲示波法即是用仪器来识别从手臂传入袖
[单片机]
基于AT89C<font color='red'>51单片机</font>的便携式数字血压计的设计
51单片机——LCD1602液晶屏 C语言入门编程
LCD1602: 1602液晶也叫1602字符型液晶,它能显示2行字符信息,每行又能显示16个字符。它是一种专门用来显示字母、数字、符号的点阵型液晶模块。它是由若 干个5x7的点阵字符位组成,每个点阵字符位都可以用显示一个字符, 每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此,所以它不能很好的显示图片。 字符代码0x00~0x0F为用户自定义的字符图形RAM(对于5X8点阵的字符,可以存放8组,5X10点阵的字符,存放4组),就是CGRAM了。0x20~0x7F为标准的ASCII码,0xA0~0xFF为日文字符和希腊文字符,其余字符码(0x10~0x1F及0x80~0x9F)没有定义。写入
[单片机]
<font color='red'>51单片机</font>——LCD1602液晶屏 C语言入门编程
51单片机(二十四)—— 独立按键工作原理
按键是单片机应用中必不可少的输入器件,本文我们基于51单片机来介绍独立按键的工作原理。 在我们使用的开发板上,独立按键的电路如下图所示。 在使用51单片机读取按键转态时,将按键连接的单片机接口赋值1(这种方式适合51单片机,但不一定适合其他单片机),如果按键按下,则端口被拉低。因此,通过读取单片机接口的电平状态就可以判断按键是否按下,如果输入时高电平,则按键没有按下;如果输入是低电平,则按键按下。 当按下或松开按键时,由于按键的机械抖动,使信号也会存在抖动。如下图所示。 信号的抖动会造成单片机的误判断。可能造成按下一下按键却判断成按下了多次按键。为了得到正确的结果,要对按键进行去抖。去抖分为硬件去抖和软件去抖两种
[单片机]
<font color='red'>51单片机</font>(二十四)—— 独立按键工作原理
第24章 STM32F429的USART应用之八个串口FIFO实现
24.1 初学者重要提示 学习本章节前,务必优先学习第23章。 串口FIFO的实现跟前面章节按键FIFO的机制是一样的。 本章节比较重要,因为后面的ESP8266,GPS,RS485,GPRS等试验都是建立在这个驱动的基础上实现。 大家自己做的板子,测试串口收发是乱码的话,重点看stm32h7xx_hal_conf.h文件中的HSE_VALUE的大小跟板子上实际晶振大小是否一致,然后再看PLL配置。 CH340/CH341的USB转串口Windows驱动程序的安装包,支持32/64位 Windows 10/8.1/8/7。http://www.armbbs.cn/forum.php?mod=viewthread&t
[单片机]
第24章 STM32F429的USART应用之八个<font color='red'>串口</font>FIFO实现
51单片机简易波形发生器(正弦波 锯齿波 三角波)
下面是51单片机简易波形发生器源程序: #include AT89X52.h #include math.h #define ADDR1 0x2c //MAX5820LEUA sbit key_sin=P1^0; sbit key_tran=P1^2; sbit key_tooth=P1^4; sbit SCL = P2 ^ 0; sbit SDA = P2 ^ 1; unsigned char code sin = //正弦表 { 0x80,0x83,0x86,0x89,0x8d,0x90,0x93,0x96,0x99,0x9c,0x9f,0xa2,0xa5,0xa8,0xab,0xae,
[单片机]
<font color='red'>51单片机</font>简易波形发生器(正弦波 锯齿波 三角波)
基于51单片机的方波发生程序
这是一个最简单的程序,在定时器的控制下由p1.0脚发出500赫兹的方波 要求:6MHz的晶振,P1.0引脚产生500Hz的方波 代码如下: #include reg52.h sbit P1_0=P1^0; void int_X_T() { IE=0x82; TMOD=0x01; TH0=(65536-500)/256; TL0=(65536-500)%256; TR0=1;?? ?? } void int_x() interrupt 1 { TH0=(65536-500)/256; TL0=(65536-500)??%256; P1_0=!P1_0; } void main()?
[单片机]
STM32 IO模拟串口程序
  随着单片机的使用日益频繁,用其作前置机进行采集和通信也常见于各种应用,一般是利用前置机采集各种终端数据后进行处理、存储,再主动或被动上报给管理站。这种情况下下,采集会需要一个串口,上报又需要另一个串口,这就要求单片机具有双串口的功能,但我们知道一般的单片机只提供一个串口,那么另一个串口只能靠程序模拟。   1、串口传输协议   首先,必须要知道串口通讯时数据是怎样传输的?这里以异步传输字符为例子,如下图所示:      一般字符传输都采用:1位起始位,8位数据位,1位停止位,没有校验位 的形式传输,其他形式的这里不讲。串口异步传输在空闲状态时都必须是高电平。第一位传输的是起始位,起始位会将原来空闲时的高电平拉成低电平,起
[单片机]
STM32 IO模拟<font color='red'>串口</font>程序
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved