Ansluta två OOBoards tillsammans med I2C (4 / 4 steg)
Steg 4: Programmet master
Slutligen, programmet master mikrokontroller. Uppmärksamma på de linjer som anges i DDELink. Platsegenskapen: om detta är rätt inställd, detta kommer inte att fungera!Dim Master som ny oDDELinkDim tråd som nya oWireDim hz1 som ny oBitSub main () ' länk 1 andra timern till den lite kan vi nå ' denna bit kommer nu växla en gång per andra tråd. Input.Link(ooPIC.Hz1) tråd. Output.Link(hz1) tråd. Fungerar = cvTrue ' Detta anger I2C adressen till vår lokala mikrokontroller "I2C gränssnittet inte är aktiv tills en adress anges ooPIC.Node = 1 ' nu vi setup våra DDELink objekt, vårt bidrag är lite hz1" Observera att objektet har också en. Utgång egenskap som används "när vi är i mottagningsläge Master.Input.Link(hz1)" adressen till den I2C av remote mikrokontroller, Observera att "i slav-kod, vi berättar det att ha en adress för 2 Master.Node = 2" usch... Detta är den crappy delen, detta är den "adressen" av DDELink "objekt i slavens minnesutrymme. För att räkna ut detta nummer, "vi måste öppna och kompilera koden slav, då gå till Visa -> kompilerad kod. "leta efter något i stil med: ' L *. Construct.Begin, Dim < namn > som nya oDDELink "där * är ett annat tal, och < namn > är namnet på din DDELink objekt" i slav-kod. Raden omedelbart under stå något i stil med: "C0020:041; Detta. < namn >. Adress "numret till höger om den ':' är adressen till objektet slav DDELink Master.Location = 41" detta säger objektet att vi kommer att skicka data (dvs, kopiera data från våra. Ange egenskapen "till egenskapen slavar .output (Obs, om du anger detta att ta emot, det är tvärtom) Master.Direction = cvSend ' slå på den, men ingenting händer ännu... Master.Operate = cvTrue ' Kontrollera om vi för närvarande överföring av data om Master.Transmitting = cvFalse då "anger det här värdet till 1 kommer att orsaka befälhavaren att skicka värdet till slav" Observera, detta återställs automatiskt till 0 efter slutförandet av överföringen Master.Sync = 1 slutet om LoopEnd Sub