/********************************************************************

函数功能:往串口发送一字节数据(可通过超级终端或者串口调试助手显示出来,

 超级终端波特率选为9600)。每按下一次S2键,松开后均会在超级终端

 上显示一串字母"abcdefg哈哈"。

入口參数:d: 要发送的字节数据。

********************************************************************/









#include <reg52.h>

#define jingzhen     11059200UL /*使用22.1184M晶体*/
 

#define botelv   9600UL     /*波特率定义为9600*/

unsigned char zifuchuan[]="abcdefg哈哈"; //待显示字符。

volatile unsigned char sending;

sbit s2=P3^4;





void delay(unsigned char i)

{

unsigned char j,k;

for(j=i;j>0;j--)

for(k=90;k>0;k--);

}

void init(void) //串口初始化

{

 EA=0; //临时关闭中断

 TMOD&=0x0F;  //定时器1模式控制在高4位

 TMOD|=0x20;    //定时器1工作在模式2,自己主动重装模式

 SCON=0x50;     //串口工作在模式1

 TH1=256-jingzhen/(botelv*12*16);  //计算定时器重装值

 TL1=256-jingzhen/(botelv*12*16);

 PCON|=0x80;    //串口波特率加倍

 ES=1;         //串行中断同意

 TR1=1;        //启动定时器1

 REN=1;        //同意接收 

 EA=1;         //同意中断

}





void send(unsigned char d)  //发送一个字节的数据,形參d即为待发送数据。

{

 

 SBUF=d; //将数据写入到串口缓冲

 sending=1; //设置发送标志

 while(sending); //等待发送完成

}





void sendc(unsigned char * pd)

{

 while((*pd)!='\0') //发送字符串。直到遇到0才结束

 {

  send(*pd); //发送一个字符

  pd++;  //移动到下一个字符

 }

}





void main()

{

init();

while(1)

{

if(s2==0)

{

delay(20);

if(!s2)

{

while(!s2);
  

sendc(zifuchuan);

}

}

}

}





void uart(void) interrupt 4 //串口发送中断

{

 if(RI)    //收到数据

 {

  RI=0;   //清中断请求

 }

 else      //发送完一字节数据

 {

  TI=0;

  sending=0;  //清正在发送标志

 }

}

key 串口的更多相关文章

  1. [连载]《C#通讯(串口和网络)框架的设计与实现》- 8.总体控制器的设计

    目       录 第八章           总体控制器的设计... 2 8.1           总控制器的职能... 2 8.2           组装和释放部件... 3 8.3      ...

  2. [连载]《C#通讯(串口和网络)框架的设计与实现》- 6.通讯控制器的设计

    目       录 第六章           通讯控制器的设计... 2 6.1           控制器接口... 2 6.2           串口控制器... 3 6.3          ...

  3. FPGA与simulink联合实时环路系列——实验三 按键key

    实验三 按键key 实验内容 在FPGA的实验中,经常涉及到按键的使用,按键是必不可少的人机交互的器件之一,在这些实验中,有时将按键的键值读取显示到数码管.LCD或者是通过串口传送到PC的串口助手上进 ...

  4. [连载]《C#通讯(串口和网络)框架的设计与实现》- 5.串口和网络统一IO设计

    目       录 第五章           串口和网络统一IO设计... 2 5.1           统一IO接口... 2 5.1.1    串口IO.. 4 5.1.2    网络IO.. ...

  5. [连载]《C#通讯(串口和网络)框架的设计与实现》-4.设备驱动管理器的设计

    目       录 第四章           设备驱动管理器的设计... 2 4.1           接口定义... 2 4.2           设备容器... 7 4.3          ...

  6. [连载]《C#通讯(串口和网络)框架的设计与实现》-3.设备驱动的设计

    目       录 第三章           设备驱动的设计... 2 3.1           初始化设备... 4 3.2           运行设备接口设计... 4 3.3        ...

  7. 【图像处理】【SEED-VPM】4.串口调试信息

    —————————————————————————————————————————————————————————————————————— 串口返回正确的信息 Booting PSP Boot Lo ...

  8. Mac下的串口通信-ORSSerialPort

    ================================2015/11/05======================================= 最近在工作中遇到有关Mac下串口通信 ...

  9. 将JZ2440的调试串口换成com2

    众所周知JZ2440 V3很小巧,精致.今天单就JZ2440的串口来讨论一些问题.我们在用串口进行调试的时候,需要用JZ2440自带的一根USB线连接电脑USB口和开发板的USB-com1口.先来看一 ...

随机推荐

  1. xp下Oracle数据库导入SQLServer数据库数据

    Oracle数据库利用ODBC数据源.PLSQL Developer导入SQLServer数据库数据 操作: 建立数据源:控制面板→管理工具→数据源 (ODBC) 打开,界面如下: 点击添加,界面如下 ...

  2. C++开源代码项目汇总

    Google的C++开源代码项目 v8  -  V8 JavaScript EngineV8 是 Google 的开源 JavaScript 引擎.V8 采用 C++ 编写,可在谷歌浏览器(来自 Go ...

  3. (三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)

    文章来源:http://www.cnblogs.com/smyhvae/p/4006009.html 一.GET和POST的对比: 在漫长的时间当中,其他的方法逐渐的退出了历史舞台,最常用的只剩下GE ...

  4. 中科燕园GIS外包----机场project地理信息系统EGIS

    对于大型机场建设project,不管project建设过程中.还是project建设完毕后.进入执行和维护阶段.必然要产生和使用到大量的各式各样的信息资料,包含project项目过程管理控制类文档,p ...

  5. ios 正則表達式替换

    1. 不可变字符串   (content 是不可变) NSRegularExpression *regularExpression = [NSRegularExpression regularExpr ...

  6. 基于DSP的疲劳驾驶检测系统的研究

    原地址:http://www.chinaaet.com/article/index.aspx?id=114534 关键词:疲劳检测DSP亮瞳效应PERCLOS 摘  要: 针对汽车驾驶员疲劳驾驶检测的 ...

  7. java Process在windows的使用汇总(转)

    最常用的是ant(java工程中流行),maven,及通用的exec(只要有shell脚本如.sh,.bat,.exe,.cmd等).而其实前两者不容易出错,后者却遇到了以下问题:Caused by: ...

  8. 为什么 string.find()返回值是-1

    之前好像在哪里见到过这个问题,时间有点久,想不起来了,今天写字符串又碰到这个问题,书上给出的定义是当string.find()没有找到时返回的是一个非常大的值,网上有人说是-1,两种说法都对,由于整数 ...

  9. hdu4105  Electric wave

    Electric wave Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...

  10. WebSocket聊天室demo

    根据Socket异步聊天室修改成WebSocket聊天室 WebSocket特别的地方是 握手和消息内容的编码.解码(添加了ServerHelper协助处理) ServerHelper: using ...