智能公交车 开发文档(8)

2018-12-17 17:12

博 创 杯 全 国 大 学 生 嵌 入 式 设 计 大 赛

case 0x40: if (pre_hei_bai == 0x02)

pwm45d = zhongjian + C*20; //右二高电位 010 0 000 0 break;

pwm2z = V; //

pwm3f = 0; //

break;

case 0x60: if (pre_hei_bai == 0x02) break;

if (pre_hei_bai == 0x06) break;

pwm45d = zhongjian + C*17;

pwm2z = V; //

pwm3f = 0; //

break;

case 0x80: if (pre_hei_bai == 0x02) break;

if (pre_hei_bai == 0x06) break;

pwm45d = zhongjian + C*45;

pwm2z = V; //

pwm3f = 0; //

break;

case 0xc0 :

官方网站:www.cie-eec.org www.up-tech.com/bcb/index.htm 834

//右一二高电位 011 0 000 0 //右三高电位 100 0 000 0 组委会联系电话:010-82110743转820、32 博 创 杯 全 国 大 学 生 嵌 入 式 设 计 大 赛

if (pre_hei_bai == 0x02) break;

if (pre_hei_bai == 0x06) break;

pwm45d = zhongjian + C*23; //右三二高电位 110 0 000 0

pwm2z = V; //

pwm3f = 0; //

break;

case 0xfe : pwm45d = zhongjian; //窄道处处理

pwm2z = V; // 窄道时的速度 V5

pwm3f = 0; //

break;

default :

break;

}

pre_hei_bai=hei_bai; //pre_hei_bai 记录上次赛道信息

if (first_play == 0) {

PWMDTY2 = 0;

PWMDTY3 = 0;

play_show();

first_play = 1; } if (count > 60)

{

PLATFORM ++; //站点停止

官方网站:www.cie-eec.org www.up-tech.com/bcb/index.htm 组委会联系电话:010-82110743转820、834

33 博 创 杯 全 国 大 学 生 嵌 入 式 设 计 大 赛

PWMDTY2 = 0;

PWMDTY3 = 0;

//delay(1000); play_show();

count = 0; } if(PWMDTY2==0) {

pwm2z = V+40; //pwmz2();

delay(20); } speed_aim = pwm2z/5;

PWMDTY45 = pwm45d;

PWMDTY2 = speed_aim;

PWMDTY3 = 0;

if(PLATFORM == 4) //当count累加到8,到达终点站,车停止。 { PWMDTY45 = zhongjian; PWMDTY2 = 0; PWMDTY3 = 0; for(;;);

}

} }

********************************************************************************************

F3.3语音播放程序

官方网站:www.cie-eec.org www.up-tech.com/bcb/index.htm 组委会联系电话:010-82110743转820、834

34 博 创 杯 全 国 大 学 生 嵌 入 式 设 计 大 赛

#include

#define uint unsigned int #define uchar unsigned char

sbit START=P0^0; sbit RE_TURN =P0^2;

sbit CE=P2^0;//定义ISD2560的控制引脚 sbit PD=P2^1; sbit PR=P2^3; sbit A9=P2^7; sbit A8=P2^6; uint i = 0;

/***************************延迟函数**************************** 函数名称: delay

功能: 延迟 1ms

入口参数: z:延迟时间

***************************************************************/ void delay(int ms) { int m,n;

for ( m=0; m

{}

}

/***************************播放函数**************************** 函数名称: play_c

功能: 控制ISD2560放音

入口参数: z:无

***************************************************************/ void play_c() { CE=1; PD=0; PR=1;

CE=0;

}

官方网站:www.cie-eec.org www.up-tech.com/bcb/index.htm 834

组委会联系电话:010-82110743转820、35 博 创 杯 全 国 大 学 生 嵌 入 式 设 计 大 赛

/***********************************放音函数********************************** 函数名称: PLAY

功能:根据输入判断播放那一段语音,完成播放后停止

参数:num : 播放段数 p1 : 播放起始地址 p0 : 高位地址 time: 每段播放时间 count : 播放段数内部计数

通信参数: START :由xs12 发送用来控制播放开始,和停止

/*****************************************************************************/ void PLAY(int num,int p1,int p0,uint time) { int m=1;

RE_TURN = 0; //初始标志位 为0 while (m) { if(START==0)

m=0;

}

A9 =0; //地址高位始终为低

A8 =p0; //播放,从第一段起始地址开始 P1 =p1;

//

play_c(); //调用播放子程序 delay(time); //播放时间 CE =1;

//停止播放

RE_TURN = 1;

//向上位机发送播放完成标志

delay(1);

while (!START); //等待返回 START==1 if (START == 1) { i++;

} m = 1;

RE_TURN = 0; //标志位 清零

}

官方网站:www.cie-eec.org www.up-tech.com/bcb/index.htm 组委会联系电话:010-82110743转820、834

36


智能公交车 开发文档(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:王镜岩版生物化学习题答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: