河南农业大学理学院本科毕业论文
图A3 小车右转仿真图
图A4 遇障报警仿真图
33
河南农业大学理学院本科毕业论文
图A5 遇障倒车仿真图
34
河南农业大学理学院本科毕业论文
附录B:源程序
#include
sbit DQ = P2^0; //温度传送数据IO口 bit flag1=0; uchar TempBuffer[5];
uchar temp_value; //温度值 unsigned char code disp1[]={\
35
河南农业大学理学院本科毕业论文
unsigned char code disp2[]={%unsigned char code disp3[]={%unsigned char code disp4[]={\ stop %unsigned char code disp5[]={%unsigned char code disp6[]={%unsigned char code disp7[]={\void delay(unsigned int i) {
unsigned int j; for(i;i>0;i--)
for(j=110;j>0;j--); }
void write_com(uchar com) { }
void write_date(uchar date) {
//延时函数,延时i毫秒
rs=0; lcden=0; P0=com; delay(5); lcden=1; delay(5); lcden=0;
rs=1; lcden=0; P0=date; delay(5); lcden=1;
36
河南农业大学理学院本科毕业论文
}
delay(5); lcden=0;
/********************************/
/***********ds18b20子程序*************************/ /***********ds18b20延迟子函数(晶振12MHz )*******/ void delay_18B20(unsigned int i) { }
/**********ds18b20初始化函数**********************/ void Init_DS18B20(void) { }
/***********ds18b20读一个字节**************/ unsigned char ReadOneChar(void) {
while(i--);
unsigned char x=0;
DQ = 1; //DQ复位 delay_18B20(8); //稍做延时 DQ = 0; //单片机将DQ拉低 delay_18B20(80); //精确延时 大于 480us DQ = 1; //拉高总线 delay_18B20(14);
x=DQ; //稍做延时后 如果x=0则初始化成功 x=1则初始化失败 delay_18B20(20);
uchar i=0; uchar dat = 0; for (i=8;i>0;i--)
37