




已阅读5页,还剩7页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学校 电子工程设计报告 题目 超声波自动探测装置 班级 * 组员 * * * 2013年 11 月25 日 summary ultrasonic automatic detection device is a simple device based on assist security guard for security work.this device uses ultrasonic probe, buzzer alarm to assist the security work.this system adopts stc89c52 single-chip microcomputer as the main controller, nrf24l01 as communication device in order to send signals to the terminal, make security room can know the situation in a timely manner. 摘要 超声波自动探测装置是一款基于协助保安进行安保工作的简易 装置。此装置采用超声波进行探测,蜂鸣器报警以协助安保工作。此 系统采用stc89c52 单片机作为主控制器,nrf24l01 作为通信装置 以便把信号发送到终端,使安保室能够及时了解情况。 目录 1、总体设计概述总体设计概述1 2、硬件设计硬件设计2 3、软件设计软件设计3 4、制作心得制作心得4 1、总体设计概述总体设计概述 本设计采用 89c52 单片机作为主控制器,采用超声波探测。如 探测到有人则返回信号给单片机,单片机控制蜂鸣器发出警报。 同时, 单片机还可控制nrf24l01 无线模块发送信号到终端保安室,使保安 人员能够尽快掌握情况,从而实现协助保安进行安保工作的任务。 如 果是内部人士到来,则可使用事先配置好的红外发射装置发送信号 到超声波探测装置,此装置即可屏蔽报警信号。 二、硬件设计二、硬件设计 1、单片机 通过分析对本设计所用到的单片机的功能,我们知道,此设计 对单片机要求并不高,采用8 为单片机完全能够满足要求。 台湾义隆 单片机价格低,体积小,但是我们没接触过。 因此我们采用了比较常 见和我们用的比较多的stc89c52 单片机。stc89c52 是 stc 公司生产的一种 低功耗、 高性能cmos8 位微控制器,具有 8k 在系统可编程 flash 存储器。 stc89c52 使用 经典的mcs-51内核,但做了很多的改进使得芯片具有传统 51单片机不具备的功能。在单 芯片上,拥有灵巧的8 位cpu 和在系统可编程 flash,使得 stc89c52 为众多嵌入式控制 应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节flash,512字节 ram, 32 位 i/o 口线,看门狗定时器,内置4kb eeprom,max810 复位电路,3个 16 位定时器/计数器,4 个外部中断,一个 7向量 4 级中断结构(兼容传统 51 的 5向量 2 级中 断结构),全双工串行口。另外 stc89c52 可降至 0hz 静态逻辑操作,支持 2种软件可选 择节电模式。 空闲模式下,cpu 停止工作,允许 ram、 定时器/计数器、 串口、 中断继续工作。 掉电保护方式下,ram内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中 断或硬件复位为止。最高运作频率35mhz,6t/12t 可选。 2、超声波 超声波模块可以自己设计,但是开发周期长。 而网上已有很多成 熟的超声波模块出售,因此我们直接采用了现有的超声波模块以节 省设计时间。 此超声波模块为首发一体,集成了一个超声波发射头和 接收头,一共引出来四个角,两个电源,一个发射,一个接收引脚。 使用起来非常方便。探测距离也能满足我们的设计要求。 3、无线模块 无线模块我们采用了nrf24l01。nrf24l01是由 nordic 生产的工 作在2.4ghz2.5ghz 的 ism 频段的单片无线收发器芯片。 无线收发器包括:频率发生器、 增 强型“schockburst”模式控制器、 功率放大器、 晶体振荡器、 调制器和解调器。 输出功率频道选 择和协议的设置可以通过spi 接口进行设置。 几乎可以连接到各种单片机芯片,并完成无线 数据传送工作。极低的电流消耗:当工作在发射模式下发射功率为 0dbm 时电流消耗为 11.3ma ,接收模式时为 12.3ma,掉电模式和待机模式下电流消耗更低。此外,利用 nrf24l01 还可实现多机发送一机接收,从而,保安室可以同时检测多个超声波探测装置。 4.蜂鸣器驱动 因为单片机 io 口出来的电流太小,不足以驱动蜂鸣器使其发声。 所以我们的放大单片 机io 口电流从而驱动蜂鸣器。在此,我们选择了一种比较简单的三极管放大电路来驱动蜂 鸣器。如图所示 3、软件设计软件设计 本设计中的软件设计主要由部分构成:超声波探测、 无线发送、 蜂鸣器报警。 部分程序如下: 1、超声波探测 void intt()/超声波使用的定时器的初始化 tmod=0x09; /方式1, 0000 1001,gate=1, 外中断引脚 int0 和 tr0 共同控制定时器 的运行 th0=0; tl0=0; ea=1;/总中断允许 et0=1; /定时器 t0 中断允许 tr0=1; /启用定时器 ex0=1; /外部中断0允许 it0=1; /跳沿触发方式 void fs() /发射超声波 _nop_(); out=1; _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); out=0; _nop_(); 2、无线发送 /*nrf24l01 初始化 /* */ void init_nrf24l01(void) inerdelay_us(100); ce=0; / chip enable csn=1; / spi disable sck=0; / spi clock line init high spi_write_buf(write_reg + tx_addr, tx_address, tx_adr_width); / 写本 地地址 spi_write_buf(write_reg + rx_addr_p0, rx_address, rx_adr_width); / 写 接收端地址 spi_rw_reg(write_reg + en_aa, 0x01); / 频道 0 自动ack 应答允许 spi_rw_reg(write_reg + en_rxaddr, 0x01); / 允许接收地址只有频道 0,如果 需要多频道可以参考page21 spi_rw_reg(write_reg + rf_ch, 0); / 设置信道工作为 2.4ghz,收发必须一 致 spi_rw_reg(write_reg + rx_pw_p0, rx_pload_width); /设置接收数据长度, 本次设置为32字节 spi_rw_reg(write_reg + rf_setup, 0x07); /设置发射速率为 1mhz,发射 功率为最大值0db spi_rw_reg(write_reg + config, 0x0e); / irq 收发完成中断响应,16 位crc,主发送 / * * /*函数:uint spi_rw(uint uchar) /*功能:nrf24l01 的 spi 写时序 / * */ uint spi_rw(uint uchars) uint bit_ctr; for(bit_ctr=0;bit_ctr8;bit_ctr+) / output 8-bit mosi = (uchars / output uchar, msb to mosi uchars = (uchars 1); / shift next bit into msb sck = 1; / set sck high uchars |= miso; / capture current miso bit sck = 0; / then set sck low again return(uchars); / return read uchar / * * /*函数:uchar spi_read(uchar reg) /*功能:nrf24l01 的 spi 读时序 / * */ uchar spi_read(uchar reg) uint reg_val; csn = 0; / csn low, initialize spi communication. spi_rw(reg); / select register to read from reg_val = spi_rw(0); / then read registervalue csn = 1; / csn high, terminate spi communication return(reg_val); / return register value / * */ /*功能:nrf24l01 读写寄存器函数 / * */ uchar spi_rw_reg(uchar reg, uchar value) uchar status; csn = 0; / csn low, init spi transaction status = spi_rw(reg); / select register spi_rw(value); / and write value to it csn = 1; / csn high again return(status); / return nrf24l01 status uchar / * */ /*函数:uint spi_read_buf(uchar reg, uchar *pbuf, uchar uchars) /*功能: 用于读数据,reg:为寄存器地址,pbuf:为待读出数据地址,uchars:读出数据的 个数 / * */ uint spi_read_buf(uchar reg, uint *pbuf, uint uchars) uint status,uchar_ctr; csn = 0; / set csn low, init spi tranaction status = spi_rw(reg); / select register to write to and read status uchar for(uchar_ctr=0;uchar_ctruchars;uchar_ctr+) pbufuchar_ctr = spi_rw(0); / csn = 1; return(status); / return nrf24l01 status uchar / * * /*函数:uint spi_write_buf(uchar reg, uchar *pbuf, uchar uchars) /*功能: 用于写数据:为寄存器地址,pbuf:为待写入数据地址,uchars:写入数据的个数 / * */ uint spi_write_buf(uchar reg, uint *pbuf, uint uchars) uint status,uchar_ctr; csn = 0; /spi 使能 status = spi_rw(reg); for(uchar_ctr=0; uchar_ctruchars; uchar_ctr+) / spi_rw(*pbuf+); csn = 1; /关闭spi return(status); / / * */ /*函数:void setrx_mode(void) /*功能:数据接收配置 / * */ void setrx_mode(void) ce=0; spi_rw_reg(write_reg + config, 0x0f); / irq 收发完成中断响应,16 位crc,主接收 ce = 1; inerdelay_us(130); /延时不能太短 / * */ /*函数:unsigned char nrf24l01_rxpacket(unsigned char* rx_buf) /*功能:数据读取后放如rx_buf 接收缓冲区中 / * */ unsigned int nrf24l01_rxpacket(unsigned int* rx_buf) unsigned int revale=0; sta=spi_read(status);/ 读取状态寄存其来判断数据接收状况 if(rx_dr)/ 判断是否接收到数据 ce = 0; /spi 使能 spi_read_buf(rd_rx_pload,rx_buf,tx_pload_width);/ read receive payload from rx_fifo buffer revale =1;/读取数据完成标志 spi_rw_reg(write_reg+status,sta); /接收到数据后 rx_dr,tx_ds,max_pt 都 置高为1,通过写 1来清楚中断标志 return revale; / * * /*函数:void nrf24l01_txpacket(unsigned char * tx_buf) /*功能:发送 tx_buf 中数据 / *
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 如何签订租房合同
- 安全培训考试题解答及答案解析
- 2025护理考试题库0及答案解析
- 鞭炮安全知识考试题库及答案解析
- 安全b本2025年题库及答案解析
- 无线网安全测试题及答案解析
- 甲状腺疾病护理题库及答案解析
- 实验室安全考试题库及答案
- 汉字大赛模拟试题及答案
- 信息通信网络施工员晋升考核试卷及答案
- 标准件供货协议合同范本
- 纳税申报流程课件
- 2025年秋期新教科版四年级上册小学科学教学计划+进度表
- 2025新疆维吾尔自治区人民检察院招聘聘用制书记员(14人)笔试参考题库附答案解析
- 循环水泵设备安装方案详细指导
- 2024年喀什经济开发区兵团分区招聘真题
- 作风建设永远在路上教学课件
- (2025)中小学爱国知识竞赛试题附答案
- 新媒体文案写作教程(第二版)课件 项目五 微博文案写作 课件
- 《水力学》课件-第4章 水动力学基础(二)
- 生活垃圾填埋场环境污染的排查与治理方案
评论
0/150
提交评论