#include <reg52.h>#include <absacc.h>#define uchar unsigned char#define uint unsigned intbit gate; // 定时标志位bit direct; /*设置电机正反转标志,0-正转;1-反转*/sbit motor1=P1^2;sbit motor2=P1^3;/*10-正转;01-反转*/uchar data BUFFER[1]={0}; /*定时器计数变量*/// 主程序,定义中断源和串口工作方式。void main (void){P2=0x0f;// 初始化端口EA=1; IT1=1; ET0=1;TMOD=0x01; /* T0方式1计时1秒 */TH0=-5000/256;TL0=-5000%256;TR0=1; /* 开中断,启动定时器 */gate=1; // 依据转向状态决定电机的动作for (;;){if (gate) {motor1=1;motor2=0;}else{motor1=0;motor2=1;}}}/* 定时计数器0的中断服务子程序 */void timer0(void) interrupt 1 using 1{TH0=-5000/256;// 定时器T0的高四位赋值TL0=-5000%256;BUFFER[0]=BUFFER[0]+1; // 定时器T0的低四位赋值if (BUFFER[0]==100) // 百分秒进位{gate=! gate;// 转向标志取反}}
导读:目前正在解读《AT89S52语言常用程序—单片机驱动直流电机的例程》的相关信息,《AT89S52语言常用程序—单片机驱动直流电机的例程》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《AT89S52语言常用程序—单片机驱动直流电机的例程》的详细说明。
简介:这里给大家分享一个AT89S52语言常用程序——单片机驱动直流电机的例程
提醒:《AT89S52语言常用程序—单片机驱动直流电机的例程》最后刷新时间 2024-03-14 01:02:27,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《AT89S52语言常用程序—单片机驱动直流电机的例程》该内容的真实性请自行鉴别。