基于AT89C51单片机倒车防撞报警系统设计 - 图文(4)
_nop_(); _nop_(); _nop_(); _nop_(); }
csb_in=0; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); }
4.8 超声波接收及显示程序
Void duqu() {
Uchar num;
num0=num1=num2=num3=num4=0; csb_out=1;
for(num=0;num<10;num++) send(); TR0=1
If(csb_out==0) {
TR0=0;
time=(TH0*256+TL0)/2; Long=0.344*time;
Distance=Long; P1=distance;
Num4=distance/10000;
Num3=distance000/1000; Num2=distance00/100; Num1=distance0/10; Num0=distance;
write_com(0×80+0×40+0×10); write_date(0×30+num4); delay(10);
13
write_date(0×30+num3); delay(10);
write_date(0×30+num2); delay(10);
write_date(0×30+num1); delay(10);
write_date(0×30+num0); delay(10); // delay(1000); TH0=0×00; TL0=0×00;
} }
4.9 1602显示初始化写指令写数据程序
/*****************************************************************
检查LCD忙状态
Lcd_busy为1时,忙,等待。Lcd_busy为0时,闲,可写指令与数据。 /
bit lcd_busy() {
bit result; lcdrs=0; lcdrw=1; lcden=1; _nop_(); _nop_(); _nop_(); _nop_();
result=(bit)(P0&0×80); lcden=0;
return result; }
/*************************************************************** /* 1602液晶写指令函数 */ /* */ /***********************************************************/
14
void write_com(uchar com) {
white(lcd_busy()): lcdrs=0; //选择写指令模式
lcdrw=0; //设置1602液晶为写模式 Icden=0; //使能端置低电平
P0=com; //将要写的命令字送到数据总线上 _nop_(); //稍作延时是为了数据稳定 _nop_(); _nop_(); _nop_();
Icden=1 //给使能端一个高脉冲,初始化已将能使端至低 _nop_(); //稍作延时 _nop_(); _nop_(); _nop_();
Icden=0; //将使能端置0为了完成高脉冲 }
/********************************************/ 1602液晶写数据函数
/********************************************/ Void write_date() }
While(Icd_busy90);
Icdrs=1 ; //选择读指令模式
Icden=0; //设置1602液晶为写模式 Icden=0; //使能端置低电平
P0=date; //将要写的命令字送到数据总线上 _nop_(); //稍作延时是为了是数据稳定 _nop_(); _nop_(); _nop_();
Icden=1; //给使能端一个高脉冲,初始化中已将使能端至低
_nop_(); _nop_();
_nop_(); //稍作延时 _nop_();
Icden=0 //将使能端至0是为了完成高脉冲 }
15
/*******************************************************************
/* */
/* 1062液晶显示函数 */
/* */
/**********************************************************************
*/
Void icd_display() {
Uchar a,b,c,d; For(a=0;a<16;a++) {
Write_date(table0[a]); //显示table0 Delay(200); }
Write_com(0×80+0×40); //第二行首地址 For(b=0;b<12;b++) {
Write_date(table1[b]); //显示table1 Delay(200); }
Write_com(0×01); //清屏 Write_com(0×80); For(c=0;c<16;c++) {
Write_date(table2[c]); //第二次写入显示table2
Delay(200) }
Write_com(0×80+0×40); For(b=0;b<12;b++) {
16
Write_date(table3[d]); //显示table3 Delay(200); }
TR0=1; //开定时器0 TR1=1; }
/*********************************************************************
初始化函数
/********************************************************************/
Void init() {
Delay(15);
Write_com(0×01); //清除LED的显示内容
Write_com(0×38); //16*2显示,5*7点阵,8位数据 Delay(5)
Write_com(0×38); Delay(5)
Write_com(0×38); //设置16×2显示,5×7点阵,8位数据口
Delay(5)
Write_com(0×0c); //设置开显示,不显示光标 Delay(5)
Write_com(0×06); //设置写入一个字符后指针自动加一 Delay(5); Write_com(0×80); //第一行数据首地址
TMOD=0×11 TH0=0×00
TL0=0×00
TH1=(65536-50000)/256;//设定初值 TL1=(65536-50000)%6;
EA=1; //开总中断
// ET0=1; //开定时器0中断
ET1=1;
}
/********************************************************************
设定显示位置
/**************************************************************
17
…… 此处隐藏:1151字,全部文档内容请下载后查看。喜欢就下载吧 ……相关推荐:
- [政务民生]2013年公共基础知识热点问题(七)
- [政务民生]检验检测机构资质认定评审准则及释义20
- [政务民生]关于印发重庆市房屋建筑和市政基础设施
- [政务民生]1、隧道洞身开挖支护施工技术交底书
- [政务民生]2015年山东省17地市中考语文试题分类汇
- [政务民生]2-高级会计师资格考试和评审流程图
- [政务民生]2018版中国清分机行业发展分析及前景策
- [政务民生]新课改高中政治探究
- [政务民生]2018-2024年中国新型组合房屋行业投资
- [政务民生]2015年上海市春季高考数学模拟试卷五
- [政务民生]灌砂法及环刀法测压实度(带计算过程)
- [政务民生]运筹学实验2求解非线性规划
- [政务民生]劝学、逍遥游默写(教师卷)
- [政务民生]《运筹学》 - 期末考试 - 试卷A - 答案
- [政务民生]八年级英语下册 Module 6 Hobbies测试
- [政务民生]2019年宪法知识竞赛试题库100题(含答
- [政务民生]自动化英文文献翻译
- [政务民生]公文格式实施细则
- [政务民生]高一地理上册课堂跟踪练习题6
- [政务民生]会计继续教育习题及答案
- 第三章 无约束最优化方法
- 泛读教程第三册答案
- 魏晋南北朝文学
- 幂的运算复习题
- 城市环境问题的成因与治理策略_以社会
- 钢结构行业产业链及竞争分析研究
- 新型热塑性弹性体增韧聚丙烯的研究
- 中国旅游地理B卷试题及答案
- (苏教版)五年级数学上册第三单元测试卷
- 不稳定性心绞痛诊断与治疗
- 俞氏国际后勤职能部门绩效考核办法
- GB7258-2017新标准考试题含答案
- 小学生汉字听写比赛活动方案
- 1.3《平抛运动》学案 教科版必修2
- 2011香港特别行政区公务员考试复习资料
- 考虑水力条件变化的城市给水管网可靠性
- 表面活性剂在油田开发和生产中的应用
- ITT内部培训资料-FI端吸泵的介绍
- 文明守纪,从我做起学生发言稿
- 初中读《聊斋志异》心得体会800字范文




