基于单片机的出租车计价器实验教学案例设计

摘 要 为了让学生加深单片机的理解,加强学生的单片机技术应用、实践动手、创新能力的培养,根据单片机课程设计教学情况精心设计了基于单片机的出租车计价器实验教学案例。本教学案例的基本原理是速度的检测,里程、价格的计算和显示。学生通过全程参与项目的构思、设计、实现和制作环节,掌握了单片机应用系统的整个开发过程,培养了硬件设计和软件设计技能,开发了学生的创新思维,提高了学生的自学能力、分析问题和解决问题的能力。
关键词 单片机;出租车计价器;实验教学案例

1 引言

《单片机原理与应用》课程是电子信息相关专业一门重要的专业基础课程,也是一门理论和实践结合非常紧密、突出动手能力的课程。课程设计是单片机课程教学过程中非常重要的实践教学环节之一,通过课程设计可以锻炼并提高学生综合运用知识、分析问题解决问题、实践动手能力、软硬件设计能力、系统测试、团队合作、撰写报告等相关能力。为了让学生加深单片机的理解,加强学生的单片机技术应用、实践动手、创新能力的培养,根据单片机课程设计教学情况精心设计了基于单片机的出租车计价器实验教学案例 [1-3]。

2 教学案例设计

2.1 实验内容与任务

本实验任务是设计制作一个基于单片机的出租车计价系统。具体实验内容:
(1) 键盘扫描,通过单片机检测用户按下的是哪个按键并执行相应的功能;
(2)通过传感器检测出租车的实时速度以及走过的路程,并在屏幕上显示;
(3) 用户可以通过按键设置白天和夜间头三公里的起步价,和三公里后每公里的价格,最终会在屏幕上显示价格;
(4) 系统还带有时钟显示,能实时显示时间和等待时间,能调节时间;
(5) 扩展功能:系统还带有超速报警,门限速度可以用户自己设置,超速后会语音提醒,语音提醒内容可自行录制。

2.2 实验原理、方案和设计

2.2.1 实验原理

本实验的基本原理是速度的检测,里程、价格的计算和显示。为实现整个设计,先将设计分为七个模块:主控模块、按键模块、显示模块、时钟模块、速度检测模块、语音模块、电源模块,然后分别完成各模块原理图及程序设计,最后连接各模块电路,整体调试、验证设计结果。系统总体硬件结构图如图 1 所示。

2.2.2 实现方案

本系统实现方案很多,每个模块在设计实现过程中都有
多种选择。
(1) 单片机选择,可供选择的单片机有 51 系列、MSP430系列、AVR 系列、STM32 系列等。
(2) 按键模块,可供选择的有独立按键和矩阵键盘。
(3) 显示模块,可供选择的显示模块有 LED 数码管和LCD 液晶显示屏。
(4) 时钟模块,可供选择的有时钟芯片和程序计数计时。
(5) 速度检测模块,可供选择的有光电传感器和霍尔传 感器。
(6) 语音模块,可以实现录放功能的语音芯片有 ISD、APR、WT、PM 等系列。
(7)系统供电,可供选择的方式有:电池盒供电、USB供电、电源接口供电。
综合考虑实验室现有资源和成本,本系统选用 51 系列单片机作为主控芯片,选择独立按键实现功能选择,选用 LCD1602 液显示屏显示时间、里程、价格,选用 DS1302 时钟芯片提供时钟信号,选择霍尔传感器进行检测电机转速,选择常用语音芯片 ISD1820 实现语音信号的录入和播放,选择 USB 供电。

2.2.3 系统设计

根据选择的系统实现方案设计电路图如图 2 所示。
根据设计好的电路原理图绘制 PCB 板图如图 3 所示 :
再经过打印、热转印、腐蚀、焊接元器件等环节,出租车计价器的成品图如图 4 所示。

3 实验教学过程与指导

3.1 实验教学

本实验体现了一个完整的系统设计过程,需要经历学习研究、方案论证、系统软硬件设计、仿真调试、实物制作与测试、设计总结等过程。在实验进行前,教师需要讲解的主要内容:
(1) 学习查阅资料。充分利用网络、电子图书馆等资源获取知识、查阅芯片技术资料和手册。
(2)模块化设计思想。将出租车计价的功能分成 7个模块,主控模块、按键模块、显示模块、时钟模块、速度检测模块、语音模块、电源模块。
(3) 结合出租车计价系统框图,介绍单片机应用系统的设计思路和方法。简要介绍各个模块的多种实现方案及优缺点。
(4) 介绍 KEIL C、PROTEUS 软件的功能、开发环境,介 绍基于 KEIL C、PROTEUS 软件搭建的仿真平台的使用和注意事项;介绍 PROTEL 软件的功能、开发环境,如何画原理图、PCB 板图,讲解元件布局、布线规则等方面的注意事项;介绍制板过程中注意事项;介绍焊接注意事项。
(5) 衡量电子产品的标准:满足任务指标要求,电路的稳定性、可靠性,电路简单、成本低、元件品种少,便于调试与维修等
(6) 提出撰写课程设计总结报告的基本要求。

3.2 实验指导

在实验教学过程中,教师主要指导、检查的内容:
(1) 指导学生查阅与使用器件数据手册。
(2) 指导学生选择合理电路方案。
(3) 检查实验方案、电路原理图。
(4) 指导学生使用 Keil 软件编程,Proteus 软件画仿真图,在仿真过程中,注意硬件原理图和软件程序的紧密结合,检查仿真现象及结果。
(5) 指导学生利用 Protel DXP 软件画原理图、PCB 板图,指导学生制板、焊接电路。
(6) 引导学生找出在调试和测试过程中遇到具体问题的解决方法。
(7) 验收实物。验收内容包括检查功能的完成程度、性能是否稳定可靠,有无自制 PCB 板,有无创新,设计方案的合理性,电路设计的规范性,焊接质量,组装工艺,实验数据,是否充分利用实验室资源,材料与元器件选择合理性,成本核算等。
(8) 检查实验报告完成的规范性、完整性。

4 结束语

本实验要求学生综合运用所学过的模拟电路、数字电路、传感器、单片机原理及其相关接口的理论知识完成出租车计价器的系统设计和制止。以学生为中心,让学生全程参与单片机应用系统的整个开发过程。通过对项目的构思、设计、实现和制作环节,让学生主动获取知识,培养硬件设计和软 件设计技能,开发学生的创新思维,提高学生的自学能力、分析问题和解决问题的能力

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/770546.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Pylons 和 Flex 3

“Pylons” 和 “Flex 3” 是两个不同的技术,各自有着不同的背景和应用场景: Pylons Pylons 是一个 Python Web 框架,用于快速开发 Web 应用程序。它强调简单性、灵活性和可扩展性,以便开发人员能够快速构建和部署功能强大的 We…

如何在Linux上删除Systemd服务

Systemd是Linux 操作系统的系统和服务管理器,提供控制系统启动时启动哪些服务的标准流程。 有时,您可能出于各种原因需要删除systemd服务,例如不再需要、与其他服务冲突,或者您只是想清理系统。 Systemd使用单元文件来管理服务&…

【Linux】虚拟机安装 openEuler 24.03 X86_64

目录 一、概述 1.1 openEuler 覆盖全场景的创新平台 1.2 系统框架 1.3 平台框架 二、安装详细步骤 一、概述 1.1 openEuler 覆盖全场景的创新平台 openEuler 已支持 x86、Arm、SW64、RISC-V、LoongArch 多处理器架构,逐步扩展 PowerPC 等更多芯片架构支持&…

行车记录打不开:故障深度解析、恢复策略与预防指南

一、行车记录打不开的困境概述 行车记录仪,作为现代驾驶安全的重要辅助工具,不仅记录着每一次出行的点滴,更在关键时刻成为维护权益的关键证据。然而,当车主满怀期待地想要回顾或分享这些记录时,却遭遇了行车记录打不…

Tomcat服务部署安装

一、Tomcat基础 1.Tomcat简介 Tomcat服务器是一个免费的开放源代码的Web应用服务器,Tomcat虽然和Apache或者Nginx这些Web服务器一样,具有处理HTML页面的功能,然而由于其处理静态HTML的能力远不及Apache或者Nginx,所以Tomcat通常…

存储器类型介绍

存储器 ROM 我们一般把手机和电脑的硬盘当作ROM。ROM的全称是:Read Only Memery,只读存储器,就是只能读不能写的存储器。但是现在的ROM不仅可以读,还可以写数据,比如给手机下载APP,就是给手机上的ROM写数据…

《ClipCap》阅读笔记(上)

原文出处 [2111.09734] ClipCap: CLIP Prefix for Image Captioning (arxiv.org) 原文笔记 What ClipCap: CLIP Prefix for Image Captioning 一言以蔽之:使用 CLIP 编码作为标题的前缀,使用简单的映射网络,然后微调语言模型…

光伏电站数据采集方案(基于工业路由器部署)

​ 一、方案概述 本方案采用星创易联SR500工业路由器作为核心网关设备,实现对光伏电站现场数据的实时采集、安全传输和远程监控。SR500具备多接口、多功能、高可靠性等特点,能够满足光伏电站数据采集的各种需求。(key-iot.com/iotlist/sr500…

完全理解C语言函数

文章目录 1.函数是什么2.C语言中的函数分类2.1 库函数2.1.1 如何使用库函数 2.2自定义函数 3.函数的参数3.1 实际参数(实参)3.2 形式参数(形参) 4.函数调用4.1传值调用4.2 传址调用4.3 练习 5.函数的嵌套调用和链式访问5.1 嵌套调…

LLMs之gpt_academic:gpt_academic的简介、安装和使用方法、案例应用之详细攻略

LLMs之gpt_academic:gpt_academic的简介、安装和使用方法、案例应用之详细攻略 目录 gpt_academic的简介 1、版本更新历史 版本: 1、新增功能及其描述 新界面(修改config.py中的LAYOUT选项即可实现“左右布局”和“上下布局”的切换) 所…

【代码随想录】【算法训练营】【第57天】 [卡码99]岛屿数量 [卡码100]岛屿的最大面积

前言 思路及算法思维,指路 代码随想录。 题目来自 卡码网。 day 57,周三,再ding一下~ 题目详情 [卡码99] 岛屿数量 题目描述 卡码99 岛屿数量 LeetCode类似题目200 岛屿数量 解题思路 前提: 思路: 重点&#…

STM32MP135裸机编程:使用软件触发硬件复位

0 参考资料 STM32MP13xx参考手册.pdf 1 使用寄存器实现软件复位 1.1 复位电路概述 重点关注下面标红的路线: 通过这条路线可以清楚看到,我们可以通过设置RCC_MP_GRSTCSETR寄存器让RPCTL(复位脉冲控制器)给NRST(硬件复…

Vue组件如何“传话”?这里有个小秘诀!

​🌈个人主页:前端青山 🔥系列专栏:vue篇 🔖人终将被年少不可得之物困其一生 依旧青山,本期给大家带来vue篇专栏内容:vue-组件通信 目录 Vue组件通信 (1) props / $emit 1. 父组件向子组件传…

线段树知识总结

线段树这个东西,这次是第二次学习,怎么说呢,感觉理解还是不是特别的透彻,因此,在后面彻底完学习之后这个东西再改成公开 线段树概念引入 线段树是一种数据结构,其并不算是一种算法,而是一种减…

8.12 矢量图层面要素单一符号使用十五(栅格线渲染边界)

前言 本章介绍矢量图层线要素单一符号中标记符号渲染边界(Outline: Marker line)的使用说明:文章中的示例代码均来自开源项目qgis_cpp_api_apps 栅格线渲染边界(Outline: Raster Line) Outline系列只画边界&#xf…

【代码随想录】【算法训练营】【第58天】 [卡码101]孤岛的总面积 [卡码102]沉没孤岛 [卡码103]水流问题 [卡码104]建造最大岛屿

前言 思路及算法思维,指路 代码随想录。 题目来自 卡码网。 day 58,周四,ding~ 题目详情 [卡码101] 孤岛的总面积 题目描述 卡码101 孤岛的总面积 解题思路 前提: 思路: 重点: 代码实现 C语言 […

mac外接显示屏,切换程序坞和启动台在哪个屏幕显示,最实用教程

程序坞和启动项是同步的 首先,程序坞和展开启动项是同步出现在同一个屏幕的,所以只需要把程序坞“呼唤”到指定的显示器就行。 无需设置,动对了鼠标就行 无所谓哪个是主屏,设置中都没有切换程序坞位置的选项, 想要…

vue单独部署到宝塔教程

配置反向代理 注意:如果目标网站是https则写https否则写http 2.关于解决部署后无法刷新,直接报错404 location / { try_files $uri $uri/ /index.html; }

代码随想录算法训练营第四十三天| 121. 买卖股票的最佳时机、122.买卖股票的最佳时机II、 123.买卖股票的最佳时机III

121. 买卖股票的最佳时机 题目链接:121. 买卖股票的最佳时机 文档讲解:代码随想录 状态:做出来了 贪心思路: 因为股票就买卖一次,那么贪心的想法很自然就是取最左最小值,取最右最大值,那么得到的…

新建Vue工程的几种方法

文章目录 vue-clivue/clivue3Viteparcel vue-cli vue-cli是针对构建vue的脚手架CLI2,只能新建vue2工程。 全局安装vue-cli之后,构建vue2项目的格式为: vue init 构建方式 project_name:比如以下5种构建方式 vue init webpack pr…