




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、传感器技术设计报告超声波防撞系统 学 院 电子信息工程学院 专业班级 学生姓名 学生学号 指导教师 提交日期 2012/12/28 目录设计方案3硬件设计电路5软件6调试8心得体会8参考文献10附录1:程序10附录2:实物图样15一、 设计方案111 控制器的选择方案一:采用CPLD/FPGA为控制核心,适合复杂逻辑控制和高速运算系统;方案二:使用51核单片机为控制核心,适合系统控制。综合分析,本系统采用AT89C52单片机,AT89C52单片机是完全集成的低功耗混合信号片上系统型MCU且是与51兼容的微控制器核,可以通过Keil软件编程且配合USB下载线下载程序,方便了程序的调试和运行。11
2、2 显示器的选择方案一:选用LED数码管显示小车的各种信息,LED显示信息量小、功耗大,同时还需要制作相应硬件驱动电路。方案二:选用液晶显示字符点阵LCD模块显示小车的各种信息,LCD信息量大、功耗低,它提供标准的并行或者串行接口,驱动简单,使用方便。根据实际情况,采用方案二。113 报警器的选择 方案一:选用1个经放大管的蜂鸣器,能发出报警声音,功耗低,基本达到预定效果,市面常见,容易找到,便宜。 方案二:选用LED发光二极管,通过发光报警,功耗低,但因为对于本设计超声波防撞系统声报警比较直接达到预期效果。 根据实际情况,采用方案一。114 开发软件的选择方案一:汇编语言。比较直接、简洁,不
3、适合复杂运算。不易读。方案二:C语言。比较灵活,适合复杂判断和运算。由于超声波测距算法比较复杂,所以选择方案二。120超声波测距的选择采用US100的超声波测距模块,而本模块是目前市场上性价比最高的超声波测距模块,拥有超宽的电压输入范围,功耗低于2mA,自带温度传感器对测距结果进行校正,内带看门狗,工作稳定可靠。图1 超声波测距US100模块实物图测距工作原理: (1)模块接收到触发信号后,自动发送 8个 40khz的方波,然后检测是否有信号返回。 (2)有信号返回,计算超声波发送和返回的时间间隔,最后综合计算得出当前的测试距离。 (3)当为电平触发模式时,模块将距离值转化为 340m/s时的
4、时间值的 2倍,通过 Echo端输出一高电平,可根据此高电平的持续时间来计算距离值。即距离值为:(高电平时间*340m/s)/2。注:因为距离值已经经过温度校正,此时无需再根据对环境温度补偿。超声波声速进行校正,即不管温度多少,声速选择 340m/s即可。开始系统初始化发送超声脉冲波等待反射超声波计算距离显示结果0.5s图2 主程序流程图130系统设计与结构框图AT89C52单片机片内资源丰富使得设计电路简化、可靠性大大提高,因此设计中使用AT89C52单片机作为整机的核心部件,根据题目要求设计了最小系统电路、声报警系统电路,采用了液晶显示模块、超声波测距模块,由5V普通电池提供了整个作品的电
5、源来源。整机总体框图如图1所示。C8051F410 单片机液晶显示电路超声波发送电路超声波接收电路声光报警电路温度补偿电路图3 系统结构框图二、 硬件设计电路 图2 最小系统电路图 三、软件 main() unsigned char k;res=0;for(k=0;k<250;k+);res=1; LCD_init(); /初始化LCD模块 LCD_clear(); /清屏幕blc=0;LCD_write_hanzi(1,0,0); /课LCD_write_hanzi(3,0,1); /程LCD_write_hanzi(5,0,2); /设LCD_write_hanzi(7,0,3);
6、/计LCD_write_hanzi(0,2,4); /距LCD_write_hanzi(2,2,5); /离LCD_write_shu(4,2,42); /:LCD_write_hanzi(0,4,6); /报LCD_write_hanzi(2,4,7); /警LCD_write_hanzi(4,4,8); /值LCD_write_shu(6,4,42); /:LCD_write_shu(7,4,1); /1LCD_write_shu(8,4,0); /0LCD_write_shu(9,4,0); /0tx=0;rx=0;TMOD=0x01;TH0=0;TL0=0; EA=1;ET0=1; E
7、X0=1; / 开外部中断1,EX0=0; 就是开外部中断 0 IT0=1; while(1)chaosheng();void T0_time() interrupt 1TH0=0;TL0=0;num+;四、调试 微处理器先把P1.0 置0,通过软件编程产生方波,送给超声波传感器,通过压电陶瓷晶片发射超声波(40 kHz 方波),延时300 us 左右(或者大于这个时间,这个延时是为了避免超声波直接对反射过来的波的干扰,它决定了盲区的大小,延时时间越长,盲区越大,300 us 延时大概是10 cm 的盲区)抑制输出干扰,同时启动内部定时器T0 开始计时。当超声波信号碰到障碍物时信号立即返回,而
8、微处理器在不断的扫描INT0 引脚,如果INT0 接收到的信号由高电平变为低电平,表明信号已经返回,微处理器进入中断处理程序,同时关闭定时器T0。再把定时器中的数据经过处理就可以得出超声波传感器与障碍物之间的距离,显示在LED 数码管上。然后再根据相应的情况判断是否要进行声光报警。程序启动时,首先进行初始化,接着是一个不断发射方波的过程,即调用发射子程序几遍,而且每次发射周期结束后都会在延时等待的过程中判断是否发生了中断,即是否有反射回波产生,当有反射回波产生时,进入中断服务程序,首先是关闭中断,读取定时器的时间t,根据时间,用超声波测距公式S=340×t/2,就可以得到障碍物到超声
9、波发射器之间的距离,根据计算的结果,将距离显示到LCD 显示器上。五、心得体会 六、参考文献 1.自动检测技术及应用梁森、欧阳三泰、王侃夫 编著,机械工业出版社;2.单片机应用系统设计技术-基于C51的Proteus仿真(第二版)张齐、朱宁西 编著,电子工业出版社;3.C程序设计(第四版)谭浩强 编著,清华大学出版社;七、附件附 件1:程序18#include <reg51.h>#include <intrins.h> #define uchar unsigned char#define uint unsigned intsbit sce = P03; /片选sbit
10、res = P02; /复位,0复位sbit dc = P04; /1写数据,0写指令sbit sdin = P05; /数据sbit sclk = P06; /时钟sbit blc = P07; /背光sbit tx=P00; /超声波发射信号端sbit rx=P01; /超声波接收信号端sbit fm=P10; /蜂鸣器int num;unsigned char code shuzi=/*- 文字: 0 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x0F,0x10,0x20
11、,0x20,0x10,0x0F,0x00,/*- 文字: 1 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x10,0x10,0xF8,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*- 文字: 2 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x70,0x08,0x08,0x08,0x88,0x70,0x00,0x00,0x30,0x28,0x24,0x22,0x21,0x30,0x00,/*- 文字: 3 -*/*- 宋体12; 此字体下对应的
12、点阵为:宽x高=8x16 -*/0x00,0x30,0x08,0x88,0x88,0x48,0x30,0x00,0x00,0x18,0x20,0x20,0x20,0x11,0x0E,0x00,/*- 文字: 4 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0xC0,0x20,0x10,0xF8,0x00,0x00,0x00,0x07,0x04,0x24,0x24,0x3F,0x24,0x00,/*- 文字: 5 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0xF8,0x08,0x88,0x88,0x08,0x08
13、,0x00,0x00,0x19,0x21,0x20,0x20,0x11,0x0E,0x00,/*- 文字: 6 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0xE0,0x10,0x88,0x88,0x18,0x00,0x00,0x00,0x0F,0x11,0x20,0x20,0x11,0x0E,0x00,/*- 文字: 7 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x38,0x08,0x08,0xC8,0x38,0x08,0x00,0x00,0x00,0x00,0x3F,0x00,0x00,0x00,0x00,/*-
14、文字: 8 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x70,0x88,0x08,0x08,0x88,0x70,0x00,0x00,0x1C,0x22,0x21,0x21,0x22,0x1C,0x00,/*- 文字: 9 -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0xE0,0x10,0x08,0x08,0x10,0xE0,0x00,0x00,0x00,0x31,0x22,0x22,0x11,0x0F,0x00,/*- 文字: a -10*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x
15、00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x19,0x24,0x22,0x22,0x22,0x3F,0x20,/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,/*- 文字: b -11*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x08,0xF8,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x3F,0x11,0x20,0x20,0x11,0x0E,0x00,/*- 文字: c -12*/*- 宋
16、体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x0E,0x11,0x20,0x20,0x20,0x11,0x00,/*- 文字: d -13*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x80,0x80,0x88,0xF8,0x00,0x00,0x0E,0x11,0x20,0x20,0x10,0x3F,0x20,/*- 文字: e -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x80,0x80,
17、0x80,0x80,0x00,0x00,0x00,0x1F,0x22,0x22,0x22,0x22,0x13,0x00,/*- 文字: f -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x80,0x80,0xF0,0x88,0x88,0x88,0x18,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*- 文字: g -16*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x6B,0x94,0x94,0x94,0x9
18、3,0x60,0x00,/*- 文字: h -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x08,0xF8,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20,/*- 文字: i -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x80,0x98,0x98,0x00,0x00,0x00,0x00,0x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*- 文字: j -19*/*- 宋体12; 此字体下对应的点阵为:宽x高
19、=8x16 -*/0x00,0x00,0x00,0x80,0x98,0x98,0x00,0x00,0x00,0xC0,0x80,0x80,0x80,0x7F,0x00,0x00,/*- 文字: k -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x08,0xF8,0x00,0x00,0x80,0x80,0x80,0x00,0x20,0x3F,0x24,0x02,0x2D,0x30,0x20,0x00,/*- 文字: l -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x08,0x08,0xF8,0x00,0x00,0x00,0x00,0
20、x00,0x20,0x20,0x3F,0x20,0x20,0x00,0x00,/*- 文字: m -22*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x20,0x3F,0x20,0x00,0x3F,0x20,0x00,0x3F,/*- 文字: n -23*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x3F,0x21,0x00,0x00,0x20,0x3F,0x20,/*- 文字:
21、 o -24*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x1F,0x20,0x20,0x20,0x20,0x1F,0x00,/*- 文字: p -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x80,0xFF,0xA1,0x20,0x20,0x11,0x0E,0x00,/*- 文字: q -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,
22、0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x0E,0x11,0x20,0x20,0xA0,0xFF,0x80,/*- 文字: r -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x20,0x20,0x3F,0x21,0x20,0x00,0x01,0x00, /*- 文字: s -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x33,0x24,0x24
23、,0x24,0x24,0x19,0x00,/*- 文字: t -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x80,0x80,0xE0,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x1F,0x20,0x20,0x00,0x00,/*- 文字: u : -30*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x00,0x00,0x00,0x80,0x80,0x00,0x00,0x1F,0x20,0x20,0x20,0x10,0x3F,0x20,/0x00,0x00,0x00,0xC0,0xC0
24、,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,/*- 文字: v -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x00,0x01,0x0E,0x30,0x08,0x06,0x01,0x00,/*- 文字: w -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x00,0x80,0x00,0x80,0x80,0x80,0x0F,0x30,0x0C,0x03,0x0C,0x30,0x0F
25、,0x00,/*- 文字: x -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x80,0x80,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x31,0x2E,0x0E,0x31,0x20,0x00,/*- 文字: y -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x81,0x8E,0x70,0x18,0x06,0x01,0x00,/*- 文字: z -35*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16
26、-*/0x00,0x80,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x21,0x30,0x2C,0x22,0x21,0x30,0x00,/*- 文字: - -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x01,/*- 文字: = -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x40,0x40,0x40,0x40,0x40,0x40,0x40,0x00,0x04,0x
27、04,0x04,0x04,0x04,0x04,0x04,0x00,/*- 文字: -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x0C,0x30,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x06,0x38,0xC0,0x00,/*- 文字: -39*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: -*/*- 宋体12;
28、 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0xFE,0x02,0x02,0x02,0x00,0x00,0x00,0x00,0x7F,0x40,0x40,0x40,0x00,/*- 文字: -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x02,0x02,0x02,0xFE,0x00,0x00,0x00,0x00,0x40,0x40,0x40,0x7F,0x00,0x00,0x00,/*- 文字: ; -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x80,0x00,0x0
29、0,0x00,0x00,0x00,0x00,0x80,0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,/*- 文字: ' -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x10,0x16,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: , -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x
30、16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xB0,0x70,0x00,0x00,0x00,0x00,0x00,/*- 文字: . -45*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00,0x00,0x00,/*- 文字: / -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0x00,0x80,0x60,0x18,0x04,0x
31、00,0x60,0x18,0x06,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/空格;unsigned char code maohao=/*- 文字: : -*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x00,0xC0,0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x30,0x00,0x00,0x00;unsigned char code jiaohao=
32、/*- 文字: + - -48*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x00,/*- 文字: + -49*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16 -*/0x00,0x00,0x10,0x10,0x7C,0x10,0x10,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*- 文字: - -50*/*- 宋体12; 此字体下对应的点阵为:宽x高=8x16
33、-*/0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x00;unsigned char code hanzi=/*0x10,0x10,0xD0,0xFF,0x90,0x10,0x00,0x10,0x10,0xD0,0xFF,0xD0,0x10,0x10,0x10,0x00, /林 0x04,0x03,0x00,0xFF,0x00,0x11,0x08,0x04,0x03,0x00,0xFF,0x00,0x03,0x04,0x08,0x00,*/* 0x24,0x24,0xA4,0xFE,0x
34、A3,0x22,0x00,0x22,0xCC,0x00,0x00,0xFF,0x00,0x00,0x00,0x00, /科0x08,0x06,0x01,0xFF,0x00,0x01,0x04,0x04,0x04,0x04,0x04,0xFF,0x02,0x02,0x02,0x00,*/* 0x84,0x64,0x24,0x24,0x2F,0x24,0x24,0xA4,0x24,0x24,0x2F,0x24,0x24,0xA4,0x64,0x00, /荣0x40,0x42,0x22,0x22,0x12,0x0A,0x06,0xFF,0x06,0x0A,0x12,0x22,0x22,0x42,0x
35、40,0x00,*/0x40,0x42,0xCC,0x00,0x00,0x00,0xFE,0x92,0x92,0xFE,0x92,0x92,0xFE,0x00,0x00,0x00, /课0x00,0x00,0x3F,0x10,0x08,0x22,0x12,0x0A,0x06,0xFF,0x06,0x0A,0x12,0x22,0x20,0x00,0x24,0x24,0xA4,0xFE,0x23,0x22,0x00,0x3E,0x22,0x22,0x22,0x22,0x22,0x3E,0x00,0x00, /程0x08,0x06,0x01,0xFF,0x01,0x06,0x40,0x49,0x49
36、,0x49,0x7F,0x49,0x49,0x49,0x41,0x00,0x40,0x40,0x42,0xCC,0x00,0x40,0xA0,0x9E,0x82,0x82,0x82,0x9E,0xA0,0x20,0x20,0x00,/设0x00,0x00,0x00,0x3F,0x90,0x88,0x40,0x43,0x2C,0x10,0x28,0x46,0x41,0x80,0x80,0x00,0x40,0x40,0x42,0xCC,0x00,0x40,0x40,0x40,0x40,0xFF,0x40,0x40,0x40,0x40,0x40,0x00, /计0x00,0x00,0x00,0x7F
37、,0x20,0x10,0x00,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3E,0x22,0xE2,0x22,0x3E,0x00,0xFE,0x22,0x22,0x22,0x22,0x22,0xE2,0x02,0x00,/距0x20,0x3F,0x20,0x1F,0x11,0x11,0x00,0x7F,0x44,0x44,0x44,0x44,0x44,0x47,0x40,0x00,0x04,0x04,0x04,0xF4,0x84,0xD4,0xA5,0xA6,0xA4,0xD4,0x84,0xF4,0x04,0x04,0x04,0x
38、00,/离0x00,0xFE,0x02,0x02,0x12,0x3A,0x16,0x13,0x12,0x1A,0x32,0x42,0x82,0x7E,0x00,0x00,0x10,0x10,0x10,0xFF,0x10,0x90,0x00,0xFE,0x82,0x82,0x82,0x92,0xA2,0x9E,0x00,0x00,/报0x04,0x44,0x82,0x7F,0x01,0x00,0x00,0xFF,0x80,0x43,0x2C,0x10,0x2C,0x43,0x80,0x00,0x12,0xEA,0xAF,0xAA,0xEA,0x0F,0xFA,0x02,0x88,0x8C,0x5
39、7,0x24,0x54,0x8C,0x84,0x00, /警0x02,0x02,0xEA,0xAA,0xAA,0xAB,0xAA,0xAB,0xAA,0xAA,0xAA,0xAA,0xEA,0x02,0x02,0x00,0x00,0x80,0x60,0xF8,0x07,0x04,0xE4,0xA4,0xA4,0xBF,0xA4,0xA4,0xE4,0x04,0x00,0x00,/值0x01,0x00,0x00,0xFF,0x40,0x40,0x7F,0x4A,0x4A,0x4A,0x4A,0x4A,0x7F,0x40,0x40,0x00,;void delay_1ms(void)/1ms延时函
40、数unsigned int i;for (i=0;i<500;i+) ;void delay1(uint x) uint a,b; for(a=x;a>0;a-) for(b=110;b>0;b-); /*-LCD_write_byte: 使用SPI接口写数据到LCD输入参数:dt:写入的数据;command :写数据/命令选择;编写日期:20080918 -*/void LCD_write_byte(unsigned char dt, unsigned char command)unsigned char i; sce=0;dc=command;for(i=0;i<8
41、;i+) if(dt&0x80)sdin=1;elsesdin=0;dt=dt<<1;sclk=0; sclk=1; dc=1;sce=1;sdin=1;/*-LCD_init: 3310LCD初始化编写日期:20080918 - */void LCD_init(void)res=0; delay_1ms(); res=1; LCD_write_byte(0x21,0);/初始化Lcd,功能设定使用扩充指令LCD_write_byte(0xd0,0);/设定液晶偏置电压LCD_write_byte(0x20,0);/使用基本指令LCD_write_byte(0x0C,0);
42、/设定显示模式,正常显示/*-LCD_set_XY: 设置LCD坐标函数输入参数:X:083 Y:05编写日期:20080918 -*/void LCD_set_XY(unsigned char X, unsigned char Y)LCD_write_byte(0x40 | Y, 0);/ columnLCD_write_byte(0x80 | X, 0);/ row /*-LCD_clear: LCD清屏函数编写日期:20080918 -*/void LCD_clear(void)unsigned char t;unsigned char k;LCD_set_XY(0,0);for(t=0
43、;t<6;t+) for(k=0;k<84;k+) LCD_write_byte(0x00,1); /*-LCD_write_shu: 显示8(宽)*16(高)点阵列数字字母符号等半角类输入参数:c:显示的字符;编写日期:20080918 -*/void LCD_write_shu(unsigned char row, unsigned char page,unsigned char c) /row:列 page:页 dd:字符unsigned char i; LCD_set_XY(row*8, page);/ 列,页 for(i=0; i<8;i+) LCD_write_byte(shuzic*16+i,1); LCD_set_XY(row*8, page+1);/ 列,页 for(i=8; i<16;i+) LCD_write_byte(shuzic*16+i,1); /*-LCD_write_hanzi: 显示16(宽)*16(高)点阵列汉字等半角类输入参数:c:显示的字符;编写日期:20080918 -*/void LCD_write_hanzi(unsigned char row, unsigne
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农产品质量安全检测知识点试题及答案
- 综合复习园艺师考试试题及答案
- 农艺师考试复习中的小技巧与方法试题及答案
- 2024年花艺师考试的重要能力与知识点的梳理与总结方式试题及答案
- 2024年福建事业单位考试新题型探讨与试题及答案
- 成功案例福建事业单位考试试题及答案
- 农作物分类与栽培管理的试题及答案
- 植物命名规则试题及答案
- 2024年各高校辅导员试题分析试题及答案
- 园艺师考试知识点的创新应用研究试题及答案
- 河南师范大学通用模板课件
- GD87典管电子版完整
- 河南省绿色建筑评价表(建筑专业)
- 职校招生宣传PPT
- 电磁信息论白皮书
- 药理学考研历年真题汇总(重点题)
- 云南省文山壮族苗族自治州各县区乡镇行政村村庄村名居民村民委员会明细
- 质量目标管理表
- DBJ41T 074-2013 高压细水雾灭火系统设计、施工及验收规范
- Q∕SY 05262-2019 机械清管器技术条件
- 《出纳员登记日记账》 课件
评论
0/150
提交评论