• 大小: 14.77MB
    文件类型: .zip
    金币: 2
    下载: 0 次
    发布日期: 2024-02-03
  • 语言: 其他
  • 标签: 单片机  毕设  程序  

资源简介

基于单片机的立体车库控制系统设计 该项目包括原理图电路图 程序源码 演示视频讲解文档全套资料 三分拿去 超值了

资源截图

代码片段和文件信息

#include    //包含单片机寄存器的头文件
#include //包含_nop_()函数定义的头文件

typedef unsigned char uchar; 
typedef unsigned int  uint;
typedef unsigned char BYTE;
typedef unsigned int WORD;

typedef bit BOOL;

#define delayNOP() {_nop_();_nop_();_nop_();_nop_();};

sbit rs=P0^7;
sbit rw=P0^6;
sbit ep=P0^5;

sbit Max7219_pinCLK = P0^2;
sbit Max7219_pinCS  = P0^1;
sbit Max7219_pinDIN = P0^0;


sbit LED = P3^5;

uchar code cdis1[]  = “0123456789“;
uchar code quche[]  = “Please input num“;
uchar code geshi[]  = “free place num  “;
uchar code waite[]  = “   Please wait  “;
uchar code cun[]    = “Please go num. d“;
uchar code NO[]     = “  No Place_num  “;

uchar kxyPlace_num=64;

uchar disp1[8]={                        //用于存放车位状态信息 
0xff0x000x000x000x000x000x000x00     
};

/***************延时函数*****************************/
void delay(uchar i)    //x*0.14MS
{
while(i--);
}



void delay_ms(uint k)
{
uint ij;
for(i=0;i for(j=0;j<123;j++);
}

void delay1 (int m)
{
unsigned char ij;
for (i=0;i for (j=0;j<253;j++);
}

BOOL lcd_bz()
{
BOOL result;
rs=0;           // 读忙信号
rw=1;
ep=1;
_nop_();
_nop_();
_nop_();
_nop_();
result = (BOOL)(P2&0x80);
ep=0;
return 0;
}

void lcd_wcmd (BYTE cmd)
{
while (lcd_bz());
rs=0;
rw=0;
ep=0;
_nop_();
_nop_();
P2=cmd ;
_nop_();
_nop_();
_nop_();
_nop_();
ep=1;
_nop_();
_nop_();
_nop_();
_nop_();
ep=0;
}

void lcd_pos (BYTE pos)
{
lcd_wcmd (pos|0x80);
}

void lcd_wdat (BYTE dat)
{
while(lcd_bz());
rs=1;
rw=0;
ep=0;
_nop_();
_nop_();
P2=dat ;
_nop_();
_nop_();
_nop_();
_nop_();
ep=1;
_nop_();
_nop_();
_nop_();
_nop_();
ep=0;
}

void string(uchar aduchar *sbit k) //输出显示字符串的函数  第一个参数表示位置 第二个参数是要显示的字符串,第三个是选择是否清屏
{
if(k)
lcd_wcmd (0x00|ad);
lcd_wcmd (ad|0x80);
delay_ms(2);

while(*s>0)
{
lcd_wdat(*s++); //输出字符串,且指针增1
//delay(2);
}
}

void lcd_init ()
{
// uchar i;
lcd_wcmd (0x38);
delay1 (1);
lcd_wcmd (0x0c);
delay1 (1);
lcd_wcmd (0x06);
delay1 (1);
lcd_wcmd (0x01);
delay1 (2);
string(0“Free place num  “0); //主页面显示
}



//--------------------------------------------
//功能:向MAX7219(U3)写入字节
//入口参数:DATA 
//出口参数:无
//说明:
void Write_Max7219_byte(uchar DATA)         
{
uchar i;    
Max7219_pinCS=0;
for(i=8;i>=1;i--)
{   
Max7219_pinCLK=0;
Max7219_pinDIN=DATA&0x80;
DATA=DATA<<1;
Max7219_pinCLK=1;
}                                 
}

//-------------------------------------------
//功能:向MAX7219写入数据
//入口参数:address、dat
//出口参数:无
//说明:
void Write_Max7219(uchar addressuchar dat)

Max7219_pinCS=0;
Write_Max7219_byte(address);           //写入地址,即数码管编号
Write_Max7219_byte(dat);               //写入数据,即数码管显示数字 
Max7219_pinCS=1;                        
}

void Init_MAX7219(void)
{
Write_Max7219(0x09 0x00);       //译码方式:BCD码
Write_Max7219(0x0

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2018-10-10 18:51  成品\
     目录           0  2018-04-29 20:33  成品\程序\
     文件        8574  2018-04-29 17:24  成品\程序\main.c
     文件       22223  2018-04-29 17:24  成品\程序\main.LST
     文件       21600  2018-04-29 17:24  成品\程序\main.OBJ
     文件       18353  2018-04-29 17:24  成品\程序\立体车库
     文件        4835  2018-04-29 17:24  成品\程序\立体车库.hex
     文件       24769  2018-04-29 17:24  成品\程序\立体车库.M51
     文件        1262  2018-04-29 17:24  成品\程序\立体车库.plg
     文件      133723  2018-04-29 17:39  成品\程序\立体车库.uvgui.Stupid
     文件      133723  2018-04-29 17:39  成品\程序\立体车库.uvgui_Stupid.bak
     文件        5376  2018-04-29 17:39  成品\程序\立体车库.uvopt
     文件       13388  2018-04-20 22:20  成品\程序\立体车库.uvproj
     文件           0  2018-04-20 17:46  成品\程序\立体车库_uvproj.bak
     文件      175104  2018-04-29 20:33  成品\立体车库.SchDoc
     文件          67  2018-10-14 18:14  联系.txt
     目录           0  2018-10-10 18:51  视频\
     文件    15491748  2018-04-29 09:05  视频\视频1.mp4
     目录           0  2018-10-10 18:52  需求\
     文件       13491  2018-04-10 11:52  需求\任务书.docx

评论

共有 条评论