24V直流电机H桥驱动电路及51单片机C程序_第1页
24V直流电机H桥驱动电路及51单片机C程序_第2页
24V直流电机H桥驱动电路及51单片机C程序_第3页
24V直流电机H桥驱动电路及51单片机C程序_第4页
24V直流电机H桥驱动电路及51单片机C程序_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

24V 直流电机直流电机 H 桥驱动电路及桥驱动电路及 5151 单片机单片机 C 程序程序 一 原理图一 原理图 特别说明 CCP0 CCP1 00 时 电机停止 为 01 时 电机正转 为 10 时 电机反转 11 是绝对不允许的 为防止 H 桥共态导通 调试时需要特别注意 二 程序代码二 程序代码 include 头文件 include define uint unsigned int define uchar unsigned char sbit key1 P2 3 启动停止 sbit key2 P2 2 正反转 sbit key3 P2 1 UP sbit key4 P2 0 DOWN uchar run flag 0 停止 1 启动 uchar direction flag 0 正转 1 反转 uchar count 加 减计数 key void status initial void void PWM initial void void delay 1us uchar x void delay led uchar x void key scan void void M run void void main 注 在程序里面 对两路 PWM 进行互锁 防止 H 桥电路共态导通 调试时 也要特别注意 status initial PWM initial while 1 key scan M run void status initial void CCAP0H 0XFF CCAP0L 0XFF 占空比为 0 CCAP1H 0XFF CCAP1L 0XFF 占空比为 0 run flag 0 direction flag 0 count 0 给定一个初始值 设定电机开机的初始转速 或者按下启动 up 启动加速 P1 0 x00 灯灭 void PWM initial void CCON 0X00 CMOD 0X02 空闲模式下 PCA 计数器继续工作 使用系统时钟 禁止 CCON 的 CF 位 中断 CCAPM0 0X42 0100 0010 允许比较器功能 允许 CCP0 脚用作脉宽调节输出 CCAPM1 0X42 同上 8 位 PWM 无中断 CCAP0H 0XFF PCA 捕捉 比较寄存器 低八位和高八位 频率 f SYSclk 256 CCAP0L 0XFF 工作于 PWM 模式 用于控制输出的占空比 CCAP1H 0XFF 当寄存器 CL 的值小于 EPCnL CCAPnL 时 输出为低 当寄存器 CL 的值等于或大于 EPCnL CCAPnL 时 输出为高 CCAP1L 0XFF 当 CL 的值有 FF 变为 00 溢出时 EPCnH CCAPnH 的内容装载到 EPCnL CCAPnL 中 当 EPCnL 0 及 CCAPnL 00H 时 固定输出高 当 EPCnL 1 及 CCAPnL FFH 时 固定输出低 CL 0 PCA 的 16 位计数器 低八位和高八位 CH 0 CR 1 启动 PCA 定时器 void delay 1us uchar x uchar i j for i 0 i x i for j 0 j 120 j void delay led uchar x uchar i j j x while j for i 0 i 100 i 时间再调整 nop void key scan void uchar temp P2 0 xff temp P2 temp temp 0 x0f if temp 0 x0f 检测是否有按键按下 启动 停止 key1 if key1 0 delay 1us 10 if key1 0 if run flag 1 run flag 0 stop else run flag 1 start 正转 反转 key2 if key2 0 delay 1us 10 if key2 0 if direction flag 1 direction flag 0 正 else direction flag 1 反 up key3 if key3 0 delay 1us 10 if key2 0 if count 0 count 0 else count down key4 if key4 0 delay 1us 10 if key2 0 if count 255 count 255 else count void M run void uchar i temp if run flag 0 stop 不转 CCAP0H 0XFF CCAP0L 0XFF 占空比为 0 CCAP1H 0XFF CCAP1L 0XFF 占空比为 0 led display 不转 灯不亮 temp 0 x00 P1 temp if run flag 1 run temp 0 xff CY 0 if direction flag 0 正转 CCAP0H 0XFF CCAP0L 0XFF 占空比为 0 CCAP1H count CCAP1L count led display for i 0 i 8 i P1 temp temp temp 1 delay led count if d

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论