基于单片机的的智能晾衣系统设计毕业论文(编辑修改稿)内容摘要:

到红外传感器可以检测的范围内时,红外传感器就输出一个变化的信号,通过单片机读取后就知道衣架现在运动到什么位置了。 实物图如图 所示。 图 红外检测传 感器 如图 所示,三极管 Q 采用 9013 小功率三极管,单片机通过 IO 口驱动三极管的 b极,通过 1K 电阻进行限流,防止电流过大烧毁三极管和单片机。 红外接收管的工作功率为 75mW,开启电压 ,为了实现接收,采用如图 所示, NE5532 运放作为电压跟随器跟随接收管上电压的变化,单片机通过 IO 口中断读取数据,通过 10K 电阻进行限流,防止电流过大烧毁三极管。 图 红外发射电路 图 红外接收电路 我们分别在室内和室外两个地方各安装一个传感器,当衣架运动是室内时 ,为了不让衣架运动过度,通过红外传感器检测到衣架后,将衣架停止。 当衣架运动是室外时,为了不让衣架运动过度,通过红外传感器检测到衣架后,将衣架停止,晾晒衣物。 STM32 控制器 STM32 系列单片机是一款高性能、低成本、低功耗的嵌入式应用的单片机,它的内核是 ARM CortexM3。 ST 公司对 STM32 进行了产品划分,按性能分成两个不同的系列:STM32F103 属于增强型系列和 STM32F101 是基本型系列。 增强型 STM32F103 系列的系统时钟频率可达到 72MHz,是同类中低端产品中性能是属于最高的一款产品。 STM32F101 基本型的系统时钟频率是 36MHz,它的 16 位产品比其他公司的 16 位产品在价格上 有大幅提升了性能,是 16 位单片机用户的最好的选择。 STM32F103 与 STM32F101 系列都内置 32K到 128K 的闪存,所不一样的是 SRAM 的最大容量是和外部设备接口的组合。 当系统时钟的频率为 72MHz 时,单片机从内部闪存位置开始执行初始代 码, STM32 总的系统功耗36mA,是 32 位单片机市场中功耗最低的一款产品,电流频率比为。 图 是STM32F103C8T6 的实物图。 图 STM32F103C8T6 STM32F103C8T6 总共有 48 个引脚, PA0— PA15 端口 A15 个、 PB0— PB15 端口 B15 个,2 个外部晶振引脚 OSC_IN、 OSC_OUT, 1 个复位引脚 NRST, 2 个 的实时时钟晶振引脚, BOOT0 程序驱动脚。 VDDA、 VDD_ VDD_ VDD_3 与 VSS、 VSS_ VSS_2 、VSS_3 总共 8 个电源引脚,包括模拟供电电源。 内核采用 ARM 32 位的 CortexM3,最高72MHz 工作频率,单周期乘法和硬件除法;存储器采用从 64K 字节的闪存程序存储器,高达 20K 字节的 SRAM;时钟、复位和电源管理采用 伏供电和 I/O 引脚,上电 /断电复位(POR/PDR)、可编程电压监测器 (PVD), 8MHz 晶体振荡器,内嵌经出厂调校的 8MHz 的 RC振荡器,内嵌带校准的 40kHz 的 RC 振荡器,产生 CPU时钟的 PLL,带校准功能的 32kHz RTC振荡器;低功耗模式有睡眠、停机和待机模式, VBAT 为 RTC 和后备寄存器供电; 2 个 12位模数转换器, 1us 转换时间 (多达 16 个输入通道 ) ,转换范围: 0 至 ,双采样和保持功能,还有内部温度传感器;内部共有 7 通道 DMA 控制器,支持的外设有 3 个定时器、ADC、 SPI、 I2C 和 USART 等;调试模式可选择串行单线调试 (SWD)和 JTAG 接口。 如图 所示。 图 引脚图 图 与图 是 STM32F103C8T6 的外部时钟,本方案采用 8M 外部晶振,进过内部 9 倍频后得到 72M 系统时钟,图 5 与图 6 中的 30pF 电容与 10pF 电容 为晶振的启动电容,不能偏大也不能偏小,链接 8M 的晶振上经典值电容应该选择 30pF, 晶振上的电容最大不能超过 15pF,晶振连接图如图所示。 图 8M时钟 图 单片机最小系统包括单片机芯片、晶振、复位电路,图 所示为单片机的复位电路,SW1 为复位按键,常态为开,当按下时为闭合, R4 为 10K 电阻,上拉电阻的选取没有固定的要求,通常选取 10K, C5 为滤波电容,大小选择 104 电容,也就是 100nF 陶瓷电容,防止复位按键抖动, 导致系统误复位,启动滤除系统脉冲的作用,保护最小系统的正常工作。 通常机械按键都有一个抖动过程,就需要通过这个电容来滤除按键产生的抖动。 图 复位电路 通常供电电源都有小幅波动,需要通过使用大电容来滤除电源抖动,图 的 4 个电容是靠近 STM32F103C8T6 的电源引脚上放的,防止电源引脚有抖动信号的干扰。 104 电容为通用的选取阻值。 图 滤波电路 为了实现单片机的正常工作,就需要为单片机提供稳定的供电电源,这里使用 LM1117线性稳压芯片为单片机提供稳定的 + 电源,图 中 P6 与 P7 为排针,方便杜邦线的插拔, C C6 为 +5V 电源的输入滤波电容,稳定输入的 +5V 电压,使用 100nF 滤除高频干扰, 100uF 滤除低频干扰, C C7 为输出滤波电容,稳定输出电压,使用 100nF 滤除输出的高频干扰, 100uF 滤除输出的低频干扰,为单片机提供可靠的供电电源。 图 稳压供电电路 图 为单片机下载方式选择端,或者是程序驱动方式选择端。 STM32 有三种启动模式对应的存储介质均是芯片内置的,它们是: 1)用户闪存 = 芯片内置的 Flash。 2) SRAM = 芯片内置的 RAM 区,就是内存啦。 3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的 ISP 程序。 这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个 ROM 区。 在每个 STM32 的芯片上都有两个管脚 BOOT0 和 BOOT1,这两个管脚在芯片复位时的电平状态决定了芯片复位后从哪个区域开始执行程序,见下表: BOOT1=x BOOT0=0 从用户闪存启动,这是正常的工作模式。 BOOT1=0 BOOT0=1 从系统存储器启动,这种模式启动的程序功能由厂 家设置。 BOOT1=1 BOOT0=1 从内置 SRAM 启动,这种模式可以用于调试。 要注意的是,一般不使用内置 SRAM 启动 (BOOT1=1 BOOT0=1),因为 SRAM 掉电后数据就丢失。 多数情况下 SRAM 只是在调试时使用,也可以做其他一些用途。 如做故障的局部诊断,写一段小程序加载到 SRAM 中诊断板上的其他电路,或用此方法读写板上的 Flash或 EEPROM 等。 还可以通过这种方法解除内部 Flash 的读写保护,当然解除读写保护的同时 Flash 的内容也被自动清除,以防止恶意的软件拷贝。 一般 BOOT0 和 BOOT1 跳线都跳到 0(地 )。 串口下载的情况下, BOOT0=1, BOOT1=0 ,再复位,点击下载,下载完成后,把 BOOT0 的跳线接回 0,也即 BOOT0=0, BOOT1=0。 所以为了方便期间我。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。