首页 理论教育零起点学单片机多语言编程-小键盘应用例举

零起点学单片机多语言编程-小键盘应用例举

【摘要】:本款单片机的小键盘中的“+1”键、“-1”键、高一位操作键、地址键和写入键一端分别接在P2口的P2.0、P2.1、P2.2、P2.3、P2.4上,另一端接地。按下P2口的不同键时,P1口对应的灯亮。以便查询P2口位的状态。程序点评:程序中使用了P1口,灯的亮灭可以直观地检测光线传感器和驱动电动机的工作状况。

1.【例3-34】 4路抢答器源程序(用P2端口状态查询)

4路抢答器的功能:抢答口令发出后,只有最先按下开关键(灯最先亮)的一组有效获得抢答权。

本款单片机的小键盘中的“+1”键、“-1”键、高一位操作键、地址键和写入键一端分别接在P2口的P2.0、P2.1、P2.2、P2.3、P2.4上,另一端接地。当按下某一键时就将该位接地,相当于零状态。复位后可以重新输入。

程序一:

978-7-111-47138-7-Chapter03-66.jpg

978-7-111-47138-7-Chapter03-67.jpg

程序二:

978-7-111-47138-7-Chapter03-68.jpg

978-7-111-47138-7-Chapter03-69.jpg

实例程序运行效果:在完成了源文件建立、汇编、下载的步骤后,单片机自动运行该程序。按下P2口的不同键时,P1口对应的灯亮。以便查询P2口位的状态。

程序点评:程序中用了I/O接口某位判0转移指令“JNB BIT,REL”。

2.【例3-35】 寻黑线的智能车

1)智能车由双电动机驱动,左侧电动机驱动左侧车轮,右侧电动机驱动右侧车轮。仅有左侧电动机驱动时向右转,仅有右侧电动机驱动时向左转,双电动机同时驱动前进或后退。

2)寻黑线场地在白底场地上画有一定宽度的黑线,黑线图案按要求设定。

3)智能车前端沿黑线外沿,左右两端安装两个光线变化传感器。当任意一端的传感器出黑线进入白场地时,该传感器的状态由1跳变为0。

4)智能车在前进方向行驶时若右传感器出黑线则仅由右侧电动机驱动,向左转;若左传感器出黑线则仅由左侧电动机驱动,向右转。

5)光线变化传感器可接入P1口的P1.0位(左端)和P1.1位(右端),电路如图3-1所示。

978-7-111-47138-7-Chapter03-70.jpg(www.chuimin.cn)

图3-1 光敏控制电路

6)电动机驱动芯片9110及引脚定义,如图3-2和图3-3所示。

978-7-111-47138-7-Chapter03-71.jpg

图3-2 电动机驱动芯片9110

978-7-111-47138-7-Chapter03-72.jpg

图3-3 芯片9110引脚定义

7)智能车电动机驱动芯片控制电路连接图如图3-4所示。

978-7-111-47138-7-Chapter03-73.jpg

图3-4 电动机控制接线电路

8)智能车电动机驱动芯片控制真值表(设M1为左驱动电动机,M2为右驱动电动机),见表3-1。

表3-1 智能车电动机驱动芯片控制真值表

978-7-111-47138-7-Chapter03-74.jpg

9)控制源程序。

978-7-111-47138-7-Chapter03-75.jpg

978-7-111-47138-7-Chapter03-76.jpg

实例程序运行效果:在完成了源文件建立、汇编、下载的步骤后,单片机自动运行该程序。接通电源后智能车寻黑线前行,出线后自动调整。

程序点评:程序中使用了P1口,灯的亮灭可以直观地检测光线传感器和驱动电动机的工作状况。运行中若出现智能车冲出跑道的情况,可以增加延时时间。