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

📄 pwm.lst

📁 太欣单片机STK6031的测试程序
💻 LST
字号:
C51 COMPILER V8.08   PWM                                                                   10/24/2007 15:31:08 PAGE 1   


C51 COMPILER V8.08, COMPILATION OF MODULE PWM
OBJECT MODULE PLACED IN PWM.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE PWM.c BROWSE DEBUG OBJECTEXTEND

line level    source

   1          
   2          #include "STK6031.h"
   3          
   4          //********************************************************************************
   5          //定义数据类型
   6          typedef unsigned char uint8;
   7          typedef unsigned int  uint16;
   8          
   9          
  10          /*
  11          ********************************************************************************  
  12          *       函 数 名:InitMCU
  13          *       功能描述:初始化MCU,其中包括初始化各I/O口,CHIPCON,
  14                                        CKCON,选择I/O口的功能
  15          *       输    入: 无
  16          *       返    回: 无
  17          ********************************************************************************
  18          */      
  19          
  20          void InitMcu(void)
  21          {
  22   1              P0              = 0xFF;      //初始化各I/O 口
  23   1              P1              = 0xFF;
  24   1              P2              = 0xFF;
  25   1              P3              = 0xFF;
  26   1              P4              = 0x0F;
  27   1              
  28   1              XFR_PADOPT_PWM = 0x01;   //设置P1.0 为PWM 输出
  29   1      
  30   1              CHIPCON = 0x1A;  // 设置CPUCLK=XTAL1/3,允许访问片内AUX 存储器,禁止ALE 输出,允许低电压复位
  31   1              CKCON = 0x39;  // 设置TIMER0,TIMER1,TIMER2 的计数频率为CPUCLK/4, 设置MOVX 指令访问外部AUX 存储器的时间为3
             - 个机器周期
  32   1      }
  33          
  34          
  35          /*
  36          ********************************************************************************
  37          *       函 数 名: Delay
  38          *       功能描述: 延时函数,延时的间隔是1ms
  39          *       输    入: Time  :控制延时的间隔
  40          *       返    回: 无
  41          ********************************************************************************
  42          */
  43          void Delay(uint8 Time)
  44          {
  45   1              uint8 i;
  46   1      
  47   1      //      需要执行2000个指令周期
  48   1              while(Time--) 
  49   1                      {
  50   2                      i = 199;
  51   2                      while(i--);   //        这一段将执行10个指令周期                                                               
             -                                                                                                                        
             -                                                  N                                                                     
             -                                                                                                                        
C51 COMPILER V8.08   PWM                                                                   10/24/2007 15:31:08 PAGE 2   

             -                                                                                                                        
             -                                                                                                      while(i--);
  52   2                      }
  53   1      }
  54          
  55          
  56          /*
  57          ********************************************************************************  
  58          *       函 数 名: PWM0
  59          *       功能描述: 脉冲宽度调制,这里以PWM0 为例
  60          *       输    入: pwmvalue,脉冲宽度
  61          *       返    回: 无
  62          ********************************************************************************
  63          */
  64          
  65          void PWM0(uint8 pwmvalue)
  66          {
  67   1              XFR_PWMDA0 = pwmvalue;       //设置P1.0 的脉冲宽度      
  68   1      }       
  69          
  70          
  71          void main(void)
  72          {
  73   1              InitMcu();
  74   1              while(1)
  75   1                      {
  76   2                      PWM0(0xF0);     
  77   2                      Delay(100);
  78   2                      PWM0(0x70);     
  79   2                      Delay(100);
  80   2                      }
  81   1      }
  82          


MODULE INFORMATION:   STATIC OVERLAYABLE
   CODE SIZE        =     70    ----
   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 + -