3BABY
Member level 5
- Joined
- Jan 14, 2011
- Messages
- 91
- Helped
- 0
- Reputation
- 0
- Reaction score
- 0
- Trophy points
- 1,286
- Location
- New Zealand
- Activity points
- 2,252
Hi Guys,
so ive been putting together a 8031/8051 system on a breadboard with external PROM and going to be using external RAM, i can write to an External Memory address (by way of latch) and display the value on 8 LEDs no problem, the problem i have is i want to read an 8 bit value from a memory addresses input and then move that value to the 8bit memory addressed output port just to verify everything is working, my input port is a 74LS244 (there is only one 74LS244 attached to the RD line so i dont need any Read address decoding at the moment) so on reset whatever value i have sitting at the 74244 (0x01) is displayed on the output port.. but while the program is running if i change the value on the input 74244 i does not change the on the output port.. if i hit reset on the uC the value changes but will not change dynamicly iwhile the loop is running.. i have hooked up the logic analyzer to the WR, RD and Data 0-1 lines and it looks like it reads the input port only once and then doesnt read it again even though its going around the loop in code to read and then write.. please see below.
any help would be much appreciated
**broken link removed**
so ive been putting together a 8031/8051 system on a breadboard with external PROM and going to be using external RAM, i can write to an External Memory address (by way of latch) and display the value on 8 LEDs no problem, the problem i have is i want to read an 8 bit value from a memory addresses input and then move that value to the 8bit memory addressed output port just to verify everything is working, my input port is a 74LS244 (there is only one 74LS244 attached to the RD line so i dont need any Read address decoding at the moment) so on reset whatever value i have sitting at the 74244 (0x01) is displayed on the output port.. but while the program is running if i change the value on the input 74244 i does not change the on the output port.. if i hit reset on the uC the value changes but will not change dynamicly iwhile the loop is running.. i have hooked up the logic analyzer to the WR, RD and Data 0-1 lines and it looks like it reads the input port only once and then doesnt read it again even though its going around the loop in code to read and then write.. please see below.
any help would be much appreciated
Code:
;test input port
L1:
MOV DPTR,#0xFF01
MOVX A,@DPTR
MOV R4, A
MOV DPTR,#101h ; writes the byte that was read out to 0x101
MOVX @DPTR,A
NOP
CJNE R4, #01h, L1
start1:
**broken link removed**