标签:tor 编码 family http ... frequency 按钮 code reg
————————————————————————————————————————————
PWM(脉冲宽度调制)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
设计要求:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
电路功能:
第一个放大器的作用是反相,将P2.0口输出的电压反相,得到一个绝对值相等的负电压。R1和R2阻止相同,不放大。
第二个放大器的作用是放大电压,并再次反相。放大倍数是R4:R5=1000:100=10倍。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
实验现象:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
元件清单:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
实现代码:
1 #include <reg52.h> 2 typedef unsigned char uchar; 3 typedef unsigned int uint; 4 sbit PWM = P2 ^ 0; 5 uchar n = 0; 6 void Delay(uchar m) 7 { 8 uchar a, b, c; 9 while(m--) 10 for (c = 19; c > 0; --c) 11 for (b = 20; b > 0; --b) 12 for (a = 130; a > 0; --a); 13 } 14 void PWMout(uchar n) 15 { 16 PWM = 0; //先置PWM信号为低电平,此时可以看到在波形图上出现波峰 17 Delay(10 - n); //延时10-n(ms) 18 PWM = 1; //置PWM信号为高电平,此时波形图出现波谷 19 Delay(n); //延时n(ms) 20 } 21 int main() 22 { 23 EA = 1; //通过按钮中断来修改n的值 24 EX0 = 1; 25 IT0 = 1; 26 while(1) 27 { 28 PWMout(n); //脉冲输出子程序 29 } 30 } 31 void Int0()interrupt 0 32 { 33 if (n == 10) //n在0-10中循环 34 n = 0; 35 else ++n; 36 }
标签:tor 编码 family http ... frequency 按钮 code reg
原文地址:http://www.cnblogs.com/hughdong/p/6901078.html