仿真图:
芯片/模块的特点:
74LS244简介:
74LS244是一种集成电路,属于TTL逻辑系列。它是一个八位无反相三态缓冲器/驱动器,常用于数据和地址线的放大、缓冲和驱动。
74LS244具有8个数据输入端(A0-A7)和8个对应的数据输出端(Y0-Y7)。它还有两个使能输入端,分别是G(双使能器输入端)和 OE ‾ \overline{\text{OE}} OE(输出使能输入端),用于控制输入与输出之间的连接。
当使能输入端G和输出使能输入端 OE ‾ \overline{\text{OE}} OE均为高电平时,74LS244的输出端会将输入端的数据进行缓冲和放大,在输出端提供与输入端相同的逻辑电平,并具有较高的驱动能力。
当任意一个使能输入端为低电平时,74LS244的输出端处于高阻态(即三态),即使输入端有信号,输出端也不会给出电平输出,避免了数据冲突和电平竞争。
74LS244的主要特点包括:
快速响应时间:74LS244采用TTL技术,具有快速的输入输出响应时间,适用于高速数据传输和信号处理。
较高驱动能力:74LS244具有较高的输出驱动能力,可以驱动较长的总线线路以及多个负载。
三态输出:74LS244支持三态输出,能够在需要时将输出端置于高阻态,避免电平冲突和竞争。
宽工作电压范围:74LS244的工作电压范围通常为4.75V至5.25V,适用于大多数TTL逻辑电路的工作。
主程序:
#include "stm32f10x.h"
#include "Delay.h"
#include "smg.h"
#include "sys.h"
#include "timer.h"
#include "led.h"
#include "fmq.h"
#include "key.h"
#include "stm32f10x_tim.h"
uint16_t table[] = {
/* 0, 1, 2, 3, 4, 5, 6, 7, 8, */
0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F,
/* 9, A, B, C, D, E, F, ., none */
0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71, 0x80, 0x00
};
uint16_t t;
uint16_t num[3],inc = 0x00;
int main(void)
{
SMG_Init();
GPIO_Write(GPIOA, 0x3f3f);
GPIO_Write(GPIOB, 0xff3f);
while (1)
{
t=KEY_Scan_KEY_INC(); //得到键值
if(t) //if(条件)t!=0真
{
inc++;
if(inc <= 0xff)
{
num[2]=inc%10;
num[1]=inc/10%10;
num[0]=inc/100;
GPIO_Write(GPIOB,((~inc) <<8) + table[num[2]]);
GPIO_Write(GPIOA,(table[num[1]] <<8) + table[num[0]]);
}
else
{
inc = 0xff;
}
}
}
}
设计文件: