📄 www.ourhc.cn.lst
字号:
C51 COMPILER V8.05a WWW_OURHC_CN 06/03/2012 15:38:26 PAGE 1
C51 COMPILER V8.05a, COMPILATION OF MODULE WWW_OURHC_CN
OBJECT MODULE PLACED IN www.ourhc.cn.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE www.ourhc.cn.c BROWSE DEBUG OBJECTEXTEND
line level source
1 /********************************************************************
2 汇诚科技
3
4 实现功能:STC12C5A60S2单片机之双串口通信
5 使用芯片:STC12C5A60S2
6 晶振:11.0592MHZ
7 波特率:9600
8 编译环境:Keil
9 作者:zhangxinchun
10 网站:www.ourhc.cn
11 淘宝店:
12 汇诚科技 http://ourhc.taobao.com
13 郑兴电子直销部 http://shop68451856.taobao.com
14 【声明】此程序仅用于学习与参考,引用请注明版权和作者信息!
15
16 功能 :串口一,串口二,同步发送接收数据(采用中断方式,波特率发生器产生波特率)
17 波特率 :串口一,4800 串口二,57600
18 日期 :11.5.19
19 注意 :下载完程序后请复位系统!!(切记!)
20 *********************************************************************/
21 #include "STC12C5A60S2.h" //库文件
22 #define uchar unsigned char//宏定义无符号字符型
23 #define uint unsigned int //宏定义无符号整型
24 /********************************************************************
25 初始定义
26 *********************************************************************/
27 uchar dat1=0,dat2=0;
28 uchar tab[]={"www.ourhc.cn"};
29 /********************************************************************
30 串口初始化
31 *********************************************************************/
32 void init ()
33 {
34 1 TMOD = 0x20; //定时器1产生波特率
35 1 SCON = 0x50; //方式1,8位数据,波特率可变
36 1 TH1 = TL1 = 0xfa; //波特率 4800
37 1 S2CON = 0x50; //方式1,八位数据,可变波特率
38 1 BRT = 0XFD; //设置波特率9600
39 1 TR1 = 1; //启动定时器产生波特率
40 1 AUXR = 0x10; //启动波特率发生器
41 1
42 1 AUXR |= 0x08; //使能波特率倍速位S2SMOD
43 1 S2CON = 0x50; //8位数据,可变波特率
44 1 BRT = 0xFF; //设定独立波特率发生器重装值
45 1 AUXR &= 0xfb; //独立波特率发生器时钟为Fosc/12,即12T
46 1 AUXR |= 0x10; //启动独立波特率发生器
47 1
48 1 IP = 0x00; //优先级默认
49 1 EA = 1; //开总中断
50 1 ES = 1; //开串口1中断
51 1 IE2 = 0x01; //开串口2中断
52 1 }
53
54 /********************************************************************
55 串口一 发送一个字符
C51 COMPILER V8.05a WWW_OURHC_CN 06/03/2012 15:38:26 PAGE 2
56 *********************************************************************/
57 void uart1_txd(uchar x)
58 {
59 1 SBUF = x;
60 1 }
61 /********************************************************************
62 串口一 发送接收中断函数
63 *********************************************************************/
64 void uart_isr() interrupt 4
65 {
66 1 if( RI ) RI = 0;
67 1 dat1 = SBUF;
68 1 if( TI ) TI = 0;
69 1 }
70 /********************************************************************
71 串口二 发送一个字符
72 *********************************************************************/
73 void uart2_txd(uchar x)
74 {
75 1 S2BUF = x;
76 1 }
77 /********************************************************************
78 串口二 发送接收中断函数
79 *********************************************************************/
80 void uart2_isr() interrupt 8
81 {
82 1 if( S2CON & 0x01 )
83 1 {
84 2 S2CON &= ~0x01;
85 2 dat2 = S2BUF;
86 2 }
87 1 if( S2CON & 0x02 )
88 1 {
89 2 S2CON &= ~0x02;
90 2 }
91 1
92 1 }
93 /********************************************************************
94 延时函数
95 *********************************************************************/
96
97 void delay ( uint t )
98 {
99 1 uint i,j;
100 1 for( i=0; i<t; i++)
101 1 for( j=0; j<250; j++);
102 1 }
103
104 /********************************************************************
105 主函数
106 *********************************************************************/
107 void main()
108 {
109 1 uchar i;
110 1 uchar *p;
111 1 init();
112 1 p=tab;
113 1 for(i=0;i<13;i++)
114 1 {
115 2 uart1_txd(p[i]);
116 2 uart2_txd(p[i]);
117 2 delay(150);
C51 COMPILER V8.05a WWW_OURHC_CN 06/03/2012 15:38:26 PAGE 3
118 2 }
119 1 while(1)
120 1 {
121 2 P0=dat1;
122 2 delay(500);
123 2 P0=dat2;
124 2 delay(500);
125 2 }
126 1 }
127 /********************************************************************
128 结束
129 *********************************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 212 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 15 4
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -