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

【【51单片机DA转换模块】】

爆改直流电机,DA转换器

main.c

#include <REGX52.H>
#include "Delay.h"
#include "Timer0.h"sbit DA=P2^1;unsigned char Counter,Compare;	//计数值和比较值,用于输出PWM
unsigned char i;void main()
{Timer0_Init();while(1){for(i=0;i<100;i++){Compare=i;			//设置比较值,改变PWM占空比Delay(10);}for(i=100;i>0;i--){Compare=i;			//设置比较值,改变PWM占空比Delay(10);}}
}void Timer0_Routine() interrupt 1
{TL0 = 0x9C;		//设置定时初值TH0 = 0xFF;		//设置定时初值Counter++;Counter%=100;	//计数值变化范围限制在0~99if(Counter<Compare)	//计数值小于比较值{DA=1;		//输出1}else				//计数值大于比较值{DA=0;		//输出0}
}

Delay.c

void Delay(unsigned int xms)
{unsigned char i, j;while(xms--){i = 2;j = 239;do{while (--j);} while (--i);}
}

Delay.h

#ifndef __DELAY_H__
#define __DELAY_H__void Delay(unsigned int xms);#endif

Timer0.c

#include <REGX52.H>/*** @brief  定时器0初始化,100us@12.000MHz* @param  无* @retval 无*/
void Timer0_Init(void)
{TMOD &= 0xF0;		//设置定时器模式TMOD |= 0x01;		//设置定时器模式TL0 = 0x9C;		//设置定时初值TH0 = 0xFF;		//设置定时初值TF0 = 0;		//清除TF0标志TR0 = 1;		//定时器0开始计时ET0=1;EA=1;PT0=0;
}/*定时器中断函数模板
void Timer0_Routine() interrupt 1
{static unsigned int T0Count;TL0 = 0x9C;		//设置定时初值TH0 = 0xFF;		//设置定时初值T0Count++;if(T0Count>=1000){T0Count=0;}
}
*/

Timer0.h

#ifndef __TIMER0_H__
#define __TIMER0_H__void Timer0_Init(void);#endif
http://www.lryc.cn/news/100992.html

相关文章:

  • [SQL挖掘机] - 字符串函数 - substring
  • 第一百一十六天学习记录:C++提高:STL-string(黑马教学视频)
  • Meta-Transformer 多模态学习的统一框架
  • tinkerCAD案例:24.Tinkercad 中的自定义字体
  • list与流迭代器stream_iterator
  • 九耶:冯·诺伊曼体系
  • 探索UCI心脏病数据:利用R语言和h2o深度学习构建预测模型
  • 基于 moleculer 微服务架构的智能低代码PaaS 平台源码 可视化开发
  • xrdp登录显示白屏且红色叉
  • Docker安装 Mysql 8.x 版本
  • 【数理知识】刚体 rigid body 及刚体的运动
  • 【UE5 多人联机教程】03-创建游戏
  • 【时间序列预测 】M4
  • SpringCloud微服务实战——搭建企业级开发框架(五十三):微信小程序授权登录增加多租户可配置界面
  • Stability AI推出Stable Diffusion XL 1.0,文本到图像模型
  • B076-项目实战--宠物上下架 展示 领养 收购订单
  • 【iOS】—— 持久化
  • 教程 - 在 Vue3+Ts 中引入 CesiumJS 的最佳实践@2023
  • 最优化方法
  • Mongodb 多文档聚合操作处理方法二(Map-reduce 函数)
  • ant design vue j-modal 修改高度
  • spring学习笔记七
  • hw技战法整理参考
  • uniapp 全局数据(globalData)的设置,获取,更改
  • Profinet转EtherNet/IP网关连接AB PLC的应用案例
  • Python组合模式介绍、使用方法
  • 生成模型和判别模型工作原理介绍
  • shardingsphere读写分离配置
  • 登录报错 “msg“:“Request method ‘GET‘ not supported“,“code“:500
  • Python 日期和时间