资源简介
基于单片机的立体车库控制系统设计
该项目包括原理图电路图 程序源码 演示视频讲解文档全套资料
三分拿去 超值了
代码片段和文件信息
#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
相关资源
- 应用程序无法正常启动0xc0150002
- 指纹识别源程序与指纹库
- 程序设计实践(ACM)
- 鸳鸯贴纸相MINI版主程序
- 毕业设计 - 单片机控制LED显示及音乐
- verilog硬件描述语言程序设计与实践教
- 18个常用微信小程序源码
- Qt实现的简单的中国象棋程序
- 暗通道去霾处理源程序
- 基于AT89C51的十字路口交通灯设计pro
- Proteus单片机仿真大全几百个part4
- FOR循环语句的翻译程序设计简单优先
- AD7746采集程序
- 外汇EA信号交易发布接收综合版3.01D
- 51单片机125Khz ID卡读卡程序
- 交通灯模拟程序十字路口
- 盒马鲜生-o2o行业小程序
- 四路抢答器源程序+Pro7仿真文件
- 基于单片机的室内空气质量检测仪的
- 工作台设计内含装配,电路,零件,
- 51单片机课程设计内含50多个课程设计
- 自学编程创新意:livecoding.tv实时直播
- BCH编译码程序
- 基于Nexys4 ddr开发板的VGA测试程序
- keil调试仿真技巧-从入门到精通
- 基于单片机的GPS定位及显示系统设计
- 非线性系统观测器的设计:LMI方法论
- 基于嵌入式实时操作系统的程序设计
- 微信小程序源码-合集5.rar
- 3D绘图程序设计:使用Direct3D 10/9和Ope
评论
共有 条评论