单片机课程设计stc89c52+nrf24l01_第1页
单片机课程设计stc89c52+nrf24l01_第2页
单片机课程设计stc89c52+nrf24l01_第3页
单片机课程设计stc89c52+nrf24l01_第4页
单片机课程设计stc89c52+nrf24l01_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精品好资料学习推荐武汉纺织大学单片机原理与应用课程设计设计题目:nrf24l01数据传送学院:电子与电气工程学院 班级:电子11201 姓名:张啸宇 胡安凯 QQ号:1272779714目录一、思想出路:3二、设计方案:32.1、硬件设计方案:32.2、软件设计方案:31.驱动文件:32.发送端主程序43.接收端主程序52.3、接线:6三、选题方案7四、系统原理图74.1、发射端:74.2、接收端:8五、程序精选8六、总结86.1、功能总结:86.2、功能完善:96.3、自我总结:9七、展望:9一、思想出路:物联网是新一代信息技术的重要组成部分,也是“信息化”时代的重要发展阶段。随着我国互联网

2、的发展,物联网相关概念也随之进入了人们的视线,物联网是继计算机、互联网与移动通信网之后的又一次信息产业化浪潮。而基于物联网的智能家居系统也渐渐浮出水面,科学技术在发展,也在慢慢的改变我们的生活。因此,为了适应潮流,我们选择了nrf24l01模块,和单片机,组成一个简单的wifi传输系统,实现简单的物联网功能。二、设计方案:2.1、硬件设计方案:一个完整的传输系统至少应该有两个部分组成。一个发射端,一个接收端。发送端: 硬件:nRF24l01模块 发送部分 STC89C52RC单片机小系统控制发送部分 数码管显示发送值代号 8键独立键盘触发发送接收端:硬件:nRF24l01模块接收部分 STC8

3、9C52RC单片机小系统控制接收处理显示部分LCD1602显示单片机处理后的要显示内容2.2、软件设计方案:1.驱动文件:nRF24l01的驱动头文件(引脚定义和功能函数定义),LCD1602驱动头文件(引脚定义和功能函数定义),52单片机驱动头文件。2.发送端主程序程序存储器中存储8组发送数组,扫描按键后对应子函数发送。发送成功后数码管点亮。(1)8组16字节数组。unsigned char code tx_buf【16】(2)键盘扫描程序unsigned char Key_Scan()unsigned char keyValue = 0 , i; /保存键值/-检测按键1-/if (GPI

4、O_KEY != 0xFF)/检测按键K1是否按下Delay10ms(1);/消除抖动if (GPIO_KEY != 0xFF)/再次检测按键是否按下keyValue = GPIO_KEY;i = 0;while (i50) & (GPIO_KEY != 0xFF) /检测按键是否松开Delay10ms(1);i+;/GPIO_KEY在引脚定义中为 #define GPIO_KEY P2 对应P2口。(3)主程序跳转到子函数部分:start:while (1)keyNum = Key_Scan(); /扫描键盘switch (keyNum)case(0xFE) : fun0();gotosta

5、rt;break; /返回按键K1的数据case(0xFD) : fun1();gotostart;break; /返回按键K2的数据case(0xFB) : fun2();gotostart;break /返回按键K3的数据case(0xF7) : fun3();gotostart;break; /返回按键K4的数据case(0xEF) : fun4();gotostart;break; /返回按键K5的数据case(0xDF) : fun5();gotostart;break;/返回按键K6的数据case(0xBF) : fun6();gotostart;break; /返回按键K7的数据

6、case(0x7F) : fun7();gotostart;break; /返回按键K8的数据default: break;(4)子函数:void fun0()nrf24l01_init(NRF24L01_TX_MODE);/设置为发送端nrf24l01_set_tx_addr(tx_addr);/设置发送端地址n=1000;while(n-)/写延时为了确保接受成功率 status = nrf24l01_send(tx_buf, 16);/发送数据ledValue = 0xEE; 点亮数码管3.接收端主程序接受发送来的数据。Cpu处理。写入液晶屏。while(1)lcd1602_set_po

7、int(0, 0);lcd1602_disp_char( );lcd1602_disp_char(W);lcd1602_disp_char(e);lcd1602_disp_char(l);lcd1602_disp_char(c);lcd1602_disp_char(o);lcd1602_disp_char(m);lcd1602_disp_char(e);lcd1602_disp_char( );lcd1602_disp_char(t);lcd1602_disp_char(o);lcd1602_disp_char( );lcd1602_disp_char(L);lcd1602_disp_char

8、(I);lcd1602_disp_char(B);lcd1602_disp_char( );status = nrf24l01_recv(rx_buf);if(status & 0x40)lcd1602_set_point(0, 1);lcd1602_disp_char(T);lcd1602_disp_char(h);lcd1602_disp_char(e);lcd1602_disp_char( );lcd1602_disp_char(B);lcd1602_disp_char(O);lcd1602_disp_char(O);lcd1602_disp_char(K);lcd1602_disp_c

9、har(rx_buf8);lcd1602_disp_char( );lcd1602_disp_char(i);lcd1602_disp_char(s);lcd1602_disp_char( );a=rx_buf8;b=a%2;if(b=1)lcd1602_disp_char( );lcd1602_disp_char(I);lcd1602_disp_char(N);if(b=0)lcd1602_disp_char(O);lcd1602_disp_char(U);lcd1602_disp_char(T);2.3、接线:NRF24L01_MISO= P10;NRF24L01_MOSI= P11;NR

10、F24L01_SCK= P12;NRF24L01_CSN= P13;NRF24L01_CE= P14;NRF24L01_IRQ= P32;发送端:数码管对应P1口。按键对应P2口。接收端:LCDLCD1602_RS = P17;LCD1602_RW = P16;LCD1602_EN = P15;LCD1602_DATA P2三、选题方案智能图书馆:8个按键分别对应八本书。按下键就会发送对应的书目号到图书馆中心处理器,处理器中存有书目在或借出的数据。并返还到大屏幕上,可以直观的了解到书是否在图书馆。四、系统原理图4.1、发射端:4.2、接收端:五、程序精选参见软件设计方案。六、总结6.1、功能总

11、结:通电按下开关以后,发射端按下书目代号,接收端能够很快反映出书本在库情况。6.2、功能完善:功能方面仍有很多不足,有的是所学知识不够,有点是应用经验不够。整个系统并没有达到预期所想的完美功能。在功能完善方面主要有:开始预计将接收端P0口作为书本在库情况输入口,通过另外一个单片机的P口向接收端的P0口写入一个8位二进制数,1代表在库,2代表出库。发送端发送过来书目号后,对应P0口对应引脚的电平来判断并写入显示屏。由于在焊板子过程中不熟悉导致走线干扰,P0口很难在焊上排阻。查阅相关资料,得知P0口不接上拉电阻,对引脚写入高电平后可外部写入数据。给P0口写P0=0xff。在实际硬件调试过程中发现输

12、出结果都为IN。可能是程序算法部分出现问题,这个问题还在完善中。6.3、自我总结:在焊接过程中,学会了很多经验,以后焊板子之前现在纸上或者用AD软件画好图,这样走线的时候就能避免飞线和走线干扰复杂的情况。对焊接的板子美观度也有所提升。编程方面,要认真细心,可能语法上没有问题,但是在调试中会出现各种奇怪的突发情况就需要去查,很费时间,所以编写的时候一定要认真细心。另外就是不要轻易放弃,有时候成功就在下一秒钟,我的的程序改了3天,都是因为一个问题,发送完会自动卡死不能继续进行,程序改了很多遍,也请教了很多人也没有得到解决,正当我要放弃的时候,无意间修改了一个引脚的定义,就成功了,成功的喜悦让我觉得

13、特别有成就感。所以不管经历多少失败一定要坚持要相信自己可以成功。七、展望:物联网系统在不断向前发展,应用也会越来越广泛。我们这个系统,随着学习知识的累积将会加以完善和升级,例如结合手机和pad代替发射端,用更高级的中央处理系统作为接收端,通过wifi将手中的终端或者app与中心处理器连接,实现智能化图书馆功能,再也不用一个app就能知道书本的借阅情况。也不用再去排队借书了,在书本上添加二维码标志,手机扫一扫就可以借书,还书时只需将书本放入借出时的位置就可以实现还书。在管理方面将会大幅减少图书管理员的人数。软件方面,可以实现服务器的互动,在线阅览,足不出户可以享受图书馆的服务。系统的应用范围不仅仅局限于智能图书

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论