/*connect us:
Web:https://sites.google.com/site/journeybuaa/
Email:stingshen1@gmail.com
*/
#include <reg52.h>
#include "matrix.c"
#include "1602lcd.c"
#include "ser.c"
#define uchar unsigned char
#define uint unsigned int
sbit lsen = P2^3;
sbit rsen = P2^4;
//sbit p10 = P1^0;
uchar oldstate = 4,state;
uchar tmFlag, stopwatch = 0, serRcved,tmFlag1;
void main()
{
ser_init();
lcd_init();
// putstr("Hello");
lcddelay(10);
lcd_pos(0x40);
lcddelay(10);
lcd_putstr(" 00 00 00 00");
TH0 = 0x00;
TL0 = 0x00;
TH2 = 0x4c;
TL2 = 0x00;
RCAP2H = 0x4c;
RCAP2L = 0x00;
stopwatch = 0;
ET0 = 0;
TR0 = 0;
/******第一项******/
while(scanmtx() == -1);
putchar(0x0c);
while(serRcved != 0x01);
ET2 = 1;
TR2 = 1;
while(serRcved != 0x02)
{
if(!tmFlag)
{
lcddelay(10);
lcd_pos(0x42);
lcddelay(10);
lcd_wdat(stopwatch/10 + 48);
lcddelay(10);
lcd_wdat(stopwatch%10 + 48);
}
}
serRcved = 0x00;
TR2 = 0;
TH2 = 0x4c;
TL2 = 0x00;
tmFlag = 0;
stopwatch = 0;
// while(serRcved != 0x01);
// TR2 = 1;
// while(serRcved != 0x02)
// {
// if(!tmFlag)
// {
// lcddelay(10);
// lcd_pos(0x4b);
// lcddelay(10);
// lcd_wdat(stopwatch/10 + 48);
// lcddelay(10);
// lcd_wdat(stopwatch%10 + 48);
// }
// }
// TR2 = 0;
// serRcved = 0;
/***第二项***/
// while(scanmtx() == -1);
// putchar(0x0c);
serRcved = 0x00;
TR2 = 0;
TH2 = 0x4c;
TL2 = 0x00;
tmFlag = 0;
stopwatch = 0;
while(serRcved != 0x01);
ET0 = 1;
TR0 = 1;
TR2 = 1;
while(serRcved != 0x02)
{
if(!tmFlag)
{
lcddelay(10);
lcd_pos(0x45);
lcddelay(10);
lcd_wdat(stopwatch/10 + 48);
lcddelay(10);
lcd_wdat(stopwatch%10 + 48);
lcddelay(10);
}
if(serFlag)
{
serFlag = 0;
switch(serRcved)
{
case '9':
lcd_pos(3);
lcddelay(10);
lcd_putstr("R:L");
break;
case 'a':
lcd_pos(3);
lcddelay(10);
lcd_putstr("R:R");
break;
case 'b':
lcd_pos(3);
lcddelay(10);
lcd_putstr("R:B");
default:
break;
}
// lcd_pos(40);
// lcd_putstr("Suc ");
}
if(!lsen)
{
state = 1;
}
else if(!rsen)
{
state = 2;
}
else
{
state = 3;
}
if(state != oldstate)
{
oldstate = state;
putchar(0x55);
putchar(0xaa);
putchar(0x01);
putchar(0x01);
putchar(0x08 + state);
switch(state)
{
case 1:
lcd_pos(0);
lcddelay(10);
lcd_putstr("Le");
break;
case 2:
lcd_pos(0);
lcddelay(10);
lcd_putstr("Ri");
break;
case 3:
lcd_pos(0);
lcddelay(10);
lcd_putstr("Ba");
break;
}
//putchar(state);
}
}
TR0 = 0;
serRcved = 0x00;
TR2 = 0;
TH2 = 0x4c;
TL2 = 0x00;
tmFlag = 0;
tmFlag1 = 0;
stopwatch = 0;
/********第三阶段*******/
while(serRcved != 0x01);
TR2 = 1;
while(serRcved != 0x02)
{
if(!tmFlag)
{
lcddelay(10);
lcd_pos(0x48);
lcddelay(10);
lcd_wdat(stopwatch/10 + 48);
lcddelay(10);
lcd_wdat(stopwatch%10 + 48);
}
}
serRcved = 0;
TR2 = 0;
TH2 = 0x4c;
TL2 = 0x00;
tmFlag = 0;
stopwatch = 0;
/********第四阶段*********/
while(serRcved != 0x01);
TR2 = 1;
while(serRcved != 0x02)
{
if(!tmFlag)
{
lcddelay(10);
lcd_pos(0x4b);
lcddelay(10);
lcd_wdat(stopwatch/10 + 48);
lcddelay(10);
lcd_wdat(stopwatch%10 + 48);
}
}
serRcved = 0;
TR2 = 0;
TH2 = 0x4c;
TL2 = 0x00;
tmFlag = 0;
stopwatch = 0;
while(1);
}
void tm2() interrupt 5
{
TF2 = 0;
if(++tmFlag == 40)
{
// p10 = ~p10;
tmFlag = 0;
stopwatch++;
}
}
void tm0() interrupt 1
{
TH0 = 0x00;
TL0 = 0x00;
if(++tmFlag1 == 40)
{
// p10 = ~p10;
tmFlag1 = 0;
putchar(0x55);
putchar(0xaa);
putchar(0x01);
putchar(0x01);
putchar(0x08 + state);
}
}
//void lzhe() interrupt 0
//{
// EX0 = 0;
// putstr("lzhe");
// EX0 = 1;
//}
//void rzhe() interrupt 2
//{
// EX1 = 0;
// putstr("rzhe");
// EX1 = 1;
//}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python、web、C#、EDA、proteus、RTOS等项目的源码。【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。
资源推荐
资源详情
资源评论
收起资源包目录
基于STM32的智能控制小车程序(仅含源代码+毕业设计).rar (4个子文件)
小车1
1602lcd.C 3KB
shangweiji.c 4KB
ser.c 2KB
matrix.c 2KB
共 4 条
- 1
资源评论
CrMylive.
- 粉丝: 1w+
- 资源: 4万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 使用前缀树(trie tree) 实现敏感词过滤,使用c++实现,性能优异
- SequoiaDB 巨衫数据库的 Python 开发包
- 案发时尽快发哈为板卡安保你哦hias防腐剂安居客
- 4.FreeRTOS之互斥量
- 5.FreeRTOS之事件组
- 跨平台的c开发库,提供asio、stream、容器、算法、xml/json/plist解析、数据库等常用模块
- 4.FreeRTOS之互斥量
- ffplay是以FFmpeg框架为基础,外加渲染音视频的库libSDL构建的媒体文件播放器.
- Paddle工具集合 百度飞桨学习 一PPOCRLabel数据集转COCO数据集
- ShardingJDBC分库分表mysql数据库实战小滴新版
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功