==== Armmite H7 Pin Aliases ==== FIXME /* move some to harware page and fix links */ The ARMMite H7 is a new MicroMite running MMBasic on the powerful STM32H743ZI and STM32H753ZI MicroController. You can grab the complete firmware and join the discussion here: [[https://www.thebackshed.com/forum/forum_posts.asp?TID=10768&PN=1&TPN=1|backshed forums]]. The previous discussion is 18 pages(!) but worth reading to get the full story, but bear in mind it has been superseded by the former and is no longer updated:[[https://www.thebackshed.com/forum/forum_posts.asp?TID=10568|old thread]]\\ It seems a popular way of utilizing this processor for small production/hobbyist is ST's Nucleo evaluation board. There are several suppliers but [[https://uk.farnell.com/stmicroelectronics/nucleo_h743zi/dev_board_nucleo_144_cortex_m7/dp/2776646#|Farnell/Element14]] seem to be well priced with good availability. Using the board is simplicity itself and the familiar environment of MMBasic is a joy, clocked at 400MHz it is ''very'' quick and with a half a megabyte each of Flash and RAM it is unlikely to place many constraints on your project. The development board mentioned above comes with two sets of header pins, the outer set (CN11 & CN12) break-out all the microcontroller pins and the inner set (CN7, CN8, CN9 & CN10) is specifically arranged to take Arduino shield boards (love 'em or hate 'em, they are ubiquitous and can provide a quick route to a working project). These Arduino pins are referred to by both the standard Arduino Notation (D3, A0 etc...) and the Connector_pin e.g. CN10_12, CN9_1 - Note, not all pins have an Arduino counterpart, e.g. PF5 does, PF6 does not. The code below is boiled out of TassyJim's excellent spreadsheet [[https://www.thebackshed.com/forum/forum_posts.asp?TID=10568|here]] and you should reference that to find any special functions associated with a given pin. MMBasic uses the physical pin number of the processor to interact with the outside world but these are not referenced on the above board. The below include file maps the processor pin names (e.g.PA0) and the outer connector name (e.g. CN11_28) so you can use ST terminology or the connector pin as names in your code. The mapping ensures MMBasic talks to the correct pin. ===Example:=== SetPin PA0,DIN,PULLUP x=Pin(PA0) is equivalent to SetPin 34,DIN,PULLUP x=Pin(34) but much easier to understand. Simply cut and paste the below code somewhere near the top of your program. Const PE2=1,D56=1,CN9_14=1,CN11_46=1 Const PE3=2,D60=2,CN9_22=2,CN11_47=2 Const PE4=3,D57=3,CN9_16=3,CN11_48=3 Const PE5=4,D58=4,CN9_18=4,CN11_50=4 Const PE6=5,D59=5,CN9_20=5,CN11_62=5 Const PC13=7,CN11_23=7 Const PC14=8,CN11_25=8 Const PC15=9,CN11_27=9 Const PF0=10,D68=10,CN9_21=10,CN11_53=10 Const PF1=11,D69=11,CN9_19=11,CN11_51=11 Const PF2=12,D70=12,CN9_17=12,CN11_52=12 Const PF3=13,A3=13,CN9_7=13,CN12_58=13 Const PF4=14,A8=14,CN10_11=14,CN12_38=14 Const PF5=15,A4=15,CN9_9=15,CN12_36=15 Const PF6=18,CN11_9=18 Const PF7=19,D62=19,CN9_26=19,CN11_11=19 Const PF8=20,CN11_54=20 Const PF9=21,D63=21,CN9_28=21,CN11_56=21 Const PF10=22,A5=22,CN9_11=22,CN12_42=22 Const PH0=23,CN11_29=23 Const PH1=24,CN11_31=24 Const PC0=26,A1=26,CN9_3=26,CN11_38=26 Const PC1=27,CN11_36=27 Const PC2=28,A7=28,CN10_9=28,CN11_35=28 Const PC3=29,A2=29,CN9_5=29,CN11_37=29 Const PA0=34,D32=34,CN10_29=34,CN11_28=34 Const PA1=35,CN11_30=35 Const PA2=36,CN12_35=36 Const PA3=37,A0=37,CN9_1=37,CN12_37=37 Const PA4=40,D24=40,CN7_17=40,CN11_32=40 Const PA5=41,D13=41,CN7_10=41,CN12_11=41 Const PA6=42,D12=42,CN7_12=42,CN12_13=42 Const PA7=43,D11=43,CN7_14=43,CN12_15=43 Const PC4=44,CN12_34=44 Const PC5=45,CN12_6=45 Const PB0=46,D33=46,CN10_31=46,CN11_34=46 Const PB1=47,A6=47,CN10_7=47,CN12_24=47 Const PB2=48,D27=48,CN10_15=48,CN12_22=48 Const PF11=49,CN12_62=49 Const PF12=50,D8=50,CN7_20=50,CN12_59=50 Const PF13=53,D7=53,CN10_2=53,CN12_57=53 Const PF14=54,D4=54,CN10_8=54,CN12_50=54 Const PF15=55,CN12_60=55 Const PG0=56,CN11_59=56 Const PG1=57,D64=57,CN9_30=57,CN11_58=57 Const PE7=58,D41=58,CN10_20=58,CN12_44=58 Const PE8=59,D42=59,CN10_18=59,CN12_40=59 Const PE9=60,D6=60,CN10_4=60,CN12_52=60 Const PE10=63,D40=63,CN10_24=63,CN12_47=63 Const PE11=64,D5=64,CN10_6=64,CN12_56=64 Const PE12=65,D39=65,CN10_26=65,CN12_49=65 Const PE13=66,D3=66,CN10_12=66,CN12_55=66 Const PE14=67,D38=67,CN10_28=67,CN12_51=67 Const PE15=68,CN12_53=68 Const PB10=69,D36=69,CN10_32=69,CN12_25=69 Const PB11=70,D35=70,CN10_34=70,CN12_18=70 Const PB12=73,D19=73,CN7_7=73,CN12_16=73 Const PB13=74,D18=74,CN7_5=74,CN12_30=74 Const PB14=75,CN12_28=75 Const PB15=76,D17=76,CN7_3=76,CN12_26=76 Const PD8=77,CN12_10=77 Const PD9=78,CN11_69=78 Const PD10=79,CN12_65=79 Const PD11=80,D30=80,CN10_23=80,CN12_45=80 Const PD12=81,D29=81,CN10_21=81,CN12_43=81 Const PD13=82,D28=82,CN10_19=82,CN12_41=82 Const PD14=85,D10=85,CN7_16=85,CN12_46=85 Const PD15=86,D9=86,CN7_18=86,CN12_48=86 Const PG2=87,D49=87,CN8_14=87,CN11_42=87 Const PG3=88,D50=88,CN8_16=88,CN11_44=88 Const PG4=89,CN12_69=89 Const PG5=90,CN12_68=90 Const PG6=91,CN12_70=91 Const PG7=92,CN12_67=92 Const PG8=93,CN12_66=93 Const PC6=96,D16=96,CN7_1=96,CN12_4=96 Const PC7=97,D21=97,CN7_11=97,CN12_19=97 Const PC8=98,D43=98,CN8_2=98,CN12_2=98 Const PC9=99,D44=99,CN8_4=99,CN12_1=99 Const PA8=100,CN12_23=100 Const PA9=101,CN12_21=101 Const PA10=102,CN12_33=102 Const PA11=103,CN12_14=103 Const PA12=104,CN12_12=104 Const PA13=105,CN11_13=105 Const PA14=109,CN11_15=109 Const PA15=110,D20=110,CN7_9=110,CN11_17=110 Const PC10=111,D45=111,CN8_6=111,CN11_1=111 Const PC11=112,D46=112,CN8_8=112,CN11_2=112 Const PC12=113,D47=113,CN8_10=113,CN11_3=113 Const PD0=114,D67=114,CN9_25=114,CN11_57=114 Const PD1=115,D66=115,CN9_27=115,CN11_55=115 Const PD2=116,D48=116,CN8_12=116,CN11_4=116 Const PD3=117,D55=117,CN9_10=117,CN11_40=117 Const PD4=118,D54=118,CN9_8=118,CN11_39=118 Const PD5=119,D53=119,CN9_6=119,CN11_41=119 Const PD6=122,D52=122,CN9_4=122,CN11_43=122 Const PD7=123,D51=123,CN9_2=123,CN11_45=123 Const PG9=124,D0=124,CN10_16=124,CN11_63=124 Const PG10=125,CN11_66=125 Const PG11=126,CN11_70=126 Const PG12=127,CN11_65=127 Const PG13=128,CN11_68=128 Const PG14=129,D1=129,CN10_14=129,CN12_61=129 Const PG15=132,CN11_64=132 Const PB3=133,D23=133,CN7_15=133,CN12_31=133 Const PB4=134,D25=134,CN7_19=134,CN12_27=134 Const PB5=135,D22=135,CN7_13=135,CN12_29=135 Const PB6=136,D26=136,CN10_13=136,CN12_17=136 Const PB7=137,CN11_21=137 Const PB8=139,D15=139,CN7_2=139,CN12_3=139 Const PB9=140,D14=140,CN7_4=140,CN12_5=140 Const PE0=141,D34=141,CN10_33=141,CN12_64=141 Const PE1=142,CN11_61=142 There is a backpack for various displays and other devices--see this thread: [[https://www.thebackshed.com/forum/forum_posts.asp?TID=10700|H7 Backpack]]\\ There are at least three ways to flash mmbasic onto the Nucleo board. The easiest seems to be to copy the H7 mmbasic.bin file to the drive which is configured on your PC when the board is plugged in via USB/serial cable (copy and paste). Then if you connect to the serial port with TeraTerm or puTTY or MMEdit, you should get the ">" prompt.