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

📄 main.c

📁 MC9S12DG128B中断的编写、舵机的控制、电机的控制等代码
💻 C
字号:
#include <hidef.h>      /* common defines and macros */
#include <mc9s12dg128.h>     /* derivative information */
#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"

#define CJ1       _PTM.Bits.PTM4

void main(void) 
{
  byte n1=0;
  byte n2=0;
  
 //先设置PM4
 DDRM_DDRM4=1;//设置M口4引脚为输出
 PTM_PTM4=1;//先将M口4脚设为高电平
 
 
 //设置PP3 
 DDRP_DDRP3=1;//设置P口3脚为输出
 PTP_PTP3=0;//设置3脚为低电平,如果2脚为高电平,则正转
 
 //先将PP2置为低电平
 DDRP_DDRP2=1;
 PTP_PTP2=0;
 
 //设置PP2为方波输出模式
  PWMCAE_CAE2=0;//选择模式为左对齐
  PWMCNT2=0;//计数器清零
  PWMPOL_PPOL2=1;//先输出高电平
  PWMPRCLK_PCKB=6;//clockB64分频,即为1MHz
  PWMCLK_PCLK2=0;//选择B为时钟源
  PWMPER2=255;//
  PWMDTY2=80;//
  PWME_PWME2=0;//暂时不允许2输出脉冲 
 
 
 
 //设置PM6,PM7用于人机交互
 DDRM_DDRM7=0;//设置M口7脚为输入
 DDRM_DDRM6=0;//设置M口6脚为输入
 
 while(1)
 
 {   //检测按键7是否按下
    if(PTM_PTM7==1)
      n1=1;
    if(PTM_PTM7==0&&n1)
      
      {
        PWME_PWME2=1;
        n1=0;
        PWMDTY2+=10;      //按下7,则加速
        if(PWMDTY2>=240)
          PWMDTY2=240;
        PWMCNT2=0;
        
       }
       
       
     //检测按键6是否按下
     if(PTM_PTM6==1)
      n2=1;
     if(PTM_PTM6==0&&n2)
     
     {
      PWME_PWME2=1;
      n2=0;
      PWMDTY2-=10;        //按下6则减速
      if(PWMDTY2<=20)
        PWMDTY2=20;
      PWMCNT2=0;
     }
 }
 
}

⌨️ 快捷键说明

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