云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > (完整版)基于单片机的红外遥控系统毕业设计论文

(完整版)基于单片机的红外遥控系统毕业设计论文

  • 62 次阅读
  • 3 次下载
  • 2026/1/9 16:24:11

PS=1;串行中断为优先级; PT0=0;定时中断为低优先级 TR1= 1; 启动串行口通讯

TH0 = 0x4c;定时器在11.0592M晶振下定时方式1时延时50MS的值 TL0 = 0x00; 计数值重装 }

void time_init()

{ TH0 = 0x4c;定时器在11.0592M晶振下定时方式1时延时50MS的值

TL0 = 0x00; 计数值重装 milli_second=0; ET0=1;开启中断 TR0=1;开启定时器 }

主流程图如图3-1所示。

开始串口初始化,设定时器工作方式T0 50ms定时,T1波特率发生,9600bps,启动串行通讯 For循环,判断电机的启动键值,若启动键按下start_motor=1?Y开定时器0中断,启动定时器0 ,50ms定时N电机停转动Y方向direction =1?N正转;D-DC-C-CB-B-BA-A-AD,通电,完成一个8拍反转;D-DA-A-AB-B-BC-C-CD,通电,完成一个8拍Pedometer步数计加1Pedometer步数计加1判断T0ms溢出中断是否到了20次判断T0ms溢出中断是否到了20次NYNYT0溢出20次,电机转过1s,根据步数转速=600*pedometer*0.001953125T0溢出20次,电机转过1s,根据步数转速=600*pedometer*0.001953125图3-1 主流程图

定时器T0中断处理过程如图3-2所示。

开始T0,50ms溢出中断Y关闭定T0中断和计时ET0 = 0 ,TR0 =0重新送如定时初值TH0 = 0x4c;TL0 =0x00milli_second+ 1milli_second = 20是否到1秒?N中断返回等待下一次中断Y转速rev=600*pedometer*0.001953125

图3-2 定时器T0中断函数

开始串行中断接收标志位RI=1?Y串行中断服务函数RI置0;将SBUF中数据读入接收数组receive_data[0]中延时,接着调用数据处理函数HandleSwitch判断receive_data[0]的值0X180x7a0X100X380X5a启停电机加速减速正转反转 图3-3 串行中断子函数

3.2 解码程序设计

解码程序主要部分:

if(Infrared_in==0) 等待9MS的引导码低电平 {

Time=0;先清0

while(Infrared_in==0)引导码到了 {

Time++;数值自增,直到引导码4.5ms低电平掠过 }

if(Time>Lead_min && Time

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

PS=1;串行中断为优先级; PT0=0;定时中断为低优先级 TR1= 1; 启动串行口通讯 TH0 = 0x4c;定时器在11.0592M晶振下定时方式1时延时50MS的值 TL0 = 0x00; 计数值重装 } void time_init() { TH0 = 0x4c;定时器在11.0592M晶振下定时方式1时延时50MS的值 TL0 = 0x00; 计数值重装 milli_second=0; ET0=1;开启中断 TR0=1;开启定时器 } 主流程图如图3-1所示。 开始串口初始化,设定时器工作方式T0 50ms定时,T1波特率发生,9600bps,启动串行

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com