⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cpu_init.lst

📁 书中详细说明了多路数据采集的方法,以及怎么样用AD来采集数据哟,大家不妨看看嘛,说不定有所帮助哟?
💻 LST
字号:
C51 COMPILER V7.50   CPU_INIT                                                              03/17/2007 10:53:08 PAGE 1   


C51 COMPILER V7.50, COMPILATION OF MODULE CPU_INIT
OBJECT MODULE PLACED IN CPU_Init.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE CPU_Init.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          //函数声明
   2          #include <c8051f020.h> // SFR 声明
   3          #include "SMBUS.h"
   4          void Port_IO_Init()    //IO口以及存储器初始化
   5          {
   6   1          EMI0CF    = 0x2C;  //选择高端口模式,只用外部存储器,EMIF工作在
   7   1                                 //地址/数据复用方式,/WR和/RD占用12个SYSCLK周期 
   8   1          EMI0TC    = 0x3C;  //地址建立/保持时间为0,ALE高/低脉宽占1个SYSCLK周期    
   9   1          P3MDOUT   = 0x2D;  //P3.5--> LCD_RES,P3.3--> LCD_REQ,P3.2--> OE574,
  10   1                                 //P3.0--> OE574 四位设置为推拉输出方式;
  11   1                                 //P3.4--> LCD_BUSY,P3.1-->PS2_DATA两位设置为开漏输出方式。
  12   1          P74OUT    = 0xFF;  //将P4,P6,P5,P7口配置为推拉输出方式
  13   1              P0MDOUT   = 0x01;  //将TX0,TX1设置为推拉输出方式
  14   1          P1MDOUT   = 0x01;
  15   1          XBR0      = 0xDF;  //按照配置表进行各个外设的配置
  16   1          XBR1      = 0x1C;
  17   1          XBR2      = 0x44;
  18   1         /*额外的配置请在本行文字以下进行配置并请加详细注释*/
  19   1          
  20   1         /*------------------------------------------------*/
  21   1      }
  22          void Oscillator_Init()   //晶振初始化
  23          {
  24   1          int i = 0;
  25   1          OSCXCN    = 0x67;
  26   1          for (i = 0; i < 3000; i++);  // Wait 1ms for initialization
  27   1          while ((OSCXCN & 0x80) == 0);
  28   1          OSCICN    = 0x88;//使用外部22.1184M晶振,使能时钟丢失检测
  29   1      }
  30          
  31          /**************************************************************************************************/
  32          
  33          void Interrupts_Init()  //中断初始化
  34          {
  35   1          IE |= 0x11;//使能UART0,/INT0中断
  36   1          IP |= 0x10;//设置UART0中断为高优先级
  37   1      }
  38          
  39          void Timer_Init()
  40          {
  41   1          CKCON   = 0x10;//定时器1选择系统时钟为时钟源
  42   1          TMOD    = 0x20;//定时器1工作在8位自动重载方式
  43   1          TH1     = 0xB8;//UART0波特率设为9600bps
  44   1          TCON    = 0x41;//使能定时器1并使外部中断0配置为边沿触发方式
  45   1      }
  46          
  47          void UART0_Init(void)
  48          {    
  49   1          SCON0=0xF0; //通信方式3允许多机通信方式
  50   1          PCON=0x00;
  51   1          SADDR0=0x00;//主机地址为0x00
  52   1          SADEN0=0xFF;//全字节地址匹配
  53   1      }
  54          
  55          void Init_Device(void)
C51 COMPILER V7.50   CPU_INIT                                                              03/17/2007 10:53:08 PAGE 2   

  56          {
  57   1          Oscillator_Init();
  58   1              Port_IO_Init();
  59   1              Interrupts_Init();
  60   1          Timer_Init();
  61   1          UART0_Init();
  62   1          SMBus_Init();
  63   1      }
  64          
  65          
  66          
  67          
  68          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =    104    ----
   CONSTANT SIZE    =   ----    ----
   XDATA SIZE       =   ----    ----
   PDATA SIZE       =   ----    ----
   DATA SIZE        =   ----    ----
   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 + -