0
知识要点: 1.外部数据/地址总线中包括了三种总线:数据总线,地址总线,控制总线。数据总线使用于数据的传输,在51单片机中使用P0端口;地址总线用于外部数据地址的选择,一般的微控制器可扩展到16位寻址。51单片机中使用P0 & P2 端口作为地址I/O 口;控制总线用于时序的控制,它包含了(ALE_N RD_N WR_N PSEN_N)控制线。 2. 总线的工作过程: A. 当ALE_N为高电平的时候可以改变选取的数据地址,ALE_N的下 降沿把地址锁存住 B. RD_N 或WR_N为低电平的时候,允许把数据读出或写入外部器件中 C. PSEN_N 为片选使能端口,低电平的时有效 3. 整个过程的工作时序可以参考AT89S52.PDF 文档资料 在ATmega8中实现的程序清单如下: void Output_D12(uchar Address,uchar Data) { //*((uchar xdata *) Address) = Data; PORTD |=(1<<ALE); //SET ALE H DDRB=0xff; PORTB=Address; //load address NOP(); PORTD &=~(1<<ALE); //RESET ALE L PORTB=Data; PORTC &=~(1<<D12WR); //Enalbe write NOP(); //waite some time NOP(); PORTC |=(1<<D12WR); } |
在ATmega8上模拟并行三种总线协议数据传输
最新推荐文章于 2024-01-14 18:38:01 发布