• 大小: 523KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2022-10-06
  • 语言: 其他
  • 标签: MC9S12XS128  舵机  PWM  

资源简介

MC9S12XS128含有8路独立的PWM通道,该程序为PWM通道3实现PWM信号输出,占空比可调,周期为20ms,用于控制舵机旋转

资源截图

代码片段和文件信息

/******************************************************************************
  FILE        : datapage.c
  PURPOSE     : paged data access runtime routines
  MACHINE     : Freescale 68HC12 (Target)
  LANGUAGE    : ANSI-C
  HISTORY     : 21.7.96 first version created
******************************************************************************/

#include “hidef.h“

#include “non_bank.sgm“
#include “runtime.sgm“



#ifndef __HCS12X__ /* it‘s different for the HCS12X. See the text below at the #else // __HCS12X__ */

/*
   According to the -Cp option of the compiler the
   __DPAGE__ __PPAGE__ and __EPAGE__ macros are defined.
   If none of them is given as argument then no page accesses should occur and
   this runtime routine should not be used !
   To be on the save side the runtime routines are created anyway.
   If some of the -Cp options are given an adapted versions which only covers the
   needed cases is produced.
*/

/* if no compiler option -Cp is given it is assumed that all possible are given : */

/* Compile with option -DHCS12 to activate this code */
#if defined(HCS12) || defined(_HCS12) || defined(__HCS12__) /* HCS12 family has PPAGE register only at 0x30 */
#define PPAGE_ADDR (0x30+REGISTER_base)
#ifndef __PPAGE__ /* may be set already by option -CPPPAGE */
#define __PPAGE__
#endif
/* Compile with option -DDG128 to activate this code */
#elif defined DG128 /* HC912DG128 derivative has PPAGE register only at 0xFF */
#define PPAGE_ADDR (0xFF+REGISTER_base)
#ifndef __PPAGE__ /* may be set already by option -CPPPAGE */
#define __PPAGE__
#endif
#elif defined(HC812A4)
/* all setting default to A4 already */
#endif


#if !defined(__EPAGE__) && !defined(__PPAGE__) && !defined(__DPAGE__)
/* as default use all page registers */
#define __DPAGE__
#define __EPAGE__
#define __PPAGE__
#endif

/* modify the following defines to your memory configuration */

#define EPAGE_LOW_BOUND   0x400u
#define EPAGE_HIGH_BOUND  0x7ffu

#define DPAGE_LOW_BOUND   0x7000u
#define DPAGE_HIGH_BOUND  0x7fffu

#define PPAGE_LOW_BOUND   (DPAGE_HIGH_BOUND+1)
#define PPAGE_HIGH_BOUND  0xBFFFu

#define REGISTER_base      0x0u
#ifndef DPAGE_ADDR
#define DPAGE_ADDR        (0x34u+REGISTER_base)
#endif
#ifndef EPAGE_ADDR
#define EPAGE_ADDR        (0x36u+REGISTER_base)
#endif
#ifndef PPAGE_ADDR
#define PPAGE_ADDR        (0x35u+REGISTER_base)
#endif

/*
  The following parts about the defines are assumed in the code of _GET_PAGE_REG :
  - the memory region controlled by DPAGE is above the area controlled by the EPAGE and
    below the area controlled by the PPAGE.
  - the lower bound of the PPAGE area is equal to be the higher bound of the DPAGE area + 1
*/
#if EPAGE_LOW_BOUND >= EPAGE_HIGH_BOUND || EPAGE_HIGH_BOUND >= DPAGE_LOW_BOUND || DPAGE_LOW_BOUND >= DPAGE_HIGH_BOUND || DPAGE_HIGH_BOUND >= PPAGE_LOW_BOUND || PPAGE_LOW_BOUND >= PPAGE_HIGH_BOUND
#error /* please adapt _GET_PAGE_REG for

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1203  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Abatron_BDI.ini

     文件     144220  2014-07-19 11:20  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\bin\Project.abs

     文件        820  2014-07-19 11:20  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\bin\Project.abs.glo

     文件        814  2014-07-19 11:20  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\bin\Project.abs.s19

     文件      99549  2014-07-19 11:20  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\bin\Project.map

     文件       1514  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Erase_unsecure_hcs12xe.cmd

     文件         59  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Postload.cmd

     文件         60  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Preload.cmd

     文件         60  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Reset.cmd

     文件         59  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Startup.cmd

     文件         77  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Vppoff.cmd

     文件         78  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\Abatron_BDI_Vppon.cmd

     文件       1514  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Erase_unsecure_hcs12xe.cmd

     文件         59  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Postload.cmd

     文件         60  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Preload.cmd

     文件         60  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Reset.cmd

     文件         59  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Startup.cmd

     文件         77  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Vppoff.cmd

     文件         78  2010-12-04 09:08  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\cmd\TBDML_Vppon.cmd

     文件        855  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\C_Layout.hwl

     文件        161  2004-06-15 14:46  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Default.mem

     文件      10141  2010-12-04 08:55  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\prm\burner.bbl

     文件       5824  2011-03-03 14:13  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\prm\Project.prm

     文件      98331  2011-03-18 14:05  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project.mcp

     文件       4291  2014-07-20 09:40  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project_Data\CWSettingsWindows.stg

     文件      14369  2014-07-18 17:30  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project_Data\Standard\objectCode\datapage.c.o

     文件       4193  2014-07-18 17:30  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project_Data\Standard\objectCode\GeneralFun.c.o

     文件      11684  2014-07-18 17:30  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project_Data\Standard\objectCode\GPIO.c.o

     文件      10112  2010-12-04 14:35  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project_Data\Standard\objectCode\KBI.c.o

     文件      11548  2010-12-04 14:35  PWM(2014.7.20.0941(能产生舵机工作的PWM信号,但是PWM分辨率太低,没问题)\Project_Data\Standard\objectCode\LCD.c.o

............此处省略107个文件信息

评论

共有 条评论