标题: 51单片机PWM的定时器输入 [打印本页]

作者: ws903360604    时间: 2018-2-1 16:08
标题: 51单片机PWM的定时器输入
一般大家基本用软件来输出PWM波,今天分享个硬件输出的方式

单片机源程序如下:

  1. //PWM输出
  2. #include "STC12C5A60S2.h"
  3. #define uchar unsigned char //定义一下方便使用
  4. #define uint  unsigned int
  5. #define ulong unsigned long
  6. unsigned int high;
  7. void pwm_init(void)
  8. {
  9.         CMOD=0x04;
  10.     CL=0X00;
  11.         CH=0X00;
  12.         CCAPM0=0X42;
  13.         CCAPM1=0X42;
  14.         CCAP1H=0X00;
  15.         CCAP1L=0X00;
  16.                
  17.         CCAP0H=0X00;
  18.         CCAP0L=0X00;
  19.         CR=1;
  20. }
  21. /*定时器初始化*/
  22. void init()
  23. {
  24. //  INT_CLKO=0x01;
  25.    TMOD=0x02;
  26.    TH0=(256-72);
  27.    EA=1;
  28.    ET0=1;
  29.    TR0=1;
  30. }

  31. void pwm_set(uchar x,uchar y)
  32. {
  33.          CCAP0H=x;
  34.         CCAP0L=x;
  35.         CCAP1H=y;
  36.         CCAP1L=y;
  37. }
  38. void main(void)
  39. {
  40.         init();
  41.         pwm_init();
  42.         pwm_set(0xc0,0x80);
  43.         while(1) {;}
  44. }
  45. void time0() interrupt 1
  46. {
  47.    TH0=(256-72);
  48.   // PWMF_set();
  49. }
  50. ……………………

  51. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

所有资料51hei提供下载:
PWM 的定时器输入.zip (14.84 KB, 下载次数: 15)







欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1