基于蓝桥杯的单片机模块练习——存储器扩展
相关知识点
(1)IO口扩展方式
所谓的IO扩展方式就是通过译码器来控制相关锁存器的开通与关闭从而控制不同的执行机构模块。由于锁存器的加入,使得一个单片机的IO口可以控制多个模块,从而把一个IO口扩展成了多个。
(2)存储器映射扩展方式
注意:
C代码举例
#include "stc15f2k60s2.h"
#include "absacc.h"//不能忘记包含此头文件
void SystemInit();
void Delay_1ms(unsigned int t);
void SEG_Running();
void LED_Running();
void main()
{
SystemInit();
while(1)
{
SEG_Running();
LED_Running();
XBYTE[0xa000] = 0xff;
Delay_1ms(1000);
XBYTE[0xa000] = 0x00;
}
}
void SystemInit()
{
XBYTE[0xa000] = 0x00;
}
void LED_Running()
{
unsigned char i;
for(i = 0; i < 8; i++)
{
XBYTE[0x8000] = ~(0x01 << i);
Delay_1ms(1000);
}
}
void SEG_Running()
{
unsigned char i;
for(i = 0; i < 8; i++)
{
XBYTE[0xc000] = (0x01 << i);
XBYTE[0xe000] = 0x00;
Delay_1ms(1000);
}
}
void Delay_1ms(unsigned int t)
{
unsigned x,y;
{
for(x = t; x > 0; x--)
for(y = 900; y > 0; y--);
}
}