main.lst

来自「源码 : KIEL C 单片机 : C8051F320 功能 : U盘 (6」· LST 代码 · 共 179 行

LST
179
字号
C51 COMPILER V6.12  MAIN                                                                   08/20/2006 21:10:48 PAGE 1   


C51 COMPILER V6.12, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\keil\C51\BIN\c51.exe main.c DB OE

stmt level    source

*** WARNING C500 IN LINE 1 OF MAIN.C: MISSING DEVICE (SECURITY KEY NOT FOUND)
   1          
   2          //头文件
   3          /////////////////////////////
   4          #include "c8051F320.h"
   5          #include "stdio.h"
   6          #include "intrins.h"
   7          #include "Usb_FunDec.h"
   8          #include "Usb_Parameter.h"
   9          #include "Usb_Register.h"
  10          #include "Usb_Request.h"
  11          ///////////////////////////////////////////////////////////////////////////////////////
  12          // 16-bit SFR declarations
  13          sfr16 DP       = 0x82;                 	// data pointer
  14          sfr16 TMR2RL   = 0xca;                 	// Timer2 reload
  15          sfr16 TMR2     = 0xcc;                 	// Timer2 counter
  16          sfr16 TMR3     = 0x94;                 	// Timer3 counter
  17          sfr16 TMR3RL   = 0x92;                 	// Timer3 reload
  18          sfr16 PCA0CP1  = 0xe9;                 	// PCA0 Module 1 Capture/Compare
  19          sfr16 PCA0CP2  = 0xeb;                 	// PCA0 Module 2 Capture/Compare
  20          sfr16 PCA0CP3  = 0xed;                 	// PCA0 Module 3 Capture/Compare
  21          sfr16 PCA0CP4  = 0xfd;                 	// PCA0 Module 4 Capture/Compare
  22          sfr16 PCA0CP0  = 0xfb;                 	// PCA0 Module 0 Capture/Compare
  23          sfr16 PCA0     = 0xf9;                 	// PCA0 counter
  24          ////////////////////////////////////////////////////////////////////////////////////////
  25          //宏定义
  26          #define System_Clock 12000000		   	//系统时钟
  27          #define Baud_Rate    9600			   	//串口波特率
  28          ////////////////////////////////////////////////////////////////////////////////////////
  29          //位定义
  30          sbit    LED			= P0^0;				//LED控制脚
  31          ////////////////////////////////////////////////////////////////////////////////////////
  32          //函数申明
  33          void	Init_Device(void);				//单片机初始化
  34          void    Reset_Sources_Init(void);		//单片机复位源初始化
  35          void    Timer_Init(void);				//定时器初始化
  36          void    UART_Init(void);				//串口初始化
  37          void    ADC_Init(void);					//AD转换器初始化
  38          void    Voltage_Reference_Init(void);	//电压基准愿初始化
  39          void    Port_IO_Init(void);				//IO口初始化
  40          void    Oscillator_Init(void);			//系统时钟初始化
  41          void    Interrupts_Init(void);			//中断源初始化
  42          void 	Time_Delay(unsigned int time);	//延时函数定义,时间为time毫秒
  43          //////////////////////////////////////////////////////////////////////
  44          //外部函数调用
  45          extern 	void Flash_Init(void);
  46          extern	void Flash_Format16(void);
  47          extern	void Test_Flash(void);
  48          extern  void Flash_Verify(void);
  49          ///////////////////////////////////////////////////////////////////////////////////////////////////
  50          
  51          //主函数
  52          void main ()
  53          {
  54   1      	unsigned int i;
C51 COMPILER V6.12  MAIN                                                                   08/20/2006 21:10:48 PAGE 2   

  55   1         	PCA0MD &= ~0x40;            // 关看门狗
  56   1      	Init_Device();				// 单片机初始化
  57   1      	Flash_Init();				// FLASH初始化
  58   1      	Usb_Init();					// USB初始化
  59   1      	EA = 1;  					// 开中断中断
  60   1      
  61   1      	while (1)
  62   1         	{
  63   2      		Time_Delay(1);
  64   2      		LED=0;
  65   2         	}
  66   1      }
*** WARNING C280 IN LINE 54 OF MAIN.C: 'i': unreferenced local variable
  67          
  68          
  69          
  70          ////////////////////////////////////////////////////////////////////////////////////////////////////
  71          //单片机初始化
  72          void Init_Device(void)
  73          {
  74   1          Reset_Sources_Init();
  75   1          Timer_Init();
  76   1          UART_Init();
  77   1          ADC_Init();
  78   1          Voltage_Reference_Init();
  79   1          Port_IO_Init();
  80   1          Oscillator_Init();
  81   1          Interrupts_Init();
  82   1      }
  83          
  84          void Reset_Sources_Init()
  85          {
  86   1      }
  87          
  88          //定时器0使用系统时钟,为16位定时器方式;定时器1使用系统时钟的12分频,8位重装载方式,波特率发生器
  89          void Timer_Init()
  90          {
  91   1          TCON      = 0x40;
  92   1          TMOD      = 0x20;
  93   1          CKCON     = 0x01;
  94   1      	TL1		= -System_Clock/4/2/Baud_Rate;
  95   1          TH1     = -System_Clock/4/2/Baud_Rate;
  96   1      	TR0=0;
  97   1      	TR1=1;
  98   1      }
  99          
 100          //8位方式,1起始位+8数据位+1停止位,接收容许,并且只有停止位为1时才触发接收中断
 101          void UART_Init()
 102          {
 103   1          SCON0     = 0x30;
 104   1      	TI0=1;				//为printf函数做准备
 105   1      }
 106          
 107          void ADC_Init()
 108          {
 109   1      }
 110          
 111          void Voltage_Reference_Init()
 112          {
 113   1      }
 114          
 115          void Port_IO_Init()
C51 COMPILER V6.12  MAIN                                                                   08/20/2006 21:10:48 PAGE 3   

 116          {
 117   1          P0MDOUT   = 0x11;
 118   1          XBR0      = 0x01;
 119   1          XBR1      = 0x40;
 120   1      	P2MDOUT   = 0xBF;
 121   1      }
 122          
 123          //系统使用内部时钟,频率为12MHz,USB工作在全速,时钟为48MHz
 124          void Oscillator_Init()
 125          {
 126   1          int i = 0;
 127   1          CLKMUL    = 0x80;
 128   1          for (i = 0; i < 20; i++);    // Wait 5us for initialization
 129   1          CLKMUL    |= 0xC0;
 130   1          while ((CLKMUL & 0x20) == 0);
 131   1          OSCICN    = 0x83;
 132   1      
 133   1      }
 134          
 135          void Interrupts_Init()
 136          {
 137   1      	EIE1 |= 0x02;                   // 允许USB中断
 138   1      }
 139          //////////////////////////////////////////////////////////////////////////////////////////////////
 140          void Time_Delay(unsigned int time)	
 141          {
 142   1      	unsigned int i=0,j=0;
 143   1      	for(i=0;i<time;i++)
 144   1      	{
 145   2      		for(j=0;j<1200;j++)
 146   2      		{_nop_();}	
 147   2      	}
 148   1      }
 149          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    159    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----       2
   IDATA SIZE       =   ----    ----
   BIT SIZE         =   ----    ----
END OF MODULE INFORMATION.


C51 COMPILATION COMPLETE.  2 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?