博主福利:100G+电子设计学习资源包!

​http://mp.weixin.qq.com/mp/homepage?__biz=MzU3OTczMzk5Mg==&hid=7&sn=ad5d5d0f15df84f4a92ebf72f88d4ee8&scene=18#wechat_redirect​​ --------------------------------------------------------------------------------------------------------------------------

 

设计要求:

通过按键控制输出电压的大小,改变直流电动机的转速

基于单片机的直流电机转速控制设计(电路+程序)_初始化

实现思路:

使用DAC0832将单片机输出的数据转换成模拟电压,通过调节单片机P2口输出的数值来改变加载直流电动机两端的电压,以此控制转速。具体DAC0832的使用见对应说明

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

实现代码:

#include <reg52.h>
typedef unsigned char uchar;
uchar speed = 0;
int main()
{
/* 初始化中断 */
EA = 1;
EX0 = 1;
IT0 = 1;
/* 将速度变量从P2口输出,通过DAC0832转换成模拟电压 */
while(1)
{
P2 = speed;
}
}
void Int0()interrupt 0
{
if (speed != 255) //speed最大速度限制在255
speed += 5;
}