日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 單片機 > 單片機
[導讀]/* 名稱:用 ADC0808 控制 PWM 輸出說明:使用數(shù)模轉(zhuǎn)換芯片 ADC0808,通過調(diào)節(jié)可變電阻 RV1 來調(diào)節(jié)脈沖寬度,運行程序時,通過虛擬示波器觀察占空比的變化。*/#include<reg51.h>#define uchar unsigned char#define

/* 名稱:用 ADC0808 控制 PWM 輸出

說明:使用數(shù)模轉(zhuǎn)換芯片 ADC0808,通過調(diào)節(jié)可變電阻 RV1 來調(diào)節(jié)脈沖寬度,

運行程序時,通過虛擬示波器觀察占空比的變化。

*/

#include<reg51.h>

#define uchar unsigned char

#define uint unsigned int

sbit CLK=P2^4;  //時鐘信號

sbit ST=P2^5;   //啟動信號

sbit EOC=P2^6; //轉(zhuǎn)換結(jié)束信號

sbit OE=P2^7;  //輸出使能

sbit PWM=P3^0;    //PWM 輸出

//延時

void DelayMS(uint ms)

{

uchar i;

while(ms--) for(i=0;i<40;i++);

}

//主程序

void main()

{

uchar Val;

TMOD=0x02; //T1 工作模式 2

TH0=0x14;

TL0=0x00;

IE=0x82;

TR0=1;

while(1)

{


 

ST=0;ST=1;ST=0;  //啟動 A/D 轉(zhuǎn)換

while(!EOC);  //等待轉(zhuǎn)換完成

OE=1; 

Val=P1;      //讀轉(zhuǎn)換值

OE=0; 

if(Val==0)   //PWM 輸出(占空比為 0%

PWM=0; 

DelayMS(0xff);

continue; 

                 }

if(Val==0xff)   //PWM 輸出(占空比為 100%

PWM=1; 

                              DelayMS(0xff);

                               continue;  

           }

 

 

}


//T0 定時器中斷給 ADC0808 提供時鐘信號

void Timer0_INT() interrupt 1

{

CLK=~CLK;

}

 

PWM=1;   //PWM 輸出(占空比為 0%~100%

DelayMS(Val);

PWM=0; 

DelayMS(0xff-Val);

 

拓展閱讀:單片機與C語言通信程序

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關閉