出租车计价器模拟:Keil51与Proteus实战
需积分: 9 180 浏览量
更新于2024-08-02
2
收藏 251KB DOC 举报
"keil51 结合protues的出租车仿真实例,通过硬件电路和程序设计,模拟出租车计价器的功能,适用于初学者学习。使用MCS51系列单片机At89S51,配合外围器件实现计价器的硬件电路,通过C语言编程实现软件功能。"
在这个出租车计价器的实例中,我们主要涉及以下几个关键知识点:
1. **keil51 IDE**:这是一个流行的基于8051系列单片机的开发环境,支持C语言编程,提供集成的编译、调试工具,使得开发过程更为便捷。
2. **protues仿真软件**:protues是一款虚拟原型设计软件,允许开发者在软件中构建电路模型并进行仿真测试,无需实际硬件即可验证设计的正确性。
3. **C语言编程**:C语言是嵌入式系统中常用的编程语言,简洁高效,适合编写单片机控制程序。
4. **MCS51单片机**:At89S51是MCS51系列的一种,拥有4KB的可编程闪存,4个8位I/O端口,内置定时器和中断系统,广泛应用于各种嵌入式系统设计。
5. **硬件电路设计**:
- **数码管驱动**:采用2个四联共阴极数码管,通过74HC244驱动芯片实现,每个数码管需要7条控制线,每条线上接100欧姆电阻限流。
- **独立式键盘**:使用上拉电路,按键未按下时输出高电平,通过单片机的输入端口检测低电平变化。
- **复位电路**:确保单片机在上电或手动复位时能正常初始化。
6. **软件设计**:
- **定时器计时模块**:利用单片机的内部定时器实现30秒计时,当启动键按下后开始计时,若无脉冲到来,超过30秒则增加计费。
- **脉冲计数模块**:通过查询方式检测脉冲,每次脉冲代表10米,累计100次表示1千米,根据时间段调整计费标准。
- **按键处理**:包括启动计价、数据复位和模式切换,通过轮询检测按键状态来执行相应操作。
- **中断管理**:定时器使用中断,脉冲计数则采用查询方式,避免中断资源冲突。
7. **程序流程图**:程序流程图用于描述程序运行的逻辑顺序,包括启动、计时、计数、按键扫描和处理、显示更新等步骤,有助于理解程序的执行流程。
通过这个实例,初学者可以学习到单片机硬件电路设计、软件编程以及仿真验证的基本方法,了解如何将理论知识应用到实际项目中,同时提升解决问题的能力。
2020-11-13 上传
2020-03-26 上传
2018-04-26 上传
139 浏览量
125 浏览量
2009-06-08 上传
2018-10-04 上传
2010-04-03 上传
zjj77520
- 粉丝: 1
- 资源: 8
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜