资源简介
2017电赛自动泊车资料

代码片段和文件信息
#include
sbit Dck=P1^0;
sbit Led1=P1^1;
sbit Led2=P1^2;
sbit Seg1=P1^3;
sbit Seg2=P1^4;
sbit Seg3=P1^5;
sbit Seg4=P1^6;
sbit Mink=P1^7;
sbit Led3=P3^1;
sbit Add=P3^2;
sbit Dec=P3^3;
sbit K1=P3^4;
sbit K2=P3^5;
sbit K3=P3^0;
sbit AM=P3^6;
sbit BM=P3^7;
#define Disdata P0
#define Dac P2
#define uchar unsigned char
#define uint unsigned int
#define MARK 4 //用于输出任意分频的pwm波
uchar code dis_7[16]={0xc00xf90xa40xb00x990x920x820xf80x800x900x880x830xc60xa10x860x8e}; // 共阳极段选码
volatile uchar data display[4]={0x000x000x000x00}; //用于暂存数码管的输出数据流
int Tnum=0 //定时器0定时次数的记录
Pnum=2; //用于和Tnum比较产生需要的pwm波
snum=0;
uint full=0; //用于记录定时器1的溢出次数
/*************延时程序************************/
void delay(uint t)
{
for(;t>0;t--);
}
/**************数码管显示*********************/
/***********pwm波定时发生*********************/
void Time0_srv() interrupt 1
{
snum++;
if(snum>40)
snum=0;
if(snum>0&&snum<=10)
{
Seg4=1;
Disdata=~dis_7[display[0]];
delay(30);
Seg1=0;
}
if(snum>10&&snum<=20)
{
Seg1=1;
Disdata=(~dis_7[display[1]])|0x80;
delay(30);
Seg2=0;
}
if(snum>20&&snum<=30)
{
Seg2=1;
Disdata=~dis_7[display[2]];
delay(30);
Seg3=0;
}
if(snum>30&&snum<=40)
{
Seg3=1;
Disdata=~dis_7[display[3]];
delay(30);
Seg4=0;
}
{
TH0=(65536-425)/256;
TL0=(65536-425)%256;
if(Tnum {
Dck=1;
}
else
{
Dck=0;
}
Tnum=Tnum+1;
Tnum=Tnum%MARK;
}
}
/*****************按键程序1*****************/
void key1() interrupt 0
{
delay(4000);
if(Add==0 )
{
Pnum++;
Led1=0;
Led2=1;
delay(10000);
Led1=1;
if(Pnum>=MARK+1)
Pnum=MARK;
}
switch(Pnum)
{
case 0: Dac=0x00;break; //--
case 1: Dac=0x3f;break; //-
case 2: Dac=0x7f;break; //0
case 3: Dac=0xbf;break; //+
case 4: Dac=0xff;break;//++
}
}
/****************按键程序2******************/
void key2() interrupt 2
{
delay(4000);
if(Dec==0)
{
Led1=1;
Led2=0;
delay(10000);
Led2=1;
Pnum--;
Tnum=0;
if(Pnum<0)
Pnum=0;
}
switch(Pnum)
{
case 0: Dac=0x00;break; //--
case 1: Dac=0x3f;break; //-
case 2: Dac=0x7f;break; //0
case 3: Dac=0xbf;break; //+
case 4: Dac=0xff;break;//++
}
}
/**************测速程序1*******************/
void Time1_srv() interrupt 3
{
full++;
if(full==10000)
{
TR0=0;
full=0;
TH1=0;
TL1=0;
Led3=1;
}
}
/*************测速程序2*****************/
void Freeback()
{
static uchar dj=0;
float time=0.0;
uint rad=0;
if(Mink==0)
{
TR1=1;
dj++;
Led3=0;
}
while(!Mink);
if(dj==2)
{
TR1=0;
time=full*65.536+TH1*0.256+TL1*0.001;
full=0;
TH1=0;
TL1=0;
rad=(2*3.14/(time*0.001)+0.5)*10;
display[3]=rad/1000;
display[2]=rad%1000/100;
display[1]=rad%100/10;
display[0]=rad%10;
dj=0;
}
}
/***************模块初始化****************/
void initi()
{
TMOD=0X11;
EA=1;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 17273 2010-06-07 10:25 巡线小车\CORE\core_cm3.c
文件 85714 2011-02-09 14:59 巡线小车\CORE\core_cm3.h
文件 15503 2011-03-10 10:52 巡线小车\CORE\startup_stm32f10x_hd.s
文件 4317 2017-07-27 22:08 巡线小车\HARDWARE\ADC\adc.c
文件 550 2017-07-27 22:08 巡线小车\HARDWARE\ADC\adc.h
文件 3427 2017-07-29 19:42 巡线小车\HARDWARE\CAR\car.c
文件 503 2017-07-26 21:50 巡线小车\HARDWARE\CAR\car.h
文件 1827 2015-03-20 12:41 巡线小车\HARDWARE\KEY\key.c
文件 1186 2015-03-19 16:14 巡线小车\HARDWARE\KEY\key.h
文件 35016 2015-03-13 14:54 巡线小车\HARDWARE\LCD\font.h
文件 85363 2015-04-24 11:50 巡线小车\HARDWARE\LCD\lcd.c
文件 7529 2015-04-24 11:48 巡线小车\HARDWARE\LCD\lcd.h
文件 1041 2017-07-27 22:01 巡线小车\HARDWARE\LED\led.c
文件 638 2012-09-13 09:45 巡线小车\HARDWARE\LED\led.h
文件 3763 2017-07-27 22:01 巡线小车\HARDWARE\TIMER\timer.c
文件 617 2017-07-25 20:22 巡线小车\HARDWARE\TIMER\timer.h
文件 399 2011-04-23 10:24 巡线小车\keilkilll.bat
文件 32811 2017-07-29 19:42 巡线小车\OBJ\ADC.hex
文件 1772 2015-03-23 21:02 巡线小车\README.TXT
文件 8982 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\misc.h
文件 21690 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_adc.h
文件 7555 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_bkp.h
文件 27559 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_can.h
文件 6573 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_cec.h
文件 2162 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_crc.h
文件 15233 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_dac.h
文件 3818 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_dbgmcu.h
文件 20754 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_dma.h
文件 6824 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_exti.h
文件 25445 2011-03-10 10:47 巡线小车\STM32F10x_FWLib\inc\stm32f10x_flash.h
............此处省略80个文件信息
- 上一篇:28035官方手册中文版
- 下一篇:OV7670摄像头TFTLCD.zip
相关资源
- 基于MCS_51单片机的工业屏柜散热方案
- MCS_51单片机与8255A的接口设计
- 51单片机PWM程序,占空比、周期可调整
- 51单片机多功能自行车测速仪
- 00
- 用51单片机实现G代码翻译
- 简易的电阻电容测量电路
- 51单片机基于protues的几个仿真实例
- 51单片机PCB设计图
- PC -- 单片机的串口数据传输系统设计
- 51单片机控制舵机程序
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- C51单片机汇编指令查询、学习工具集
- 基于8051单片机的红外接收程序
- 51单片机频率计(很简单)
- 基于51单片机的智能温控器
- 基于51单片机的16*16点阵动态显示
- 基于51单片机的模数转换与数模转换
- 51单片机中使用ucos ii的优缺点转
- 51单片机中使用ucos ii的优缺点
- 8051单片机教程第二十七课:单片机几
- 8051单片机教程第二十六课:矩阵式键
- 适用于STC单片机和51单片机的SX1262驱动
- 基于51单片机的计算器(C51编写,有
- 51单片机大量源码
- 基于51单片机的交通信号灯程序
- GSM监控系统51单片机设计
- 51单片机定时器/计数器的结构和原理
- MCS-51单片机定时器和计数器区别的理
评论
共有 条评论