Innehållsförteckning:
- Steg 1: Djupdykning i datablad & källkod - Klockhastighet
- Steg 2: Ställa in UART -register
- Steg 3: PWM -inställningar
- Steg 4: Resultat
Video: Atmega128A proportionell motorkörning - ATMEL ICE AVR -timer UART PWM -kontroll: 4 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:40
I denna instruerbara, förklarar jag dig hur
- styra en likströmsmotor med PWM
- kommunicera via UART
- hantera timeravbrott
Först och främst använder vi ett AVR Core -systemutvecklingskort som du kan hitta på Aliexpress runt 4 USD. Länken för utvecklingskortet är här. Vi kommer också att använda Atmel ICE Debugger och Atmel Studio för att programmera och felsöka vår programvara.
Steg 1: Djupdykning i datablad & källkod - Klockhastighet
I 1. kulan definierar vi vår kristallfrekvens där vi kan se på utvecklingsbordet
Steg 2: Ställa in UART -register
För att kommunicera med UART måste du ställa in USART Baud Rate Registers - UBRRnL och UBRRnH korrekt, du kan beräkna det själv eller använda onlinekalkylatorn för att enkelt få rätt värden
Onlinekalkylator
ruemohr.org/~ircjunk/avr/baudcalc/avrbaudca…
Så MYUBBR -värdet beräknas då, I register UCSR0B aktiverar vi RXEN0 (recv enable) TXEN0 (sändningsaktivering) och RXCIE0 (RX för avbrott). I register UCSR0C väljer vi 8 bitars charstorlek.
När vi ställt in RX -avbrottsbit bör vi lägga till ISR -funktion för USART0_RX_vect
ISR (USART0_RX_vect) {char rcvChar = UDR0; if (rcvChar! = '\ n') {buffer [bufferIndex] = rcvChar; bufferIndex ++; }}
Du bör inte göra någon affärslogik i din avbrottsrutin. Du måste göra funktionen tillbaka så fort som möjligt.
Steg 3: PWM -inställningar
I funktion initPWM ställer vi in vår CPU -klockskalare, timer/räknarläge som snabb PWM och ställer in dess beteende med COM -bitar
Vi bör också ansluta likströmsmotorn till OC2 -stift som anges i tabell 66. Jämför utgångsläge, snabbt PWM -läge i vårt datablad, du kommer också att se att OC2 -stift är (OC2/OC1C) PB7
Steg 4: Resultat
När du laddar upp källkoden i bilagan.
Du kan ange ett nytt PWM-värde (0-255) från UART (du kan använda arduino seriell portterminal) för att ställa in DC-motorns varvtal.
Rekommenderad:
Arduino Som ISP -- Bränn hexfil i AVR -- Säkring i AVR -- Arduino som programmerare: 10 steg
Arduino Som ISP || Bränn hexfil i AVR || Säkring i AVR || Arduino som programmerare: ……………………… Prenumerera på min YouTube -kanal för fler videor …….. Denna artikel handlar om arduino som isp. Om du vill ladda upp hex -fil eller om du vill ställa in din säkring i AVR behöver du inte köpa en programmerare, du kan göra
Hur man gör LED ICE SKATE: 6 steg (med bilder)
Hur man gör LED ICE SKATE: Jag sätter neopixel LED på min skridskoåkning. Varje gång mikrofonen, som är ansluten till Arduino -kortet, hör något bullrigt ljud. Den skickar olika signaler till lysdioder. Det är lätt att göra, även för nybörjare. Jag delade koder och instruktioner. Låt oss försöka
En liten basförförstärkare och effekterlåda: Black Ice, Electra Fuzz: 9 steg (med bilder)
A Tiny Bass Preamp and Effects Box: Black Ice, Electra Fuzz: I den här guiden kommer jag att visa hur du kan göra din alldeles egna bas/gitarrförstärkare och effektlåda. Jag väljer att göra en hybrideffektlåda, som blandar den vanliga "Black Ice" eller "Electra Distortion" -förvrängningseffekten med "Bazz Fuss" fuzz -effekten.
PWM Med ESP32 - Dämpnings -LED med PWM på ESP 32 Med Arduino IDE: 6 steg
PWM Med ESP32 | Dämpning av LED med PWM på ESP 32 Med Arduino IDE: I denna instruktion kommer vi att se hur man genererar PWM -signaler med ESP32 med Arduino IDE & PWM används i princip för att generera analog utgång från vilken MCU som helst och den analoga utgången kan vara allt mellan 0V och 3.3V (vid esp32) & från
AVR/Arduino RFID -läsare med UART -kod i C: 4 steg
AVR/Arduino RFID -läsare med UART -kod i C: RFID är vurmen som finns överallt - från inventarisystem till märkes -ID -system. Om du någonsin har varit på ett varuhus och gått igenom de metaldetektor-snygga sakerna vid ingångs-/utgångspunkterna, har du sett RFID. Det finns flera