P0口——8位、漏极开路的双向 1O口。
当使用片外存储器及外扩 IO口时,P0口作为低字节地址数据复用线。在编程时,P0口可用于接收指令代码宇节;在程序校验时,P0口可输出指令字节(这时需要加外部上拉电阻)。
P0口也可作通用IO口使用.但需加上拉电阻.变为准双向口。当作为普通输入时,应将 输出锁存器置1. PO口可驱动8个 TTL负载.
P1口——8位、准双向IO口,具有内部上拉电阻。
P1口是为用户准备的 1O双向口。在编程和校验时,可用做输入低8位地址。用做输入时,应先将输出锁存器置1. P1口可驱动4个TTL负载。
引 脚 P1.0 替代功能 T2 说 明 定时器2的外部事件输入端; 可编脉冲输出端 定时器 2的捕捉重装触发器输入端; P1.1 T2EX 定时器2的计数方向控制端 表3-2 P1.0 P1.1替代功能
P2口——8位、准双向 1O口.具有内部上位电阻.
当使用片外存储器或外扩1O口时.P2口输出高8位地址。在编程校验时.P2口可接收高字节地址和某些控制信号。
P2口也可作普通IO口使用。用做输入时,应先将输出锁存器置1. P2口可驱动4个TTL负载。
P3口——8位、准双向 1O口,具有内部上拉电阻。
P3口可作为普通1O口。用做输入时,应先将输出锁存器置 1.在编程校验时.P3口接收某些控制信号。它可驱动4个TTL负载。
P3口还提供各种替代功能。
P3.0 P3.1 P3.2 P3.3 RXD(串行输入口) TXD(串行输出口) INT0(外部中断0) INT1(外部中断1) ————6 P3.4 P3.5 P3.6 P3.7 ——T0(记时器0外部输入) T1(记时器1外部输入) WR(外部数据存储器写选通) ——RD(外部数据存储器读选通) 表3-3 P3口替代功能
② 控制信号线
RST——复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机器周期(即24个晶振周期)以上的高电平,将器件复位。
EA(——)VPP——外部程序存储器访问允许信号EA(External Access Enable)。 当EA(——)信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000H~FFFFH;当EA(——)接地时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。
在编程时,该引脚可接编程电压(AT89C51的VPP为5V或12V;AT89LV51的VPP为12 V)。在编程校验时,该引脚可接VCC。
PSEN(————)——片外程序存储器读选通信号用PSEN(Program Store Enable),低电平有效。
在片外程序存储器取指令期间,当PSEN(————)有效时,程序存储器的内容被送至 PO口(数据总线);在访问外部RAM时,PSEN(————)无效。
AIEPROG(————)——低字节地址锁存信号 AlE(Address latch Enable)。 在系统扩展时,AlE的下降沿将PO口输出的低8位地址锁存在外接的地址锁存器中,以实现低字节地址和数据的分时传送。此外,ALE端连续输出正脉冲.频率为晶振频率的16,
可用做外部定时脉冲使用。但要注意,每次访问外RAM时要丢失一个ALE脉冲。 在编程期间.该引脚输入编程脉冲(PROG(————))。 ③ 电源线
VCC——电源电压输入。 GND——接地。 ④ 外部晶振引线
7 XTAL1——片内振荡器反相放大器和时钟发生线路的输入端。使用片内振荡器时,连接外部石英晶体和微调电容。
XTAL2——片内振荡器反相放大器的输出端。当使用片内振荡器时,外接石英晶体 和微调电容。
当使用外部振荡器时,引脚XTAL1接收外振荡器信号,XTAIL2悬空。 3.2.5 中断控制
可采用中断的时机:
① 当计数值数完时要做一个特定的动作。
② 当外部信号有一个脉冲信号产生时要做某种特定的运算。 ③ 当外部某些信号成立时,必须立即处理。
④ 当收到通信界面上的一个特定值时,必须立即反应。
⑤ 当程序必须处理数个小程序,且这些程序必须几乎同时都在执行中。 ⑥ 当程序必须随时更新某项数据或显示值。
⑦ 当程序必须自动且随时去检查系统中的状态值时。
上述的情形亦可采用平常的程序,以持续或经常询问的写法来应付,但是若系统有多个条件要询问时,写法就会变得相当的复杂。假如改用程序中断的写法,则程序的写法就会变得较单纯些,中断程序通常有以下一个或一个以上的特征,假使我们的应用中发现有这些特征时,在程序规划前就要考虑是否采用中断的写法。
特征1:每隔一个时间间隔就必须做某件特定的事情。
特征2:当某个条件(不论软件或硬件线路)成立时,就让CPU立即处理。 特征3:CPU 正以多任务(Multi-task)的模式,同时处理数个程序或信号。 特征4:某项状态可能平时均不成立,可是一成立时,CPU 必须立即停止原先的动作,马上来处理这个状态。 3.2.6 单片机控制程序设计
单片机模块包括单片机AT89S51及其控制的显示和键盘系统,AT89S51对FPGA的数据进行计算,计算出用车总费用并送入显示系统显示,同时它接收键盘信息并处理显示切换。系统采用6+1显示,6个数码管作常规显示,一个数码管作状态显示。按键共有5个,分别是功能切换键,确定键,修改键,启动模拟键和空车牌压下模拟键。
8 开始清内存SP←60HP2←#00H定时器0,工作方式1定时50 ms启动定时器工作,开中断调用键处理
图3-7 主程序流程图
9
相关推荐: