資源簡介
此代碼包含ds18b20溫度檢測、濕度傳感器檢測以及光照傳感器檢測,并通過oled進行室內溫濕度、光照強度的顯示,而且含RFID智能門禁控制與燈光控制功能,可以用于智能家居控制。
代碼片段和文件信息
/********************?(C)?COPYRIGHT?2015?********************
*?文件名??????????:?main.c
*?作者????????????:?優靈電子開發團隊
*?版本????????????:?V3.1.0.0
*?日期????????????:?2015-5-10
*?描述????????????:?接收來自串口的簡單數據,給模塊用IIC發送對應命令,執行成功后
直接通過串口返回數據。
*?技術支持????????:?QQ:?3419865840
********************************************************************************/
/*?包含文件?-------------------------------------------------------------------*/
#include“main.h“
#include
/*?類型定義?-------------------------------------------------------------------*/
typedef?struct?_CMD
{
??unsigned?char?Buffer[32];
??unsigned?char?Point;
??unsigned?char?RecFlag;
}CMD;
/*?宏定義?---------------------------------------------------------------------*/
#define?SlaveAddress?0X00
/*?本文件使用的變量?-----------------------------------------------------------*/
sbit?SCL?=?P1^7;
sbit?SDA?=?P1^6;
CMD?Cmd;
/*?本文件使用的函數聲明?-------------------------------------------------------*/
void?Delay5us();
void?IIC_Start();
void?IIC_Stop();
void?IIC_SendByte(unsigned?char?dat);
unsigned?char?IIC_RecvByte();
void?IIC_SendACK(bit?ack);
bit?IIC_RecvACK();
unsigned?char?CheckSum(unsigned?char?*dat?unsigned?char?num);
void?ClearBuffer(void);
void?Command(void);
/*?本文件函數體?---------------------------------------------------------------*/
/*******************************************************************************
*?函數名?????????:?main
*?描述???????????:?主函數
*?輸入???????????:?無
*?輸出???????????:?無
*?返回???????????:?無
*******************************************************************************/
void?main(void)
{
//串口初始化,單片機型號STC89C52RC,晶振是11.0592M,波特率9600
SCON?=?0X50;
TMOD?=?0X20;
TH1?=?TL1?=?0XFD;
TR1?=?1;
while(1)
{
if(RI)
{
RI?=?0;
//一鍵讀卡命令
if(SBUF??==?0x10)
{
Cmd.Buffer[0]?=?0x03; //命令長度
Cmd.Buffer[1]?=?0x00; //地址
Cmd.Buffer[2]?=?0x10;?//命令字
Command();
//正確時返回10字節
//0.命令長度?為0x0A
//1.命令字節為0x90
//2.執行狀態為0
//3.4.卡類型
//5.6.7.8卡號
//錯誤時返回3字節
//0.命令長度為0x03
//1.命令字為0x90
//2.執行狀態可能是0xfe0xff
}
//讀塊數據
else?if(SBUF?==?0X11)
{
Cmd.Buffer[0]?=?0x04; //命令長度
Cmd.Buffer[1]?=?0x00;?//地址
Cmd.Buffer[2]?=?0x11;?//命令字
Cmd.Buffer[3]?=?0x01;?//塊號
Command();
}
//寫塊數據
else?if(SBUF?==?0X12)
{
Cmd.Buffer[0]?=?0x14;//命令長度
Cmd.Buffer[1]?=?0x00;//地址
Cmd.Buffer[2]?=?0x12;//命令字
Cmd.Buffer[3]?=?0x01;//塊號
Cmd.Buffer[4]?=?0x00;//數據
Cmd.Buffer[5]?=?0x11;
Cmd.Buffer[6]?=?0x22;
Cmd.Buffer[7]?=?0x33;
Cmd.Buffer[8]?=?0x44;
Cmd.Buffer[9]?=?0x55;
Cmd.Buffer[10]?=?0x66;
Cmd.Buffer[11]?=?0x77;
Cmd.Buffer[12]?=?0x88;
Cmd.Buffer[13]?=?0x99;
Cmd.Buffer[14]?=?0xAA;
Cmd.Buffer[15]?=?0xBB;
Cmd.Buffer[16]?=?0xCC;
Cmd.Buffer[17]?=?0xDD;
Cmd.Buffer[18]?=?0xEE;
Cmd.Buffer[19]?=?0xFF;
Command();
}
//辦卡
else?if(SBUF?==?0
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????202092??2017-04-12?16:49??BS?-?副本?-?副本\最近?-?副本\s50\S50卡片資料(中文).pdf
?????文件???23510720??2017-04-12?16:47??BS?-?副本?-?副本\最近?-?副本\使用\.net+fr
?????文件?????860107??2017-04-12?16:42??BS?-?副本?-?副本\最近?-?副本\使用\Y13R+說明書.pdf
?????文件?????622592??2017-04-12?16:46??BS?-?副本?-?副本\最近?-?副本\使用\Y13R上位機測試軟件.exe
?????文件????3175920??2017-04-12?16:47??BS?-?副本?-?副本\最近?-?副本\使用\串口線驅動.exe
?????文件?????870100??2017-04-12?16:48??BS?-?副本?-?副本\最近?-?副本\硬件\Y13R+硬件設計手冊+.pdf
?????文件??????12053??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC
?????文件?????113314??2017-05-24?19:09??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.build_log.htm
?????文件???????2598??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.hex
?????文件?????????24??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.lnp
?????文件??????17722??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.M51
?????文件???????3376??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.plg
?????文件??????71101??2016-12-02?11:30??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvgui.admin
?????文件??????70869??2016-12-02?11:30??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvgui.Administrator
?????文件??????72044??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvgui.liangliang
?????文件??????70543??2016-12-02?11:30??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvgui_admin.bak
?????文件??????70870??2016-12-02?11:30??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvgui_Administrator.bak
?????文件??????85816??2017-04-05?00:37??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvgui_liangliang.bak
?????文件???????5374??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvopt
?????文件??????13408??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC.uvproj
?????文件???????5374??2016-12-02?11:30??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC_uvopt.bak
?????文件??????13611??2016-12-02?11:30??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\IIC_uvproj.bak
?????文件??????12943??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\main.c
?????文件????????854??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\main.h
?????文件??????21867??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\main.LST
?????文件??????14717??2017-04-05?00:47??BS?-?副本?-?副本\最近?-?副本\軟件\51?IIC示例\main.OBJ
?????文件???????3230??2017-04-11?14:06??BS?-?副本?-?副本\最近?-?副本\軟件\51?串口示例\lcd.c
?????文件????????924??2017-04-11?14:06??BS?-?副本?-?副本\最近?-?副本\軟件\51?串口示例\LCD.H
?????文件???????5586??2017-04-07?13:49??BS?-?副本?-?副本\最近?-?副本\軟件\51?串口示例\lcd.LST
?????文件???????5347??2017-04-07?13:49??BS?-?副本?-?副本\最近?-?副本\軟件\51?串口示例\lcd.OBJ
............此處省略330個文件信息
- 上一篇:模型格式轉換工具(osgb-obj-ive)
- 下一篇:xshell5 永久使用
評論
共有 條評論