?? 51 c
字號:
C51 COMPILER V7.06 瞋蒧200MS_講_ 05/15/2010 23:50:12 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE 瞋蒧200MS_講_
OBJECT MODULE PLACED IN .\obj\產(chǎn)生200mS方波.obj
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE 產(chǎn)生200mS方波.c BROWSE DEBUG OBJECTEXTEND PRINT(.\obj\產(chǎn)生200mS方波.lst) OB
-JECT(.\obj\產(chǎn)生200mS方波.obj)
stmt level source
1 /*-----------------------------------------------
2 名稱:定時器0
3 論壇:www.doflye.net
4 編寫:shifang
5 日期:2009.5
6 修改:無
7 內(nèi)容:通過定時產(chǎn)生200mS方波
8 ------------------------------------------------*/
9 #include<reg52.h> //包含頭文件,一般情況不需要改動,頭文件包含特殊功能寄存器的定義
10
11 sbit OUT=P1^2; //定義OUT輸出端口
12
13 /*------------------------------------------------
14 定時器初始化子程序
15 ------------------------------------------------*/
16 void Init_Timer0(void)
17 {
18 1 TMOD |= 0x01; //使用模式1,16位定時器,使用"|"符號可以在使用多個定時器時不受影響
19 1 //TH0=0x00; //給定初值,這里使用定時器最大值從0開始計數(shù)一直到65535溢出
20 1 //TL0=0x00;
21 1 EA=1; //總中斷打開
22 1 ET0=1; //定時器中斷打開
23 1 TR0=1; //定時器開關(guān)打開
24 1 }
25 /*------------------------------------------------
26 主程序
27 ------------------------------------------------*/
28 main()
29 {
30 1 Init_Timer0();
31 1 while(1);
32 1 }
33
34 /*------------------------------------------------
35 定時器中斷子程序
36 ------------------------------------------------*/
37 void Timer0_isr(void) interrupt 1 using 1
38 {
39 1 static unsigned char i;
40 1 TH0=(65536-10000)/256; //重新賦值 12M晶振計算,指令周期1uS,200mS方波半個周期100mS,由于定時器最大值65
-536 即65.536ms 所以
41 1 TL0=(65536-10000)*256; //直接定時器不夠用,需要用循環(huán)處理,定時10ms,然后循環(huán)10次后輸出 10x10=100m
-s
42 1
43 1 i++;
44 1 if(i==11)
45 1 {
46 2 i=0;
47 2 OUT=~OUT; //用示波器可看到方波輸出
48 2 }
49 1
50 1 }
C51 COMPILER V7.06 瞋蒧200MS_講_ 05/15/2010 23:50:12 PAGE 2
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 42 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -