| ??? 03/26/02 12:55 Read: times |
#21154 - making row colums in 8051 |
you will see in the following program that i have 8 options and in each option again 3 differents options.
How do i make sort af table with colums and rows under 8051, and how do i make it work, TIA. joost Dseg At 10h oe_schuif bit P1.0 ; output enable schuifregistr 1 srclk bit p1.1 ; klok flipflop ser bit p1.2 ; seriele ingang rclk bit p1.3 ; klok register sr_clr bit p1.4 ; reset schuifregister switch1 bit p1.5 ; switch schuifregister +1 switch2 bit p1.6 ; switch schuifregister -1 oe_schuif2 bit p1.7 ; output enable schuifregister 2 srclk2 bit p3.0 ; klok flipflop2 ser2 bit p3.1 ; seriele ingang 2 rclk2 bit p3.2 ; klok register 2 sr_clr2 bit p3.3 ; reset schuifregister 2 switch3 bit p3.4 ; switch schuifregister +1 data: ds 1 data1: ds 1 cseg at 100h clr sr_clr ; reset schuifregister1 nop setb sr_clr ; einde reset setb oe_schuif ; schuifregister1 enablen clr rclk ; mov r0,#data ; data = 00000001 mov @r0,#00000001 mov a,@r0 ; a = data mov r2,#data1 ; data1 = 00000001 mov @r2,#00000001 mov a,@r2 ; a = data plus1: JB switch1,min1 ; switch1 niet ingedrukt : spring naar min1 ;-------------------------------------------------------------------------------------------------- ; als switch1 ingedrukt is, wordt data 1 positie naar links geroteerd ;-------------------------------------------------------------------------------------------------- mov a,@r0 ; switch1 wel ingedrukt, a = data RL A ; accu roteren mov @ro,a ; data = a jmp stuur min1: JB switch2,sens1 ;switch niet ingedrukt : spring naar sens1 ;--------------------------------------------------------------------------------------------------- ; als switch2 ingedrukt is, wordt data 1 positie naar rechts geroteerd ;--------------------------------------------------------------------------------------------------- mov a,@r0 RR A mov @ro,a jmp stuur sens1: JB switch3,plus1 ;switch3 niet ingedrukt : spring naar plus1 ;--------------------------------------------------------------------------------------------------- ; als switch3 ingedrukt is, wordt data 2 positie naar links geroteerd ;--------------------------------------------------------------------------------------------------- mov a,@r2 RL A cjne a,#00001000,oke mov a,#00000001 mov @r2,a oke: jmp stuur2 ;--------------------------------------------------------------------------------------------------- ; routine stuur : accu in schuifregister schuiven ;--------------------------------------------------------------------------------------------------- stuur: mov r1,#08h ; accu in schuifregister schuiven stlus: rlc a ; accu naar links roteren mov ser,c ; c = ser nop setb srclk ; nop clr srclk nop djnz r1,stlus setb rclk ; schuifregister overnemen op uitgang nop clr rclk nop clr oe_schuif ; uitgang enablen jmp plus1 ; switchen afvragen ;--------------------------------------------------------------------------------------------------- ; routine stuur2 : accu in schuifregister schuiven ;--------------------------------------------------------------------------------------------------- stuur2: mov r1,#08h ; waarde 8 in r1 plaatsen stlus2: rlc a ; accu naar links roteren, eerste waarde in carry mov ser,c ; carry naar buiten brengen nop setb srclk2 ; maken van klokpuls nop clr srclk2 nop djnz r1,stlus2 ; 8 maal de waarden klokken setb rclk2 ; de waarden naar buiten brengen door middel van puls nop crl rclk2 nop clr oe_schuif2 ; output enablen jmp plus1 ; switchen afvragen |
| Topic | Author | Date |
| making row colums in 8051 | 01/01/70 00:00 | |
| RE: making row colums in 8051 | 01/01/70 00:00 | |
RE: making row colums in 8051 | 01/01/70 00:00 |



