单片机IO口扩展设计(3)

时间:2026-01-18

单片机IO口扩展设计

图2.8X8点阵LED结构图

从图2中可以看出,8X8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的二极管就亮;因此要实现一根柱形的亮法,如图49所示,对应的一列为一根竖柱,或者对应的一行为一根横柱,因此实现柱的亮的方法如下所述:

一根竖柱:对应的列置1,而行则采用扫描的方法来实现。

一根横柱:对应的行置0,而列则采用扫描的方法来实现。

2.5.流水灯设计的总电路图

流水灯设计的总电路图在最小系统的基础上加上了由9014三极管驱动的蜂鸣器、外部中断的两个开关(实现外部中断控制)、P0和P2口的跳线(实现外扩展)、还有用三极管驱动的8*8位LED显示元件XY1588ASR(24脚共阳管)。

单片机IO口扩展设计

图4. 总电路图

2.7.仿真运行效果图

最终调试仿真运行结果如下图:

图6.效果图

3.单片机I/O口扩展程序的主程序

#include <atmel\regx52.h>

#define int8 unsigned char

#define int16 unsigned int

#define int32 unsigned long

int8 code num_tab[][8]={

/*--8*8--阴码--逐行扫描--逆向(低位在前)--*/

{0x00,0x00,0x00,0x38,0x44,0x38,0x00,0x00},/*"0",0*/

{0x00,0x00,0x40,0x78,0x48,0x00,0x00,0x00},/*"1",1*/

{0x00,0x00,0x00,0x4C,0x54,0x6C,0x00,0x00},/*"2",2*/

{0x00,0x00,0x00,0x74,0x4C,0x6C,0x00,0x00},/*"3",3*/

{0x00,0x00,0x00,0x7C,0x28,0x10,0x00,0x00},/*"4",4*/

{0x00,0x00,0x00,0x74,0x54,0x7C,0x00,0x00},/*"5",5*/

{0x00,0x00,0x70,0x54,0x54,0x38,0x00,0x00},/*"6",6*/

{0x00,0x00,0x04,0x7C,0x04,0x00,0x00,0x00},/*"7",7*/

{0x00,0x00,0x00,0x6C,0x54,0x6C,0x00,0x00},/*"8",8*/

{0x00,0x00,0x00,0x3C,0x54,0x1C,0x00,0x00},/*"9",9*/

{0x00,0x00,0x00,0x38,0x44,0x38,0x00,0x00},/*"0",10*/

{0x00,0x00,0x40,0x78,0x58,0x68,0x00,0x00},/*"a",11*/

单片机IO口扩展设计(3).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:4.9 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:19元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219