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

📄 main.c

📁 飞思卡尔U08开发平台下可以自由运行
💻 C
字号:
/*-----------------------------------------------------*
*工 程 名:PWM.prj                                      *
*硬件接线:PTD.4,即定时器1通道0(21脚)接指示灯或蜂鸣器   *
*程序描述:通过对PWM占空比的调节实现现指示灯的渐亮的功能*
*         当占空比为100%时再从0%逐渐增加             *
*目    的:学习HC08系列定时器脉宽调制功能               *
*---------《嵌入式应用技术基础教程》教学实例----------*/
/*[头文件]*/
#include "GP32C.H"               //包含头文件
#include "KB.h"
/*函数声明*/
extern void PWMInit(unsigned int );     //PWM初始化
extern void PWMconf(unsigned int);      //PWM设置
extern void Delay_ms(unsigned char );   //延时
/*主程序*/
void main()
{     
      unsigned char KB_valve;
      DDRB=0xFF;
      PTB=0xFF;            
      //[主循环]
      while(1)
      {
          //KB_Init();
          KB_valve=KB_Scan();
          KB_valve=KB_Def(KB_valve);
          switch(KB_valve)
             {
                
                case '1':PWMconf(523);PTB=0x01;break;//1~7
                case '2':PWMconf(587);PTB=0x02;break;
                case '3':PWMconf(659);PTB=0x03;break;
                case '4':PWMconf(698);PTB=0x04;break;
                case '5':PWMconf(784);PTB=0x05;break;
                case '6':PWMconf(880);PTB=0x06;break;
                case '7':PWMconf(988);PTB=0x07;break;
               
                case 'A':PWMconf(262);PTB=0x11;break;//#1~~~~#7
                case 'B':PWMconf(294);PTB=0x12;break;
                case 'C':PWMconf(330);PTB=0x13;break;
                case 'D':PWMconf(349);PTB=0x14;break;
                case 'E':PWMconf(392);PTB=0x15;break;
                case 'F':PWMconf(440);PTB=0x16;break;
                case 'G':PWMconf(494);PTB=0x17;break;
                
                case 'a':PWMconf(1046);PTB=0x21;break;//*1~~~~*7
                case 'b':PWMconf(1175);PTB=0x22;break;
                case 'c':PWMconf(1318);PTB=0x23;break;
                case 'd':PWMconf(1397);PTB=0x24;break;
                case 'e':PWMconf(1568);PTB=0x25;break;
                case 'f':PWMconf(1760);PTB=0x26;break;
                case 'g':PWMconf(1976);PTB=0x27;break;
                
                default :T1SC|=(1<<5);T1SC0=0x0e;PTB=0xFF;break;//停止定时器1计数器计数               
                
                
             }
      }                
   }
    

⌨️ 快捷键说明

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