当前位置: 首页 > news >正文

网站建设成本预测表C语言开发网站开发语言

网站建设成本预测表,C语言开发网站开发语言,wordpress做管理系统,如何做wap网站今天的实验需要用到的材料有:51单片机最小系统,4X4的矩阵键盘,DC直流6V-12V带编码器电机,L298N模块,一个led小灯。下面把产品截图展示一下: 单片机就不展示了,都一样,下面是接线图&a…

今天的实验需要用到的材料有:51单片机最小系统,4X4的矩阵键盘,DC直流6V-12V带编码器电机,L298N模块,一个led小灯。下面把产品截图展示一下:

单片机就不展示了,都一样,下面是接线图:

下面是电机的脉冲信号接法:4个脉冲1圈,图中单片机处接到51单片机的P3.2口,外部中断0

接下来就是我组装完了的一张图片了。

下面介绍一下程序的大体流程:按A键正转,按B键反转,0停止,1到9设置脉冲的高电平占用的百分比,10%到90%,也就是1最慢,9最快了。还能再快,没有写,到100%就是最快了,不管什么情况下,转够十圈都会停止转动。

下面就是整个程序,有注释,程序测试没有问题,特此记录:

#include<reg52.h>
sbit IN1=P3^5;   //接L298N 7
sbit IN2=P3^6;   //接L298N 6
sbit EN1=P3^7;   //接L298N 5
sbit LED=P2^7;   //接一个小led灯检测信号用#define uc unsigned char
#define uint unsigned intuint dat_H[2];  // 定时器初值的高位取值数组
uint dat_L[2];  // 定时器初值的低位取值数组
uint num=1000;   // 定时器的定时时间(高电平时间为0.1毫秒)uc flag=0;   //记录按键是否被按下的标志
uc count=0;  //用来记录电机转的圈数,4个数为1圈//电动机停止函数
void motor_stop()
{IN1=1;IN2=1;EN1=1;EA=0;
}//电动机正转函数
void motor_zheng()
{IN1=1;IN2=0;EA = 1;
}//电动机反转函数
void motor_fan()
{IN1=0;IN2=1;EA = 1;
}//数据初始化
void dat_init()
{dat_H[0]=(65536-(10000-num))/256;dat_L[0]=(65536-(10000-num))%256;dat_H[1]=(65536-num)/256;dat_L[1]=(65536-num)%256;}void key()
{uc temp=0, temp1=0, temp2=0;P0 = 0x0F;if(P0 != 0x0F && flag == 0){flag=1;    }if(P0 != 0x0F && flag == 1){flag=0;    // temp1 = P0;}P0 = 0xF0;if(P0 != 0xF0  && flag == 0){flag = 1;//temp2 = P0;}if(P0 != 0xF0  && flag == 1){flag = 0;//temp2 = P0;}temp = temp1 + temp2;//按键1按下       修改num值达到修改定时器定时时间的目的if(temp == 0xEE){num = 1000;}//按键2按下if(temp == 0xDE){num = 2000;}//按键3按下if(temp == 0xBE){num = 3000;}//按键A按下if(temp == 0x7E){motor_zheng();  // 电机正转}//按键4按下if(temp == 0xED){num = 4000;}//按键5按下if(temp == 0xDD){num = 5000;}//按键6按下if(temp == 0xBD){num = 6000;}//按键B按下if(temp == 0x7D){motor_fan();  // 电机反转}//按键7按下if(temp == 0xEB){num = 7000;}//按键8按下if(temp == 0xDB){num = 8000;}//按键9按下if(temp == 0xBB){num = 9000;}//按键C按下
//	if(temp == 0x7B)
//	{
//	
//	}//按键*按下
//	if(temp == 0xE7)
//	{
//	
//	}//按键0按下if(temp == 0xD7){motor_stop();   //停止转动}//按键#按下
//	if(temp == 0xB7)
//	{
//	
//	}
//	
//	//按键D按下
//	if(temp == 0x77)
//	{
//	
//	}LED=0;dat_init();      // 所有按键都检测完了就要重新设置一下初值,好叫按键更改的num值起效
}//定时器初始化
void time_init()
{TMOD=0x01;TH0=dat_H[0];TL0=dat_L[0];ET0=1;EA=1;TR0=1;IN1=1;IN2=0;EN1=0;LED=0;   //P2的7口接了一个led小灯检测信号有没有用的。//下面是外部中断初始化IT0=1;    //  外部中断设置成1,边沿触发方式EX0=1;    //  使用INT0的中断}//  主函数
int main()
{time_init();  //初始化定时器while(1){key();    // 检测按键}return 0;
}// 定时器中断入口函数
void zd() interrupt 1
{ EN1=~EN1;     // 电动机转动使能,每次取反, 得1时转动,得0时停止if(EN1==0)         //  如果是停止转动时,就设置初值为(65536-(10000-num))num为定时时间1000为1毫秒{ TH0=dat_H[0];TL0=dat_L[0];}if(EN1==1)          //  如果是转动时,就设置初值为(65536-num),num为定时时间1000为1毫秒{TH0=dat_H[1];TL0=dat_L[1];}
}// 外部中断入口函数
void wbzd() interrupt 0
{count++;if(count == 40)  //记录电机转10圈的时候就停止转动,点亮led灯,圈数置0.{LED=1;count=0;motor_stop();}
}

http://www.yayakq.cn/news/361888/

相关文章:

  • 苏州网站建设报价重庆市建设工程人力资源网
  • 外贸网站建设公司价位wordpress+游戏网站
  • 网站备案信息是什么新泰网络推广公司电话
  • 温州建网站业务人员wordpress调用访问次数
  • 外国网站建设公司茶叶网络推广方案
  • 凡科建站官网地址慧聪网seo页面优化
  • 徐州网站建设价格驻马店网站制作
  • 天津建设网站分包服务卡wordpress二维码
  • 遂宁市住房和城乡建设局网站文字变形logo设计生成器
  • 如何加强网站安全建设淮安开发区建设局网站
  • 成都建设招标网站首页外贸新三样
  • 网站兼容问题西安营销型网站制作
  • 网站建设与管理专业概述浙江省建设厅证书查询
  • 广州企业网站制作推广运营电子商务专业论文选题
  • 网站seo快速排名优化做跨境电商的血泪教训
  • 网站企业管理培训课程建设什么类型网站好
  • 网站后台管理员密码忘记外贸机械网站
  • 网站的内链惠州市seo广告优化营销工具
  • 商业网站建设案例教程国外做西餐的网站
  • 电脑怎样做轰炸网站wordpress外链图片备份
  • 怎么做直播网站的超管建设优化一个网站步骤
  • 东莞网站seo公司政务公开及网站建设意见
  • 网站开发包括几部分优化设计七年级上册语文答案
  • 外国人做汉字网站手机商城建站系统网站建设
  • 大兴 网站建设wordpress主题文件
  • 网站制作软件是什么抖音小程序开放平台
  • 网站建设步骤网站制作行业
  • 什么网站做二维码比较好wordpress ajax 翻页
  • 那个网站可以做视频app制作的网站备案注销找哪个部门
  • 站群子网站开发网站建设方案基本流程