Atmel ATmega328 handleiding
- 1 Inleiding
- 2 Functies
- 3 ATmega328 Board Beschrijving
- 4 ATmega328 Pinout
- 5 Pakket bevat
- 6 Instructies om het ATmega328-bord te selecteren op Arduino IDE
- 7 Bibliotheken installeren
- 8 Bibliotheken link
- 9 Een LED laten knipperen
- 10 Zeven segment displays
- 11 Hex-toetsenbord
- 12 Liquid Crystal Display
- 13 IR (infrarood) sensor
- 14 RTC (Real Time Clock)
- 15 ADC
- 16 L298 Motor
- 17 SD-kaart
- 18 OLED
- 19 Temperatuursensor
- 20 Referenties
- 21 Download handleiding
- 22 In andere talen

Inleiding
ATMGEA328 IoT Trainer Kit essentiële ontwikkelingsfuncties een plug-and-play ontwerp dat het gemakkelijk maakt om verbindingen te maken en studenten, hobbyisten, enthousiastelingen en professionals helpt zich meer te concentreren op de ontwikkeling van programma's/toepassingen. ATMGEA328 IoT Trainer Kit uitgerust met on-board IO's, communicatie-interfaces & randapparatuur. Het is heel eenvoudig om circuits te ontwerpen, ermee te experimenteren en te testen zonder te solderen. Het wordt gebruikt in veel onderwijsinstellingen en R&D LAB's over de hele wereld.
- Schakel de voedingsspanning van dit product en de aangesloten apparaten uit voordat u ze aansluit of loskoppelt.
- Gebruik altijd geïsoleerd gereedschap tijdens het werken.
- Raak geen componenten van de printplaat aan met open handen wanneer de stroom is ingeschakeld.
Functies
- Plug & Play Interface Connectiviteit.
- Professioneel EMI/RFI-conform PCB-lay-outontwerp
- Modulair blokontwerp maakt eenvoudige toegang & snel prototypen mogelijk
- FRC-connectiviteitsfuncties minimaliseren de verbindingsfout.
- Hoogwaardige printplaat met houten behuizing.
- 8 interfacing LED's.
- 1 * 4 Menutoetsenblok.
- 4 * 4 Matrix Toetsenblok.
- RS232, RS485, USB-communicatiepoort.
- 7 Segment Gemultiplexeerde Display.
- 16*2 LCD & OLED Display
- ADC & DAC-kaart.
- 8 bit 4 poort IO.
- On Board Wi-Fi/Bluetooth-connectiviteit
- 3.3 tot 5V Level Converter.
- Voeding 3.3V en 5V
- SD CARD Interface.
- RTC & EEPROM Interface.
- DC Motor/ Stappenmotor Driver.
- Relais, Buzzer.
- 1x temperatuursensor.
- 3x Analoge Test POT.
ATmega328 Board Beschrijving

- Voeding
- Aan/uit-schakelaar
- Spanningsregelaar
- OLED-scherm
- Digitale ingangsschakelaar
- ADC (Variabele weerstand POT)
- Temperatuursensor LM35
- RTC
- L298 Driver
- Logisch niveau omzetter
- Buzzer
- Relais
- SD-kaarthouder
- Jumperinstellingen voor I2C
- EEPROM
- Jumperinstellingen voor EEPROM
- 1*4 Toetsenblokschakelaars
- RDL BUS FRC-connector
- 4*4 Toetsenblokmatrix
- ATMEGA328 Controller
- 7 Segment Display
- 2*4 LED's
- Jumperinstellingen voor UART Select Pins
- 16*2 LCD-scherm
- Wi-Fi/XBEE-module
- RD485-module
- On Board ISP-programmeur
- Jumperinstellingen voor UART TTL
- USB-poort
- DB9 Seriële Vrouwelijke Connector
- Stroomindicator
ATmega328 Pinout
Pakket bevat
- Ontwikkelingsbord met houten behuizing
- USB-kabel
- 12V 2A Adapter
- FRC-kabel
LET OP: XBee-module is niet inbegrepen in het pakket.
Instructies om het ATmega328-bord te selecteren op Arduino IDE
Het ATmega328-bord installeren in Arduino IDE
Voordat u met deze methode begint, moet u ervoor zorgen dat u de nieuwste versie van de Arduino IDE 1.8.19 op uw computer hebt geïnstalleerd.
Zo niet, installeer het dan van https://www.arduino.cc/en/software, ga verder met deze tutorial.
- Sluit de ESP32 Trainer Kit aan op uw computer. Met uw Arduino IDE open, volgt u deze stappen:
- Selecteer uw bord in het menu Tools > Board (het is de Arduino Uno)
![]()
Selecteer de poort (als u de COM-poort niet ziet in uw Arduino IDE, moet u de FTDI-stuurprogramma's installeren: https://ftdichip.com/drivers/d2xx-drivers/

Bibliotheken installeren
- Om een nieuwe bibliotheek in uw Arduino IDE te installeren. Open de IDE en klik op het menu "Sketch" en vervolgens op Include Library Ю Manage Libraries (Bibliotheek toevoegen Ю Bibliotheken beheren).
![]()
- Vervolgens wordt de Library Manager geopend en vindt u een lijst met bibliotheken die al zijn geïnstalleerd of klaar zijn voor installatie. In dit voorbeeld installeren we de RTC-bibliotheek (d.w.z. rtclib). Voer de naam van de bibliotheek in om deze te vinden, klik erop en selecteer vervolgens de versie van de bibliotheek die u wilt installeren. Soms is er maar één versie van de bibliotheek beschikbaar. Klik vervolgens op installeren. Als u de bibliotheek niet kunt vinden, raadpleegt u "Een LED laten knipperen" > Programma.
![]()
- Wacht tot de IDE de nieuwe bibliotheek heeft geïnstalleerd. Het downloaden kan enige tijd duren, afhankelijk van uw verbindingssnelheid. Zodra het klaar is, zou er een Installed (Geïnstalleerd) tag moeten verschijnen naast de RTC-bibliotheek. Klik vervolgens op sluiten.
Een andere methode voor het installeren en importeren van een .zip Library
- Ga naar Google, zoek naar de bibliotheek (d.w.z. rtclib) die u wilt installeren, klik op download ZIP.
![Atmel - ATmega328 - Bibliotheken installeren - Stap 1 Bibliotheken installeren - Stap 1]()
- In de Arduino IDE, ga naar Sketch > Include Library > Add. ZIP Library (Schets > Bibliotheek toevoegen > Toevoegen. ZIP Library).
![Atmel - ATmega328 - Bibliotheken installeren - Stap 2 Bibliotheken installeren - Stap 2]()
- Selecteer de bibliotheek die u wilt toevoegen. Ga naar de downloadlocatie van het .zip-bestand en open het.
![Atmel - ATmega328 - Bibliotheken installeren - Stap 3 Bibliotheken installeren - Stap 3]()
Bibliotheken link
- Keypad Library (keypad.h) DOWNLOAD HERE
- LCD Library (LiquidCrystal.h) DOWNLOAD HERE
- RTC Libraries
(rtclib) DOWNLOAD HERE
(Wire.h) DOWNLOAD HERE - SD Card Libraries
(FS.h) DOWNLOAD HERE
(SD.h) DOWNLOAD HERE
(SPI.h) DOWNLOAD HERE - OLED Libraries
(Adafruit_GFX.h) DOWNLOAD HERE
(Adafruit_SSD1306.h) DOWNLOAD HERE
Een LED laten knipperen
Doel:
LED's koppelen met ATmega328-microcontroller.
Beschrijving:
Leren hoe een ATmega328-microcontroller te programmeren om een LED te laten knipperen door LED's aan te sluiten op de digitale pinnen.
Hardwarevereisten:
ATmega328 IoT Development Kit en FRC-kabel.

Procedure:
- Sluit de P1-poort en de SV2 (LED)-poort aan met behulp van de FRC-kabel zoals hierboven weergegeven.
- Sluit de USB-kabel aan op het bord.
- Open Arduino IDE. Selecteer Arduino Uno in borden en selecteer COM-poort.
- Schrijf nu het programma, verifieer en upload het.
- Nu zie je de LED knipperen op het ATmega328-ontwikkelbord.
Programma:
const int L1=2, L2=3, L3=4, L4=5, L5=6, L6=7, L7=8, L8=9; //LED-pinnen initialiseren
void setup ()
{
pinMode (L1, OUTPUT); // Stel alle Port P1-pinnen in als output
pinMode (L2, OUTPUT);
pinMode (L3, OUTPUT);
pinMode (L4, OUTPUT);
pinMode (L5, OUTPUT);
pinMode (L6, OUTPUT);
pinMode (L7, OUTPUT);
pinMode (L8, OUTPUT);
}
void loop ()
{
digitalWrite (L1, HIGH);
digitalWrite (L2, HIGH);
digitalWrite (L3, HIGH);
digitalWrite (L4, HIGH);
digitalWrite (L5, HIGH);
digitalWrite (L6, HIGH);
digitalWrite (L7, HIGH);
digitalWrite (L8, HIGH);
delay (2000);
digitalWrite (L1, LOW);
digitalWrite (L2, LOW);
digitalWrite (L3, LOW);
digitalWrite (L4, LOW);
digitalWrite (L5, LOW);
digitalWrite (L6, LOW);
digitalWrite (L7, LOW);
digitalWrite (L8, LOW);
delay (2000);
}
Zeven segment displays
Doel:
ATmega328-microcontroller koppelen aan een zeven segment display.
Beschrijving:
Om getallen weer te geven in een 7 segment display.
Benodigde hardware:
ESP32-microcontroller ontwikkelbord en FRC-kabels.

Procedure:
- Verbind P1-poort en SV4 (Data) poort en verbind P2-poort en SV3 (Select) poort met behulp van een FRC-kabel zoals hierboven weergegeven.
- Sluit de USB-kabel aan op het bord.
- Open Arduino IDE. Selecteer Arduino Uno in borden en selecteer COM-poort.
- Schrijf nu het programma, controleer en upload het.
- Nu kunt u zien dat het getal begint te verschijnen op de zeven segmenten op het ATmega328-ontwikkelbord.
Programma:
const int sel1=10, sel2=11, sel3=12, sel4=13; //selectiepinnen initialiseren -Poort P2
const int a=2, b=3, c=4, d=5, e=6, f=7, g=8, dp=9; //datapinnen initialiseren -Poort P1
void setup ()
{
pinMode (sel1, OUTPUT); //selectiepinnen declareren als output
pinMode (sel2, OUTPUT);
pinMode (sel3, OUTPUT);
pinMode (sel4, OUTPUT);
digitalWrite (sel1, LOW); //alle 4 de cijfers van het 7-segment display selecteren door het LOW te maken
digitalWrite (sel2, LOW);
digitalWrite (sel3, LOW);
digitalWrite (sel4, LOW);
pinMode (a, OUTPUT); //datapinnen declareren als output
pinMode (b, OUTPUT);
pinMode (c, OUTPUT);
pinMode (d, OUTPUT);
pinMode (e, OUTPUT);
pinMode (f, OUTPUT);
pinMode (g, OUTPUT);
pinMode (dp, OUTPUT);
delay (100);
}
void loop ()
{
// print 0 (afdrukken 0)
digitalWrite (a, LOW);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
digitalWrite (e, LOW);
digitalWrite (f, LOW);
digitalWrite (g, HIGH);
digitalWrite (dp, LOW);
delay (2000);
// print 1 (afdrukken 1)
digitalWrite (a, HIGH);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, HIGH);
digitalWrite (e, HIGH);
digitalWrite (f, HIGH);
digitalWrite (g, HIGH);
digitalWrite (dp, HIGH);
delay (2000);
// print 2 (afdrukken 2)
digitalWrite (a, LOW);
digitalWrite (b, LOW);
digitalWrite (c, HIGH);
digitalWrite (d, LOW);
digitalWrite (e, LOW);
digitalWrite (f, HIGH);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
// print 3 (afdrukken 3)
digitalWrite (a, LOW);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
digitalWrite (e, HIGH);
digitalWrite (f, HIGH);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
// print 4 (afdrukken 4)
digitalWrite (a, HIGH);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, HIGH);
digitalWrite (e, HIGH);
digitalWrite (f, LOW);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
// print 5 (afdrukken 5)
digitalWrite (a, LOW);
digitalWrite (b, HIGH);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
digitalWrite (e, HIGH);
digitalWrite (f, LOW);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
// print 6 (afdrukken 6)
digitalWrite (a, LOW);
digitalWrite (b, HIGH);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
digitalWrite (e, LOW);
digitalWrite (f, LOW);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
// print 7 (afdrukken 7)
digitalWrite (a, LOW);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, HIGH);
digitalWrite (e, HIGH);
digitalWrite (f, HIGH);
digitalWrite (g, HIGH);
digitalWrite (dp, HIGH);
delay (2000);
// print 8 (afdrukken 8)
digitalWrite (a, LOW);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
digitalWrite (e, LOW);
digitalWrite (f, LOW);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
// print 9 (afdrukken 9)
digitalWrite (a, LOW);
digitalWrite (b, LOW);
digitalWrite (c, LOW);
digitalWrite (d, LOW);
digitalWrite (e, HIGH);
digitalWrite (f, LOW);
digitalWrite (g, LOW);
digitalWrite (dp, LOW);
delay (2000);
}
Hex-toetsenbord
Doel:
4x4 Hex-toetsenbord koppelen aan een ATmega328-microcontrollermodule.
Beschrijving:
Om de ingedrukte toets weer te geven op de seriële monitor.
Benodigde hardware:
ATmega328-microcontroller ontwikkelbord en FRC-kabel.

Procedure:
- Verbind P1-poort en SV5 (4*4 Key Matrix) poort met behulp van een FRC-kabel zoals hierboven weergegeven.
- Sluit de USB-kabel aan op het bord.
- Open Arduino IDE. Selecteer Arduino Uno in borden en selecteer COM-poort.
- Schrijf nu het programma, controleer en upload het.
- Nadat het uploaden is voltooid, opent u de seriële monitor om de uitvoer te bekijken.
- Op uw seriële monitor verschijnt het nummer voor elke ingedrukte schakelaar.
Programma:

Uitvoer:

Liquid Crystal Display
Doel:
LCD-display koppelen aan ATmega328-Microcontroller module.
Beschrijving:
Bericht weergeven op het LCD-scherm.
Benodigde hardware:
ATmega328-Microcontroller Development board en FRC-kabel.

Procedure:
- Verbind P1-poort en SV1 (LCD 16*2 Display) poort met behulp van een FRC-kabel zoals hierboven weergegeven.
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Nu kunt u de uitvoer op het LCD-scherm zien.
Programma:

IR (infrarood) sensor
Doel:
IR-sensor koppelen aan ATmega328-Microcontroller module.
Beschrijving:
Leren hoe waarden van een IR-sensor te lezen met behulp van ATmega328-Microcontroller.
Benodigde hardware:
ESP32-Microcontroller Development board, IR-sensor, F-F Patch Chords.

Procedure:
- Verbind P1-poortpinnen (5, GND, 3V) met IR-sensorpinnen (OUT, GND, 5V) met behulp van patchkabels zoals hierboven weergegeven.
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Nu kunt u de uitvoer op de seriële monitor zien.
Programma:

Uitvoer:

RTC (Real Time Clock)
Doel:
Real Time Clock module koppelen aan ATmega328-Microcontroller module.
Beschrijving:
Datum en tijd weergeven op de seriële monitor met behulp van ATmega328 microcontroller development board.
Benodigde hardware:
ATmega328-Microcontroller Development board en RTC-batterij.

Procedure:
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Open de seriële monitor om de uitvoer te observeren.
Programma:



Uitvoer:
ADC
Doel:
ADC koppelen aan ATmega328-Microcontroller Modue.
Beschrijving:
Leren hoe ADC-waarden te lezen met behulp van ATmega328-Microcontroller.
Benodigde hardware:
ATmega328-Microcontroller Development board en FRC-kabel.

Procedure:
- Verbind P3-poort en SV12 (ADC & Temp) poort met behulp van een FRC-kabel zoals hierboven weergegeven.
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Open de seriële monitor om de uitvoer te observeren.
Programma:

Uitvoer:
L298 Motor
Doel:
L298 Motor koppelen aan ATmega328-Microcontroller Board.
Beschrijving:
Dit experiment laat zien hoe de L298 Motor met de klok mee en tegen de klok in te draaien met behulp van ATmega328-Microcontroller.
Benodigde hardware:
ATmega328-Microcontroller Development board, L298 Motor en FRC-kabel.

Procedure:
- Verbind P1-poort en SV9-poort met behulp van een FRC-kabel.
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer DOIT ESP32 DEVKIT V1in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
Programma:


SD-kaart
Doel:
SD-kaart koppelen aan ATmega328-Microcontroller Board om de in de geheugenkaart opgeslagen mappen weer te geven.
Beschrijving:
De opgeslagen mappen in de SD-kaart lezen met behulp van ATmega328 microcontroller development board.
Benodigde hardware:
ATmega328-Microcontroller Development board en SD-kaart.

Procedure:
- Plaats de SD-kaart in de sleuf op het board.
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Open de seriële monitor om de uitvoer te observeren.
Programma:


Uitvoer:
OLED
Doel:
OLED-display koppelen aan ATmega328-Microcontroller Board.
Beschrijving:
Bericht weergeven op het OLED-scherm.
Benodigde hardware:
ATmega328-Microcontroller Development board

Procedure:
- Sluit de USB-kabel aan op het board.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Nu kunt u de uitvoer zien die het bericht weergeeft op OLED van het ATmega328 microcontroller board.
Programma:

Temperatuursensor
Doel:
Informatie extraheren uit een temperatuursensor.
Beschrijving:
Leren hoe waarden van een temperatuursensor te lezen met behulp van een ATmega328-microcontroller.
Benodigde hardware:
ATmega328-Microcontroller Development board

Procedure:
- Verbind P2-poort en SV12-poort met behulp van een FRC-kabel zoals hierboven weergegeven
- Sluit de USB-kabel aan op het bord.
- Open Arduino IDE. Selecteer Arduino Uno in boards en selecteer COM-poort.
- Schrijf het programma, verifieer en upload het.
- Nu kunt u de uitvoer op de seriële monitor zien.
Programma:

UITVOER:

Referenties
https://www.arduino.cc/en/software
D2XX Drivers - FTDI
GitHub - Chris--A/Keypad: A version of the keypad library found in Wiring. This is just a copy made compatible with the Arduino IDE library manager.
GitHub - arduino-libraries/LiquidCrystal: Liquid Crystal Library for Arduino
GitHub - adafruit/RTClib: A fork of Jeelab's fantastic RTC Arduino library
GitHub - esp8266/Arduino: ESP8266 core for Arduino
GitHub - espressif/arduino-esp32: Arduino core for the ESP32
GitHub - arduino-libraries/SD: SD Library for Arduino
GitHub - PaulStoffregen/SPI: SPI library for Teensy & Arduino IDE
GitHub - adafruit/Adafruit-GFX-Library: Adafruit GFX graphics core Arduino library, this is the 'core' class that all our other graphics libraries derive from
GitHub - adafruit/Adafruit_SSD1306: Arduino library for SSD1306 monochrome 128x64 and 128x32 OLEDs
Download handleiding
Hier kunt u de volledige pdf-versie van de handleiding downloaden. Deze kan aanvullende veiligheidsinstructies, garantie-informatie, FCC-regels, enz. bevatten.
Download Atmel ATmega328 handleiding





