Kysymys:
Miksi sarjakuvan käynnistäminen käynnistää luonnoksen uudelleen?
Cybergibbons
2014-02-26 04:51:03 UTC
view on stackexchange narkive permalink

Jos lataan jonkin luonnoksen, joka lähettää sarjatietoja, näen heti, että TX / RX-LEDit vilkkuvat, kun luonnos on ladattu. Jos aloitan sitten sarjavalvojan, luonnos näyttää käynnistyvän uudelleen.

Pelkkä vähimmäismerkki, joka näyttää tämän toiminnan:

  void setup () {Serial.begin (9600 ); Serial.println ("Asennus");} void loop () {Serial.println ("Loop"); delay (1000);}  

Testattu useilla levyillä ja IDE: n Mac- ja Windows-versioilla.

Esimerkkilähtö - se palaa "Asetuksiin", kun avaan sarjamonitori:

Restart

Miksi tämä on?

En ole koskaan nähnyt sarjakuvaa käyttävää luonnosta, älä tee tätä, joten kirjaimellisesti mikä tahansa luonnos.
Aiheeseen liittyvät: * [Arduino-sarjaportin nollaus Serial Monitorissa ja Pythonissa] (http://arduino.stackexchange.com/questions/640) *
Kopio: * [Miksi Arduinoni näyttää käynnistyvän uudelleen aina, kun avaan Serial Monitorin?] (Http://arduino.stackexchange.com/questions/4078) *
Minulla on erillinen ongelma. Arduino-leotick (ja muut) eivät enää nollaudu uudelleen. Kuinka voin vaihtaa sen uudelleen?
Kolme vastused:
#1
+35
sachleen
2014-02-26 06:02:20 UTC
view on stackexchange narkive permalink

Arduino käyttää RTS (Request To Send) (ja mielestäni DTR (Data Terminal Ready)) signaaleja automaattiseen nollaukseen. Jos saat sarjapäätteen, jonka avulla voit muuttaa virtauksen säätöasetuksia, voit muuttaa tätä toimintoa.

Arduino-päätelaite ei anna sinulle paljon vaihtoehtoja ja se on oletusarvo. Toisten avulla voit määrittää paljon enemmän. Virtauksen ohjauksen asettaminen olemattomaksi antaa sinun muodostaa yhteyden sarjayhteyteen / irrottaa siitä taaksepäin. se on varsin hyödyllinen virheenkorjauksessa, kun haluat vain liittää liittimen ja nähdä lähdön ilman, että sinun pitäisi aloittaa luonnosta.

Toinen tapa poistaa automaattinen nollaus on laittaa vetovastus palautustapissa.

Automaattisen kuittauksen poistaminen käytöstä sarjaliitännässä

Arduino Unos voidaan kiinnittää 10 µF kondensaattorilla RESETin ja GND: n yli. Se toimii toistaiseksi siinä asennuksessa, johon olen sitä käyttänyt ...
Yritin käyttää [PuTTY] -ohjelmaa (http://fi.wikipedia.org/wiki/PuTTY), muodostaen yhteyden COM-porttiin, jossa Arduino näkyy (tapauksessani COM16). Arduino nollataan edelleen, jos "Flow control" -asetuksena Connection / Serial-asetukseksi on "None" (muut vaihtoehdot ovat "XON / XOFF", "RTS / CTS" ja "DSR / DTR"). Käytin PuTTY: n versiota 0.60.
-cont: Sitä kokeiltiin Arduino Uno R3: lla.
Duemilanovella ja Unolla on merkintä "EN RESET", joka hallitsee tätä käyttäytymistä. Raaputa tämä jälki pois käytöstä automaattinen nollaus. Juota lanka tyynyjen yli sen ottamiseksi uudelleen käyttöön.
#2
+13
zmo
2014-03-02 04:24:13 UTC
view on stackexchange narkive permalink

Totuus on aina taulukoissa, kaavioissa ja koodissa:

Arduino UNO käyttää oikeastaan ​​ / DTR -riviä käynnistämään nollaus, kuten näet seuraava tietolomake:

reset schematic

Linkki kaaviolliseen kuvaan on rikki.
Kiitos, korjasin sen! Ajattelin itse asiassa, että SO välimuisti kuvia, mutta näyttää siltä, ​​että se ei ole, joten aion pitää sen aina päällä.
Jälleen, se on rikki. Ehkä voit lisätä sen kuvana StackExchangen imgur-vaihtoehdolla? Napsauta vain editorin työkalupalkin kuvaa.
valmis, kiitos vihjeestä (minulla oli todella oma sivusto alas 10 päivän ajan, koska tein ylläpitoa, joka oli vain väliaikaista)
Kyllä, mutta mitä todella tapahtuu? Johtuuko se siitä, miten ATmega16U2 on ohjelmoitu (väittäen PD7: n matalaksi, kun COM-portti avataan ohjelmalla?)? Tai noudattamalla jotain DTR-standardia?). Ja mikä on C5: n merkitys? - nollaako se pääprosessorin molemmille siirtymille (matalasta korkeaan ja korkeasta matalaan)? Mikä on likimääräinen pulssileveys (mikrosekunteina) pääprosessorin nollausnastassa ja miltä se näyttää?
OK, olen tallentanut pulssin RESETiin sarjaliitännässä: [https://i.stack.imgur.com/KV4Oa.png](https://i.stack.imgur.com/KV4Oa.png). Voit käyttää sitä vastauksessasi.
Kuinka tämä on vastaus? Mitä meidän pitäisi tehdä näiden tietojen kanssa ????
hei kaverit se tarkoittaa että minun pitäisi katkaista tämä johto?
jos niin haluat, kyllä ​​:)
Mitä RESET-EN voi tehdä? Miksi se on siellä? Sillä ei näytä olevan mitään vaikutusta (näyttää olevan oikosulussa). Vai onko se virhe kaaviossa? Mikä on selitys? Voitteko tarkentaa vastauksessanne (tämä ja muut kohdat)?
Se ei todellakaan tee mitään, kuten voit nähdä kaavioista. Syynä on se, että voit katkaista DTR-linjan RESET-EN-jalkojen välillä automaattisen nollauksen poistamiseksi käytöstä, ja jos haluat ottaa sen uudelleen käyttöön, voit juottaa kaksi RESET-EN-tyynyä yhteen.
#3
  0
Julian Lewis
2016-05-13 23:17:18 UTC
view on stackexchange narkive permalink

Tämä korjaa ongelman

  tuo osimport sysimport termiosimport fcntl self.fd = sys.stdin.fileno () # Lopeta arduinon nollaaminen sarjayhteydellä self.newattr = termios.tcgetattr (self .fd) self.newattr [2] = self.newattr [2] & ~ termios.HUPCL termios.tcsetattr (self.fd, termios.TCSANOW, self.newattr)  


Tämä Q & A käännettiin automaattisesti englanniksi.Alkuperäinen sisältö on saatavilla stackexchange-palvelussa, jota kiitämme cc by-sa 3.0-lisenssistä, jolla sitä jaetaan.
Loading...