資源簡介
畢業設計__基于單片機的公交車自動報站系統
1、下行控制報站:首先按下(下行設置按鍵),(下行指示燈)亮,然后按下(手動播報)按鍵控制播報下一站
2、上行控制報站:首先按上(上行設置按鍵),(上行指示燈)亮,然后按下(手動播報)按鍵控制播報下一站
3、按下關閉播報按鍵,則關閉播報功能和清除顯示
(需要實物或者實物相關資料私聊)

代碼片段和文件信息
#include?
#define?uint?unsigned?int
#define?uchar?unsigned?char
#include?“value.h“
sbit?x_key=P1^3;
sbit?s_key=P1^4;
sbit?bz_key=P1^5;
sbit?gb_key=P1^6;
sbit?x_LED=P2^6;
sbit?s_LED=P2^7;
uchar?x_modes_mode;
uchar?x_nums_num;
bit?flag_200ms?=?1;
uchar?flag_c_en;
bit?flag_100ms;
sbit?dq=P3^2; ??//18b20?IO口的定義
uint?temperature?;????//溫度變量
/************?延時函數??*****************/
void?delay_uint(uint?z)
{
?while(z--);
}
/********************************************************************
*?名稱?:?delay_1ms()
*?功能?:?延時1ms函數
*?輸入?:?q
*?輸出?:?無
***********************************************************************/
void?delay_1ms(uint?q)
{
?uint?ij;
?for(i=0;i?for(j=0;j<115;j++);
}
uchar?dis_lcd[10];
#include?“lcd12864bu.h“
/******************顯示時間函數***************************/
void?dis_shijian() //顯示時間
{
?write_shu16(00*8shi0);
?write_shuzi(10*22*8fuhao[1]0);
?write_shu16(03*8fen0);
?write_shuzi(10*25*8fuhao[1]0);
?write_shu16(06*8miao0);
?write_yhanzi(205*16qita[6]);???//星期
?//write_shu16(014*8week0);
?if(week==0)
?{
??write_yhanzi(107*16xingqi[6]);???
?}
?if(week==1)
?{
??write_yhanzi(107*16xingqi[1]);??
?}
?if(week==2)
?{
??write_yhanzi(107*16xingqi[2]);???
?}
?if(week==3)
?{
??write_yhanzi(107*16xingqi[3]);???
?}
?if(week==4)
?{
??write_yhanzi(107*16xingqi[4]);???
?}
?if(week==5)
?{
??write_yhanzi(107*16xingqi[5]);???
?}
?if(week==6)
?{
??write_yhanzi(107*16xingqi[6]);???
?}
?write_shu16(1*20*80x200);
?write_shu16(1*22*8nian0);
?write_shuzi(11*24*8fuhao[0]0);
?write_shu16(1*25*8yue0);
?write_shuzi(11*27*8fuhao[0]0);
?write_shu16(1*28*8ri0);
?write_shu18b20(1*212*8temperature0);
?write_shuzi(11*214*8dian0);
}
/************初始化顯示*****************/
void?init_12864_dis()?//初始化顯示
{
?cs1=1;?//左屏開顯示
?cs2=0;
?dis_shijian(); //顯示時間
}
/***********************18b20初始化函數*****************************/
void?init_18b20()
{
?bit?q;
?dq=1; //把總線拿高
?delay_uint(1); ????//15us
?dq=0; //給復位脈沖
?delay_uint(80); //750us
?dq=1; //把總線拿高?等待
?delay_uint(10); //110us
?q=dq; //讀取18b20初始化信號
?delay_uint(20); //200us
?dq=1; //把總線拿高?釋放總線
}
/*************寫18b20內的數據***************/
void?write_18b20(uchar?dat)
{
?uchar?i;
?for(i=0;i<8;i++)
?{ ?//寫數據是低位開始
??dq=0; ?//把總線拿低寫時間隙開始?
??dq=dat&0x01;?//向18b20總線寫數據了
??delay_uint(5); ?//?60us
??dq=1; ?//釋放總線
??dat>>=1;
?}
}
/*************讀取18b20內的數據***************/
uchar?read_18b20()
{
?uchar?ivalue;
?for(i=0;i<8;i++)
?{
??dq=0; ?//把總線拿低讀時間隙開始?
??value>>=?1; ?//讀數據是低位開始
??dq=1; ?//釋放總線
??if(dq==1) ?//開始讀寫數據?
??value|=0x80;
??delay_uint(5); ?//60us 讀一個時間隙最少要保持60us的時間
?}
?return?value; ?//返回數據
}
/*************讀取溫度的值?讀出來的是小數***************/
uint?read_temp()
{
?uint?value;
?uchar?low; ???//在讀取溫度的時候如果中斷的太頻繁了,就應該把中斷給關了,否則會影響到18b20的時序
?init_18b20(); ???//初始化18b20
?write_1
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????4000??2016-07-23?11:20??仿真源程序\ds1302.h
?????文件???????7582??2016-07-23?12:13??仿真源程序\lcd12864bu.h
?????文件??????25073??2013-05-03?15:21??仿真源程序\nongli.h
?????文件???????6376??2009-05-07?14:37??仿真源程序\STARTUP.A51
?????文件??????14048??2016-07-23?12:13??仿真源程序\STARTUP.LST
?????文件????????749??2016-07-23?12:13??仿真源程序\STARTUP.OBJ
?????文件??????10368??2016-07-23?12:08??仿真源程序\value.h
?????文件??????54196??2016-07-23?12:13??仿真源程序\公交報站仿真
?????文件????????731??2018-06-10?09:02??仿真源程序\公交報站仿真.build_log.htm
?????文件??????13607??2016-07-23?12:10??仿真源程序\公交報站仿真.c
?????文件??????22383??2016-07-23?12:13??仿真源程序\公交報站仿真.hex
?????文件?????????57??2016-07-23?12:13??仿真源程序\公交報站仿真.lnp
?????文件??????24855??2016-07-23?12:13??仿真源程序\公交報站仿真.LST
?????文件??????67021??2016-07-23?12:13??仿真源程序\公交報站仿真.M51
?????文件??????68845??2016-07-23?12:13??仿真源程序\公交報站仿真.OBJ
????.......??????1855??2016-07-23?12:13??仿真源程序\公交報站仿真.opt.bak
?????文件?????152913??2016-07-23?12:13??仿真源程序\公交報站仿真.plg
????.......??????2170??2016-07-23?00:29??仿真源程序\公交報站仿真.Uv2.bak
????.......?????71994??2018-06-10?09:02??仿真源程序\公交報站仿真.uvgui.Administrator
????.......?????70899??2018-05-15?16:41??仿真源程序\公交報站仿真.uvgui_Administrator.bak
????.......??????5837??2018-05-15?16:41??仿真源程序\公交報站仿真.uvopt
????.......?????14043??2018-05-05?09:26??仿真源程序\公交報站仿真.uvproj
?????文件???????1858??2016-07-23?00:29??仿真源程序\公交報站仿真_Opt.Bak
?????文件??????????0??2016-07-22?23:12??仿真源程序\公交報站仿真_Uv2.Bak
????.......??????5835??2018-05-05?09:26??仿真源程序\公交報站仿真_uvopt.bak
?????文件?????123730??2018-05-21?15:41??仿真圖\Last?Loaded?用DS1302與12864LCD設計的可調式中文電子日歷.DBK
?????文件??????22383??2016-07-23?12:13??仿真圖\公交報站仿真.hex
?????文件?????123744??2018-06-10?09:04??仿真圖\用DS1302與12864LCD設計的可調式中文電子日歷.DSN
?????文件???????1507??2018-06-10?09:04??仿真圖\用DS1302與12864LCD設計的可調式中文電子日歷.PWI
?????目錄??????????0??2018-06-10?09:02??仿真源程序
............此處省略4個文件信息
- 上一篇:口腔醫療管理系統代碼及安裝
- 下一篇:數據結構試題(哈工大期末考試)
評論
共有 條評論