网站大量收购独家精品文档,联系QQ:2885784924

STC串口1程和STC串口2程序.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STC串口1程和STC串口2程序

/****************************************************************************** * Filename: STC串口2程序 * Prozessor: stc12c5a32ad * Compiler: Keil Version 7.20 * Author: WangHongQiang * Date: 2011-1-18 ********************************************************************************/ #include reg52.h #include intrins.h #define S2RI 0x01 //S2CON.1 #define S2TI 0x02 //S2CON.2 #define S2RB8 0x04 //S2CON.3 #define S2TB8 0x08 //S2CON.4 typedef unsigned int uint; typedef unsigned char uchar; sfr P1M1 = 0x91; sfr P1M0 = 0x92; sfr P4 = 0xC0; sfr WDT_CONTR = 0xE1; sfr AUXR = 0x8E; //功能块 分频设置 sfr S2CON = 0x9A; //串口2功能寄存器 sfr S2BUF = 0x9B; //串口2缓冲器 sfr BRT = 0x9C; //波特率载入地址 sfr IE2 = 0xAF; //串口中断位,最低位 sfr IP2 = 0xB5; //低位 sfr IP2H = 0xB6; //串口中断优先级 寄存器高位 sfr IPH = 0xB7; //中断优先级高位 sfr CCON =0xD8; bit busy = 0; void DelayMs(unsigned int con) { int j; do{ j=723; while(j) { j--; } }while(--con); } void Delay2Us(unsigned int con) { do{ _nop_();_nop_();_nop_(); }while(--con); } /* 发送一个字符 */ void send_char_com2(uchar ch) { while (busy) {} S2BUF = ch; busy = 1; } /* 串口中断 */ void seria2() interrupt 8 using 3 { uchar lcv_ch; if (S2CON S2RI) { S2CON = ~S2RI; lcv_ch = S2BUF; send_char_com2(lcv_ch); //收到的数据 发送回去 } if (S2CON S2TI) { S2CON = ~S2TI; busy = 0; } } void Init(void) //开机初始化 { P0 = 0xff; P1 = 0xff; P2 = 0xff; P3 = 0xff; P4 = 0xff; P1M0 = 0; P1M1 = 0; /* 串口初始化 */ S2CON = 0x40; //模式1 BRT = 0xFC; //9600 AUXR = 0x10; //Bit1使用独立的波特率发生器 EA = 1; IE2 = 0x01; } int main() {

文档评论(0)

pab547 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档