您的位置 首页 制造

单片机智能房间规划

概况:1,可用键盘控制各个房间的用电器2,也可用无线遥控控制各个房间里的电器3,也可连接电脑,用电脑程序,控制各个房间里的电器4,带一个大

概略:

1,可用键盘操控各个房间的用电器.
2,也可用无线遥控操控各个房间里的电器.
3,也可衔接电脑,用电脑程序,操控各个房间里的电器.
4,带一个大数码管实时时钟,用DS1302做.
只需时和分位,可替代大钟.
整点报时(蜂鸣一下),可设定2 个闹铃,
5,可用4*4键盘直接调整时刻,设定闹钟.
6,用两个单片机相互通讯.
7,一个单片机担任键盘,时钟,数码管显现,蜂鸣器
(取名2号机)
8,另一个单片机担任检测传感器输入,衔接NRF24L01无线模块。输出操控各个房间用电器,(取名1号机)
9,现在想到输入传感器有,2个光敏电阻传感器,一个磁铁干簧管传感器。
10,输出器材有,各房间的电灯,电扇,一个报警号筒。
功用将会不断加…….
可学到的知识点:
我认最主要的是归纳各个模块的才能。
1、DS1302的使用
2、键盘扫描程序、键盘输入程序、。。。
工程发展:
2012年4月3日
做了有一个星期了,已完结时刻显现、4*4键盘直接调整时刻、设定闹钟、整点报时。
2012年4月9日
现将一些变量、功用函数名摘抄如下。
bit tiaoshibz;//调时标明
uchar zhishuPointer;//调时 位指针
uchar xianshipointer;//显现旋转指针
uchar miaojilu;//秒记载,用于秒位闪耀
uchar miaojishu;//秒位闪亮的时刻
bit miaobz;//秒位闪亮完毕的美丽
uchar data xiancun[4];//显现缓存xiancun[0]为时的十位 xiancun[3]为分的个位
bit naozhongbz1,naozhongbz2;//闹钟发动美丽
bit naozhongnaolingbz;//闹钟闹铃开端美丽
uchar naozhong1[4];//闹钟用守时用 naozhong[0]为时的十位 naozhong[3]为分的个位
uchar naozhong2[4];
uchar zhengdianbaoshi;//整点报时
/********键盘用***********/
uchar code SKEY[16]={10,11,12,13,3,6,9,14,2,5,8,0,1,4,7,15};
uchar code act[4]={0xfe,0xfd,0xfb,0xf7};
uchar code SEG7[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

/**********DS1302功用函数声明**************/
void DS1302InputByte(unsigned char d);
unsigned char DS1302OutputByte(void);
void Write1302(unsigned char ucAddr, unsigned char ucDa);
unsigned char Read1302(unsigned char ucAddr);
void DS1302_SetProtect(bit flag);
void DS1302_SetTime(unsigned char Address, unsigned char Value);
void DS1302_GetTime(struct Clock *Time);
void TimeToStr(struct Clock *Time,bit bz);
/*void DateToStr(struct Clock *Time);*/
void Initial_DS1302(void);
//void BurstWrite1302(unsigned char *pWClock);//往DS1302写入时钟数据(多字节方法)
//void BurstRead1302(unsigned char *pRClock);//读取DS1302时钟数据(时钟多字节方法)
//void DS1302_TimeStop(bit flag); // 是否将时钟中止

/***********功用函数声明*******************/
char scan_key(void);
void ControlInput(uchar a);
uchar jianceshuzhi(uchar pointer,char n);//检测输入数值是否合法
void zhishu(void);//键盘直接输入
void naozhong(uchar bz1,uchar bz2);//闹钟 内含整点报时(蜂鸣一下)
void baojing(uint);//闹铃声
void shanshuo(uchar a);
/*********串口函数声明**************/
void fasong (uchar a); //发送一字节
void huiying(void);//回应电脑,(发送输入,输出的状况给电脑)
void yingda(void);
void yueding(bit a);
void Stringfasong(uchar *p);
前天总算把两个单片机用SPI接口通讯的试验做成功了。
现在正在研讨NRF24L01。把这个试验做成功,再添加到智能房间程序中,就可以用无线遥控家里的用电器了。
2012年5月1日
NRF24L01 收发试验己成功。
2012年5月6日
前几天研讨NRF2401时,一不小心接错了线,烧坏了一块。
昨日又在淘宝上买了两块,现在还在路上。
这几天又研讨了VB程序,就是在我上一年编的那个人机界面上改的。取名叫“人机界面”。

下面是截图:
能完成的功用有:
8个指令按钮可操控P0的状况,单击一次,状况取反。
绿色正方形指示P0各位状况。
8个绿色圆点指示P2口各位状况。
指示都是具有实时性的。只需端口状况改动,单片机就会把状况发给电脑指示出来。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/zhizao/318692.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部