
整流桥整流后滤波、再进行分压、送入ADC0808、再由AT89C51处理调整
,调整时是否要除根号2?
-----------------------------
如果分压做得合适,AT89C51就没有必要进行根号2的计算。
这个很简单,我教你怎么玩,下面是思路和方式
思路:有三个输入,分别是一个按钮、两个霍尔传感器(也就是接近开关),我用P00到P02来代替;输出2个或以上(这看你接什么显示器,如果是PC的话,就不用数字量输出,直接串口就可以了)控制正反转的继电器管脚用P10、P11;
PS:显示那块我不知道你怎么处理,但是需要与一个全局变量转动次数k连接起来,另外两个输入接近开关选用NPN传感器或用光电隔离,总之有效信号能把管脚电压拉低就可以了,具体硬件要注意什么,有需要就问我
现在我们来写程序:
#include <reg51h> //选用晶振110592MHz
unsigned char k=0; //k表示正反转次数
sbit X0=P3^2; //调节按钮
sbit X1=P1^1; //上限位接近开关信号
sbit X2=P1^2; //下限位接近开关信号
sbit Y1=P0^0; //电机上升(注意:我使用的是管脚输出为0时候,电机运动,这样可以避免启动时候,单片机自复位对电机点动的影响)
sbit Y2=P0^1; //电机下降
void delay50ms(unsigned int i)
{
unsigned int j;
for (i;i>0;i--)
for(j=46078;j>0;j--);
}
main()
{
IT0=1; //下降沿触发
EX0=1; //开P32外部中断
EA=1; //总中断开
while(1)
while(k)
{
Y1=0; //正转
while(X1==1); //等待正转接近开关反应
Y1=1; //正转停
delay50ms(1); //停止时间50ms
Y2=0; //反转
while(X2==1); //等待反转接近开关反应
Y2=1; //反转停
k--; //圈数减一
}
}
void counter0(void) interrupt 0
{
k++; //外部中断控制圈数加一
//这个位置可以加你显示程序
}
程序已经通过测试,放上去就能用,很好玩哟,呵呵
逆变器!单片机的工作电压只能在5V左右。单片机只能实现输出50HZ的方波信号,用这个信号去控制场效应管的导通和关闭。利用场效应管控制变压器把直流变成220V的交流电压。50HZ是指在一秒内变化50次。单片机12MHZ的晶振一微米震荡12次,通过延时函数让单片机在一秒内输出高低电平50次,就可以了。用单片机的内部时钟计数器和中断可以得到比较精确的方波信号。其实所有的逆变器输出的都不是50赫兹的正旋波。我个人还是比较倾向于直接使用直流电,因为逆变损耗的能量太多。
以上就是关于单片机制作交流电压表程序如何进行处理(汇编)全部的内容,包括:单片机制作交流电压表程序如何进行处理(汇编)、单片机控制交流电机正反转的C语言程序是什么、单片机控制直流变交流(220v 50hz)的程序,哪位大哥帮我写一下,感激啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)