diff --git a/CPU/CPU.circ b/CPU/CPU.circ index 35124e805878ea0e6afb792bdd4a192d4631c715..512aa702dc888ea8017dff08731e9ffc94c0ad2b 100644 --- a/CPU/CPU.circ +++ b/CPU/CPU.circ @@ -6,6 +6,9 @@ <tool name="Splitter"> <a name="facing" val="north"/> </tool> + <tool name="Tunnel"> + <a name="facing" val="east"/> + </tool> </lib> <lib desc="#Gates" name="1"> <tool name="NOT Gate"> @@ -2856,18 +2859,124 @@ <a name="circuit" val="CPU_RAM32"/> <a name="circuitnamedboxfixedsize" val="true"/> <a name="simulationFrequency" val="1.0"/> - <comp lib="0" loc="(1130,510)" name="Tunnel"> + <comp lib="0" loc="(1240,410)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="EN_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(1240,430)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="SEL"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(1400,380)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="ADD"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> + </comp> + <comp lib="0" loc="(1400,400)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="DATA_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1400,440)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(1400,460)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(1400,680)" name="Tunnel"> + <a name="label" val="WHEEL_RIGHT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1400,810)" name="Tunnel"> + <a name="label" val="WHEEL_LEFT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1460,1100)" name="Tunnel"> + <a name="facing" val="north"/> + <a name="label" val="ADD_A"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> + </comp> + <comp lib="0" loc="(160,610)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="ADD"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="4"/> + </comp> + <comp lib="0" loc="(160,630)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="DATA_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(160,670)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(160,690)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(1700,550)" name="Tunnel"> <a name="facing" val="north"/> <a name="label" val="SEL"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(1180,470)" name="Pin"> + <comp lib="0" loc="(1750,510)" name="Pin"> <a name="appearance" val="NewPins"/> <a name="facing" val="west"/> <a name="label" val="DATA_OUT"/> <a name="output" val="true"/> <a name="width" val="8"/> </comp> + <comp lib="0" loc="(1890,620)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="WHEEL_RIGHT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1890,640)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="WHEEL_LEFT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1920,620)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="WHEEL_RIGHT"/> + <a name="output" val="true"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1920,640)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="WHEEL_LEFT"/> + <a name="output" val="true"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(40,640)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="EN_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(40,660)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="SEL"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> <comp lib="0" loc="(420,250)" name="Pin"> <a name="appearance" val="NewPins"/> <a name="label" val="EN_WR"/> @@ -2880,6 +2989,11 @@ <a name="appearance" val="NewPins"/> <a name="label" val="RESET"/> </comp> + <comp lib="0" loc="(420,330)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="label" val="UART_BLUETOOTH"/> + <a name="width" val="8"/> + </comp> <comp lib="0" loc="(460,150)" name="Pin"> <a name="appearance" val="NewPins"/> <a name="label" val="ADD"/> @@ -2915,6 +3029,11 @@ <a name="label" val="RESET"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> + <comp lib="0" loc="(520,330)" name="Tunnel"> + <a name="label" val="UART_IN"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> <comp lib="0" loc="(540,120)" name="Tunnel"> <a name="label" val="ADD"/> <a name="labelfont" val="SansSerif bold 8"/> @@ -2924,116 +3043,337 @@ <a name="label" val="SEL"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(670,370)" name="Tunnel"> + <comp lib="0" loc="(670,1020)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="EN_WR"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(670,390)" name="Tunnel"> + <comp lib="0" loc="(670,1040)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="SEL"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(710,510)" name="Tunnel"> + <comp lib="0" loc="(760,1110)" name="Tunnel"> + <a name="facing" val="north"/> + <a name="label" val="ADD_A"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="3"/> + </comp> + <comp lib="0" loc="(980,570)" name="Constant"/> + <comp lib="0" loc="(990,1010)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="EN_WR"/> + <a name="label" val="RESET"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(710,530)" name="Tunnel"> + <comp lib="0" loc="(990,1070)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="SEL"/> + <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> </comp> - <comp lib="0" loc="(830,340)" name="Tunnel"> + <comp lib="0" loc="(990,1110)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="ADD"/> + <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 8"/> - <a name="width" val="4"/> </comp> - <comp lib="0" loc="(830,360)" name="Tunnel"> + <comp lib="0" loc="(990,1140)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,1200)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> <a name="width" val="8"/> </comp> - <comp lib="0" loc="(830,400)" name="Tunnel"> + <comp lib="0" loc="(990,1240)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(830,420)" name="Tunnel"> + <comp lib="0" loc="(990,1270)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="RESET"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(830,480)" name="Tunnel"> + <comp lib="0" loc="(990,1330)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="ADD"/> + <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> - <a name="width" val="4"/> + <a name="width" val="8"/> </comp> - <comp lib="0" loc="(830,500)" name="Tunnel"> + <comp lib="0" loc="(990,1370)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,1400)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,1460)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="DATA_WR"/> <a name="labelfont" val="SansSerif bold 8"/> <a name="width" val="8"/> </comp> - <comp lib="0" loc="(830,540)" name="Tunnel"> + <comp lib="0" loc="(990,1500)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="0" loc="(830,560)" name="Tunnel"> + <comp lib="0" loc="(990,1530)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="RESET"/> <a name="labelfont" val="SansSerif bold 8"/> </comp> - <comp lib="1" loc="(710,390)" name="NOT Gate"> + <comp lib="0" loc="(990,550)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="UART_BLUETOOTH"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(990,590)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,620)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,680)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="DATA_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(990,720)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,750)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,810)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="DATA_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(990,850)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,880)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="0" loc="(990,940)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="DATA_WR"/> + <a name="labelfont" val="SansSerif bold 8"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(990,980)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 8"/> + </comp> + <comp lib="1" loc="(1280,430)" name="NOT Gate"> <a name="size" val="20"/> </comp> - <comp lib="1" loc="(760,380)" name="AND Gate"> + <comp lib="1" loc="(1330,420)" name="AND Gate"> <a name="size" val="30"/> </comp> - <comp lib="1" loc="(760,520)" name="AND Gate"> + <comp lib="1" loc="(720,1030)" name="AND Gate"> <a name="size" val="30"/> </comp> - <comp lib="2" loc="(1150,470)" name="Multiplexer"> + <comp lib="1" loc="(90,650)" name="AND Gate"> + <a name="size" val="30"/> + </comp> + <comp lib="2" loc="(1480,1010)" name="Multiplexer"> + <a name="select" val="3"/> <a name="width" val="8"/> </comp> - <comp loc="(1090,340)" name="CPU_RAM16"> + <comp lib="2" loc="(1720,510)" name="Multiplexer"> + <a name="width" val="8"/> + </comp> + <comp lib="2" loc="(740,1030)" name="Demultiplexer"> + <a name="select" val="3"/> + </comp> + <comp lib="4" loc="(1010,1040)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,1170)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,1300)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,1430)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,520)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,650)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,780)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="4" loc="(1010,910)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="6" loc="(1177,802)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="WHEEL_LEFT"/> + </comp> + <comp lib="6" loc="(1180,671)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="WHEEL_RIGHT"/> + </comp> + <comp lib="6" loc="(1191,543)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="UART BLUETOOTH"/> + </comp> + <comp lib="6" loc="(1464,1136)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="READ A"/> + </comp> + <comp loc="(1660,380)" name="CPU_RAM16"> <a name="label" val="RAM16_PROCESSOR"/> </comp> - <comp loc="(1090,480)" name="CPU_RAM16"> + <comp loc="(420,610)" name="CPU_RAM16"> <a name="label" val="RAM16_2"/> </comp> - <wire from="(1090,340)" to="(1100,340)"/> - <wire from="(1090,480)" to="(1120,480)"/> - <wire from="(1100,340)" to="(1100,460)"/> - <wire from="(1100,460)" to="(1120,460)"/> - <wire from="(1130,490)" to="(1130,510)"/> - <wire from="(1150,470)" to="(1180,470)"/> + <wire from="(1040,1000)" to="(1040,1010)"/> + <wire from="(1040,1130)" to="(1040,1140)"/> + <wire from="(1040,1260)" to="(1040,1270)"/> + <wire from="(1040,1390)" to="(1040,1400)"/> + <wire from="(1040,1520)" to="(1040,1530)"/> + <wire from="(1040,610)" to="(1040,620)"/> + <wire from="(1040,740)" to="(1040,750)"/> + <wire from="(1040,870)" to="(1040,880)"/> + <wire from="(1070,1070)" to="(1340,1070)"/> + <wire from="(1070,1200)" to="(1350,1200)"/> + <wire from="(1070,1330)" to="(1360,1330)"/> + <wire from="(1070,1460)" to="(1370,1460)"/> + <wire from="(1070,550)" to="(1370,550)"/> + <wire from="(1070,680)" to="(1360,680)"/> + <wire from="(1070,810)" to="(1350,810)"/> + <wire from="(1070,940)" to="(1340,940)"/> + <wire from="(1240,410)" to="(1300,410)"/> + <wire from="(1240,430)" to="(1260,430)"/> + <wire from="(1280,430)" to="(1300,430)"/> + <wire from="(1330,420)" to="(1440,420)"/> + <wire from="(1340,1000)" to="(1440,1000)"/> + <wire from="(1340,1010)" to="(1340,1070)"/> + <wire from="(1340,1010)" to="(1440,1010)"/> + <wire from="(1340,940)" to="(1340,1000)"/> + <wire from="(1350,1020)" to="(1350,1200)"/> + <wire from="(1350,1020)" to="(1440,1020)"/> + <wire from="(1350,810)" to="(1350,990)"/> + <wire from="(1350,810)" to="(1400,810)"/> + <wire from="(1350,990)" to="(1440,990)"/> + <wire from="(1360,1030)" to="(1360,1330)"/> + <wire from="(1360,1030)" to="(1440,1030)"/> + <wire from="(1360,680)" to="(1360,980)"/> + <wire from="(1360,680)" to="(1400,680)"/> + <wire from="(1360,980)" to="(1440,980)"/> + <wire from="(1370,1040)" to="(1370,1460)"/> + <wire from="(1370,1040)" to="(1440,1040)"/> + <wire from="(1370,550)" to="(1370,970)"/> + <wire from="(1370,970)" to="(1440,970)"/> + <wire from="(1400,380)" to="(1440,380)"/> + <wire from="(1400,400)" to="(1440,400)"/> + <wire from="(1400,440)" to="(1440,440)"/> + <wire from="(1400,460)" to="(1440,460)"/> + <wire from="(1460,1050)" to="(1460,1100)"/> + <wire from="(1480,1010)" to="(1670,1010)"/> + <wire from="(160,610)" to="(200,610)"/> + <wire from="(160,630)" to="(200,630)"/> + <wire from="(160,670)" to="(200,670)"/> + <wire from="(160,690)" to="(200,690)"/> + <wire from="(1660,380)" to="(1670,380)"/> + <wire from="(1670,380)" to="(1670,500)"/> + <wire from="(1670,500)" to="(1690,500)"/> + <wire from="(1670,520)" to="(1670,1010)"/> + <wire from="(1670,520)" to="(1690,520)"/> + <wire from="(1700,530)" to="(1700,550)"/> + <wire from="(1720,510)" to="(1750,510)"/> + <wire from="(1890,620)" to="(1920,620)"/> + <wire from="(1890,640)" to="(1920,640)"/> + <wire from="(40,640)" to="(60,640)"/> + <wire from="(40,660)" to="(60,660)"/> <wire from="(420,250)" to="(520,250)"/> <wire from="(420,290)" to="(520,290)"/> <wire from="(420,310)" to="(520,310)"/> + <wire from="(420,330)" to="(520,330)"/> <wire from="(460,150)" to="(490,150)"/> <wire from="(490,230)" to="(520,230)"/> <wire from="(510,120)" to="(540,120)"/> <wire from="(510,140)" to="(540,140)"/> - <wire from="(670,370)" to="(730,370)"/> - <wire from="(670,390)" to="(690,390)"/> - <wire from="(710,390)" to="(730,390)"/> - <wire from="(710,510)" to="(730,510)"/> - <wire from="(710,530)" to="(730,530)"/> - <wire from="(760,380)" to="(870,380)"/> - <wire from="(760,520)" to="(870,520)"/> - <wire from="(830,340)" to="(870,340)"/> - <wire from="(830,360)" to="(870,360)"/> - <wire from="(830,400)" to="(870,400)"/> - <wire from="(830,420)" to="(870,420)"/> - <wire from="(830,480)" to="(870,480)"/> - <wire from="(830,500)" to="(870,500)"/> - <wire from="(830,540)" to="(870,540)"/> - <wire from="(830,560)" to="(870,560)"/> + <wire from="(670,1020)" to="(690,1020)"/> + <wire from="(670,1040)" to="(690,1040)"/> + <wire from="(720,1030)" to="(740,1030)"/> + <wire from="(760,1070)" to="(760,1110)"/> + <wire from="(780,1000)" to="(860,1000)"/> + <wire from="(780,1010)" to="(870,1010)"/> + <wire from="(780,1020)" to="(880,1020)"/> + <wire from="(780,1030)" to="(880,1030)"/> + <wire from="(780,1040)" to="(870,1040)"/> + <wire from="(780,1050)" to="(860,1050)"/> + <wire from="(780,1060)" to="(850,1060)"/> + <wire from="(850,1060)" to="(850,1480)"/> + <wire from="(850,1480)" to="(1010,1480)"/> + <wire from="(860,1050)" to="(860,1350)"/> + <wire from="(860,1350)" to="(1010,1350)"/> + <wire from="(860,700)" to="(1010,700)"/> + <wire from="(860,700)" to="(860,1000)"/> + <wire from="(870,1040)" to="(870,1220)"/> + <wire from="(870,1220)" to="(1010,1220)"/> + <wire from="(870,830)" to="(1010,830)"/> + <wire from="(870,830)" to="(870,1010)"/> + <wire from="(880,1030)" to="(880,1090)"/> + <wire from="(880,1090)" to="(1010,1090)"/> + <wire from="(880,960)" to="(1010,960)"/> + <wire from="(880,960)" to="(880,1020)"/> + <wire from="(90,650)" to="(200,650)"/> + <wire from="(980,570)" to="(1010,570)"/> + <wire from="(990,1010)" to="(1040,1010)"/> + <wire from="(990,1070)" to="(1010,1070)"/> + <wire from="(990,1110)" to="(1010,1110)"/> + <wire from="(990,1140)" to="(1040,1140)"/> + <wire from="(990,1200)" to="(1010,1200)"/> + <wire from="(990,1240)" to="(1010,1240)"/> + <wire from="(990,1270)" to="(1040,1270)"/> + <wire from="(990,1330)" to="(1010,1330)"/> + <wire from="(990,1370)" to="(1010,1370)"/> + <wire from="(990,1400)" to="(1040,1400)"/> + <wire from="(990,1460)" to="(1010,1460)"/> + <wire from="(990,1500)" to="(1010,1500)"/> + <wire from="(990,1530)" to="(1040,1530)"/> + <wire from="(990,550)" to="(1010,550)"/> + <wire from="(990,590)" to="(1010,590)"/> + <wire from="(990,620)" to="(1040,620)"/> + <wire from="(990,680)" to="(1010,680)"/> + <wire from="(990,720)" to="(1010,720)"/> + <wire from="(990,750)" to="(1040,750)"/> + <wire from="(990,810)" to="(1010,810)"/> + <wire from="(990,850)" to="(1010,850)"/> + <wire from="(990,880)" to="(1040,880)"/> + <wire from="(990,940)" to="(1010,940)"/> + <wire from="(990,980)" to="(1010,980)"/> </circuit> <circuit name="TOP"> <a name="appearance" val="logisim_evolution"/> @@ -3045,10 +3385,39 @@ <a name="labelfont" val="SansSerif bold 10"/> <a name="width" val="8"/> </comp> - <comp lib="0" loc="(1210,590)" name="Tunnel"> - <a name="facing" val="east"/> - <a name="label" val="CLK"/> + <comp lib="0" loc="(1090,360)" name="Tunnel"> + <a name="label" val="WHEEL_RIGHT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1090,380)" name="Tunnel"> + <a name="label" val="WHEEL_LEFT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(1100,660)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="WHEEL_RIGHT_PWM"/> + <a name="output" val="true"/> + </comp> + <comp lib="0" loc="(1100,680)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="DIR_WHEEL_RIGHT"/> + <a name="output" val="true"/> + </comp> + <comp lib="0" loc="(1100,760)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="WHEEL_LEFT_PWM"/> + <a name="output" val="true"/> + </comp> + <comp lib="0" loc="(1100,780)" name="Pin"> + <a name="appearance" val="NewPins"/> + <a name="facing" val="west"/> + <a name="label" val="DIR_WHEEL_LEFT"/> + <a name="output" val="true"/> </comp> <comp lib="0" loc="(270,110)" name="Pin"> <a name="appearance" val="NewPins"/> @@ -3074,41 +3443,51 @@ <a name="label" val="RX"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> - <comp lib="0" loc="(390,340)" name="Tunnel"> + <comp lib="0" loc="(340,500)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 10"/> + </comp> + <comp lib="0" loc="(340,520)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> - <comp lib="0" loc="(390,360)" name="Tunnel"> + <comp lib="0" loc="(340,540)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="RESET"/> + <a name="label" val="RX"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> - <comp lib="0" loc="(390,380)" name="Tunnel"> + <comp lib="0" loc="(390,340)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="RAM_OUT"/> + <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 10"/> - <a name="width" val="8"/> </comp> - <comp lib="0" loc="(390,460)" name="Tunnel"> + <comp lib="0" loc="(390,360)" name="Tunnel"> <a name="facing" val="east"/> <a name="label" val="RESET"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> - <comp lib="0" loc="(390,480)" name="Tunnel"> + <comp lib="0" loc="(390,380)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="CLK"/> + <a name="label" val="RAM_OUT"/> <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> </comp> - <comp lib="0" loc="(390,500)" name="Tunnel"> + <comp lib="0" loc="(630,540)" name="Tunnel"> <a name="facing" val="east"/> - <a name="label" val="RX"/> + <a name="label" val="CLK"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> <comp lib="0" loc="(660,210)" name="Probe"> <a name="appearance" val="NewPins"/> <a name="facing" val="south"/> </comp> + <comp lib="0" loc="(690,580)" name="Tunnel"> + <a name="facing" val="north"/> + <a name="label" val="RESET"/> + <a name="labelfont" val="SansSerif bold 10"/> + </comp> <comp lib="0" loc="(710,230)" name="Probe"> <a name="appearance" val="NewPins"/> <a name="facing" val="south"/> @@ -3127,33 +3506,94 @@ <a name="label" val="RESET"/> <a name="labelfont" val="SansSerif bold 10"/> </comp> + <comp lib="0" loc="(800,660)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="WHEEL_RIGHT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(800,680)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 10"/> + </comp> + <comp lib="0" loc="(800,760)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="WHEEL_LEFT"/> + <a name="labelfont" val="SansSerif bold 10"/> + <a name="width" val="8"/> + </comp> + <comp lib="0" loc="(800,780)" name="Tunnel"> + <a name="facing" val="east"/> + <a name="label" val="CLK"/> + <a name="labelfont" val="SansSerif bold 10"/> + </comp> + <comp lib="4" loc="(660,470)" name="Register"> + <a name="appearance" val="logisim_evolution"/> + </comp> + <comp lib="6" loc="(916,275)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="BAS - 0x42"/> + </comp> + <comp lib="6" loc="(920,258)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="HAUT - 0x41"/> + </comp> + <comp lib="6" loc="(926,294)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="DROITE - 0x43"/> + </comp> + <comp lib="6" loc="(928,312)" name="Text"> + <a name="font" val="SansSerif plain 12"/> + <a name="text" val="GAUCHE - 0x44"/> + </comp> <comp loc="(1040,340)" name="CPU_RAM32"/> - <comp loc="(1460,570)" name="PERI_SIGNED_PWM"/> - <comp loc="(1460,660)" name="CPU_RAM32"/> + <comp loc="(1050,660)" name="PERI_SIGNED_PWM"> + <a name="label" val="WHEEL_RIGHT"/> + </comp> + <comp loc="(1050,760)" name="PERI_SIGNED_PWM"> + <a name="label" val="WHEEL_LEFT"/> + </comp> + <comp loc="(590,500)" name="PERI_UART_RCV_115200"/> <comp loc="(640,340)" name="CPU"/> - <comp loc="(640,460)" name="PERI_UART_RCV_115200"/> <wire from="(1040,340)" to="(1090,340)"/> - <wire from="(1210,590)" to="(1240,590)"/> + <wire from="(1040,360)" to="(1090,360)"/> + <wire from="(1040,380)" to="(1090,380)"/> + <wire from="(1050,660)" to="(1100,660)"/> + <wire from="(1050,680)" to="(1100,680)"/> + <wire from="(1050,760)" to="(1100,760)"/> + <wire from="(1050,780)" to="(1100,780)"/> <wire from="(270,110)" to="(310,110)"/> <wire from="(270,130)" to="(310,130)"/> <wire from="(270,150)" to="(310,150)"/> + <wire from="(340,500)" to="(370,500)"/> + <wire from="(340,520)" to="(370,520)"/> + <wire from="(340,540)" to="(370,540)"/> <wire from="(390,340)" to="(420,340)"/> <wire from="(390,360)" to="(420,360)"/> <wire from="(390,380)" to="(420,380)"/> - <wire from="(390,460)" to="(420,460)"/> - <wire from="(390,480)" to="(420,480)"/> - <wire from="(390,500)" to="(420,500)"/> + <wire from="(590,500)" to="(660,500)"/> + <wire from="(590,520)" to="(660,520)"/> + <wire from="(630,540)" to="(660,540)"/> <wire from="(640,340)" to="(660,340)"/> <wire from="(640,360)" to="(820,360)"/> <wire from="(640,380)" to="(760,380)"/> <wire from="(660,210)" to="(660,340)"/> <wire from="(660,340)" to="(710,340)"/> + <wire from="(690,560)" to="(690,580)"/> <wire from="(710,230)" to="(710,340)"/> <wire from="(710,340)" to="(820,340)"/> + <wire from="(720,500)" to="(800,500)"/> <wire from="(760,260)" to="(760,380)"/> <wire from="(760,380)" to="(820,380)"/> <wire from="(790,400)" to="(820,400)"/> <wire from="(790,420)" to="(820,420)"/> + <wire from="(800,440)" to="(800,500)"/> + <wire from="(800,440)" to="(820,440)"/> + <wire from="(800,660)" to="(830,660)"/> + <wire from="(800,680)" to="(830,680)"/> + <wire from="(800,760)" to="(830,760)"/> + <wire from="(800,780)" to="(830,780)"/> </circuit> <circuit name="PERI_UART_RCV_115200"> <a name="appearance" val="logisim_evolution"/>