AVRSH: Een tolk opdrachtshell voor Arduino/AVR. (3 / 6 stap)

Stap 3: Lezen en schrijven van de zekeringen


Zekeringen zijn speciale soorten registers. Zij controleren alles van de kloksnelheid van uw microcontroller aan welke programmering methoden beschikbaar om te schrijven zijn-beschermen EEPROM. Soms moet u deze instellingen wijzigen, vooral als u een zelfstandige AVR-systeem. Ik ben niet zeker dat moet u uw instellingen van de zekering op Arduino wijzigen. Wees voorzichtig met uw zekeringen; u kunt zelf vergrendelen uit als u hen niet juist ingesteld.

In een eerdere instructable, ik laten zien hoe u kunt lezen en uw met uw programmeur en avrdude zekeringen. Hier, zal ik u tonen hoe te uw zekeringen tijdens runtime om te zien hoe uw MCU heeft eigenlijk hen terug te lezen. Opmerking, dat dit niet de instelling van de compilatie die je uit de definities in < avr/io*.h > maar de werkelijke zekeringen krijgt zoals de MCU ze tijdens runtime leest.

Uit tabel 27-9 in het gegevensblad van de ATmega328P (databook, meer bevalt) zijn de bits van de Byte lage zekering als volgt:

 CKDIV8 CKOUT SUT1 SUT0 CKSEL3 CKSEL2 CKSEL1 CKSEL0 

Een interessant ding op te merken is dat met zekeringen, 0 betekent geprogrammeerd en een 1 betekent dat die bijzondere bits unprogrammed. Enigszins contra-intuïtief, maar als je eenmaal het weet je weten.

  • CKDIV8 stelt u de klok van uw CPU gedeeld door 8. De ATmega328P komt uit de fabriek geprogrammeerd voor het gebruik van haar interne oscillator op 8MHz met CKDIV8 geprogrammeerd (dwz ingesteld op 0) waardoor u een definitieve F_CPU of CPU frequentie van 1MHz. Op de Arduino, dit is gewijzigd sinds ze zijn geconfigureerd voor het gebruik van een externe oscillator op 16MHz.
  • CKOUT wanneer geprogrammeerd zal uw CPU kloksnelheid op PB0, oftewel digital pin 8 op Arduinos output.
  • SUT [1..0] geeft de starttijd voor je AVR.
  • CKSEL [3..0] Hiermee stelt u de klokbron, zoals de interne RC-oscillator, externe oscillator, enz.

Wanneer u uw zekeringen leest, zal het worden teruggegeven aan u in de hexadecimale notatie. Dit is de indeling die u nodig hebt als u wilt schrijven de zekeringen via avrdude. Op mijn arduino is hier wat ik krijg als ik lees de lagere fuse byte:

 root read lfuseLower Fuse: 0xff 

Dus, alle bits zijn ingesteld op 1. Ik heb dezelfde procedure op een kloon Arduino en kreeg dezelfde waarde. Controle van een van mijn zelfstandige AVR-systemen, ik heb 0xDA die is de waarde die ik had gesteld dat enkele tijd terug bij het configureren van de chip.

Dezelfde procedure wordt gebruikt voor het controleren van de hoge Fuse Byte, uitgebreid Fuse Byte, en Lock zekeringen. De kalibratie en de handtekening fuse bytes zijn uitgeschakeld in de code met een #if 0 preprocessor-richtlijn, die u wijzigen kunt als u scrappy voelen.

Gerelateerde Artikelen

Hoe zet uw smartphone aan een generieke shield voor Arduino

Hoe zet uw smartphone aan een generieke shield voor Arduino

Hallo jongens, ik ben een van de makers van 1Sheeld, het is een mobiele app en een bestuur dat uw smartphone in een open platform voor Arduino verandert.OnderdelenArduino Uno 19,99 dollar1Sheeld $54.94Breadboard, springpaarden, LEDsHet idee is eigenl
Bouwen van een ISP-Shield voor Arduino

Bouwen van een ISP-Shield voor Arduino

dit Instructable is voor de instructies van de bouw voor onze nieuwe AVR ISP Shield Kit voor Arduino. Haar ontwikkeling heeft veel te danken aan Instructables en onze eigen Gemeenschap (met name Nick!) en ik hoop om uit te leggen wat van die langs de
Android telefoon gebruikt als een GSM-shield voor arduino

Android telefoon gebruikt als een GSM-shield voor arduino

hier mijn een andere video toont het gebruik van app uitvinder en bluetooth communicatie interface een arduino board en een Androïde apparaat. Ditmaal ben ik laten zien hoe de SMS-functie gebruiken om te zetten van de telefoon in een gratis GSM shiel
Hoe maak je een nuttige Photoreflector voor Arduino

Hoe maak je een nuttige Photoreflector voor Arduino

Dit is een hoe te maken van een handig photoreflector voor de Arduino.Photoreflector is een sensor die is wordt vaak gebruikt voor lijn tracer.Stap 1: ToolsSoldeerboutSoldeer (1.0 mm)NipperStap 2: materialenPhotoreflector LBR-127HLD, 50JPY180 Registo
Maak een breadboard adapter voor uw AVR microcontroller

Maak een breadboard adapter voor uw AVR microcontroller

als je wilt spelen rond met micro controllers weet je deze drukte: U wilt testen een deel van een programma en moet u eerst volledig kabellengte tot de uC op het bord brood.Niet met deze handige onderdelen meer!Dit zijn de volledige programmeerbare m
Zet een potlood tekening in een capacitieve sensor voor Arduino

Zet een potlood tekening in een capacitieve sensor voor Arduino

wist je dat?  Kun je potlood tekeningen reactieve raken voor gebruik met uw projecten!  Het is echt makkelijk, en geeft u veel flexibiliteit bij het maken van interfaces voor welke microcontroller project u aanbrengt.Ik samen te stellen dit als onder
Het kiezen van een ATmegaX8 variant voor Arduino-type projecten

Het kiezen van een ATmegaX8 variant voor Arduino-type projecten

bij het doorlezen van de Digikey en Mouser aanbiedingen voor ATmega328 chips, er zijn enkele subtiele verschillen die niet blijkt uit de aanbiedingspagina. Het is gemakkelijk om te kiezen tussen een 168 en een 328 chip, maar wat over de letters na di
Waterniveau Sensor Module voor Arduino AVR ARM STM32 STM8

Waterniveau Sensor Module voor Arduino AVR ARM STM32 STM8

Proficiat aan het team van ICStation ! Zij hebben deze prachtige waterniveau Sensormodule ontwikkeld door grote inspanningen. Deze module met klein formaat en hoge kosteneffectieve is makkelijk te gebruiken. In dit artikel, zullen we de digitale gehe
Hoe maak je een veilige voeding voor arduino met 9 volt batterij

Hoe maak je een veilige voeding voor arduino met 9 volt batterij

U moet een 9V batterij clip (module aansluiting), een 2.1mm stekker, een soldeerbout en wat soldeer. Elke hobby winkel moet deze items.Stap 1: een stabiele (geregeld) 5V DC, die ofwel u via de USB-elektrische leidingen, of via de schild-connectors op
Een geavanceerde benadering van programmering van Arduino & AVR

Een geavanceerde benadering van programmering van Arduino & AVR

Dit instructable is een must read voor iedereen die vertrouwd is met core AVR chips en Arduino.Nou, om meer specifieke, bij het lezen van de instructable, zal u zitten kundig voor:1) weten het juiste verschil tussen AVR en Arduino.2) programmering Ar
Hack een Toaster Oven voor Reflow solderen

Hack een Toaster Oven voor Reflow solderen

als ik ernstiger in mijn elektronica hobby krijgen, ik moet werken met meer SMD componenten. Sommige onderdeelpakketten zijn zeer moeilijk of onmogelijk om te solderen met een traditionele soldeerbout. U kunt dit probleem oplossen, besloten heb ik om
Bouwen van Android Bluetooth App voor Arduino

Bouwen van Android Bluetooth App voor Arduino

Hallo, ga vandaag ik om een android app voor arduino Bluetooth module HC-06 te maken. Via deze app kunt u een lichte of led formulier uw Androïde telefoon. Kunt doen...Stap 1: Ga naar Android editorGa naar MIT App uitvinderLink: http://appinventor.mi
Stapsgewijze LCD bedrading (4 Bit modus) en voorbeelden van de programmering voor Arduino

Stapsgewijze LCD bedrading (4 Bit modus) en voorbeelden van de programmering voor Arduino

dit instructable zal gids een gebruiker stapsgewijze in bedrading en programmering van een Hitachi HD44780 (of compatibele) chipset LCD-scherm aan een Arduino, met behulp van de LiquidCrystal-bibliotheek. Programmering voorbeelden gegeven voor alle o
Relais boord voor Arduino voor minder dan $8.

Relais boord voor Arduino voor minder dan $8.

Hallo vrienden, vandaag ga ik om u te vertellen hoe maak je een relais boord voor Arduino voor minder dan $8. In dit circuit gaan we niet IC of transistor te gebruiken. Dus, laten we het doen!Stap 1: Verzamel de onderdelen- Stap 2: Verzamelen de extr