Sadržaj:
- Korak 1: Dubinsko ronjenje u podatkovnoj tablici i izvornom kodu - brzina takta
- Korak 2: Postavljanje UART registara
- Korak 3: Postavke PWM -a
- Korak 4: Rezultat
Video: Atmega128A proporcionalna vožnja motorom - ATMEL ICE AVR timer UART PWM kontrola: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:34
U ovom uputstvu ću vam objasniti kako to učiniti
- upravljati istosmjernim motorom s PWM -om
- komunicirati putem UART -a
- ručica mjerača vremena prekida
Prije svega, upotrijebit ćemo razvojnu ploču AVR Core sustava koju možete pronaći na Aliexpressu oko 4 USD. Link razvojne ploče je ovdje. Također ćemo koristiti Atmel ICE Debugger i Atmel Studio za programiranje i ispravljanje pogrešaka u našem softveru.
Korak 1: Dubinsko ronjenje u podatkovnoj tablici i izvornom kodu - brzina takta
U 1. točki definiramo našu kristalnu frekvenciju koju možemo vidjeti na razvojnoj ploči
Korak 2: Postavljanje UART registara
Da biste komunicirali s UART -om, morate ispravno postaviti USART registre brzine prijenosa podataka - UBRRnL i UBRRnH, to možete sami izračunati ili možete koristiti mrežni kalkulator za jednostavno dobivanje ispravnih vrijednosti
Mrežni kalkulator
ruemohr.org/~ircjunk/avr/baudcalc/avrbaudca…
Dakle, tada se izračunava vrijednost MYUBBR. U registru UCSR0B omogućujemo RXEN0 (omogućavanje recv) TXEN0 (omogućavanje prijenosa) i RXCIE0 (RX za prekid). U registru UCSR0C odabiremo 8 -bitnu veličinu znakova.
Nakon što smo postavili RX prekidni bit, trebali bismo dodati ISR funkciju za USART0_RX_vect
ISR (USART0_RX_vect) {char rcvChar = UDR0; if (rcvChar! = '\ n') {međuspremnik [bufferIndex] = rcvChar; bufferIndex ++; }}
Ne biste trebali unositi nikakvu poslovnu logiku u rutinu usluge prekida. Morate učiniti da se funkcija vrati što je prije moguće.
Korak 3: Postavke PWM -a
U funkciji initPWM postavili smo skaler CPU sata, način Timer/Counter kao Fast PWM i postavili njegovo ponašanje s COM bitovima
Također bismo trebali spojiti istosmjerni motor na OC2 pin koji je naveden u Tablici 66. Usporedite Output Mode, Fast PWM Mode u našem podatkovnom listu, također ćete vidjeti da je OC2 pin (OC2/OC1C) PB7
Korak 4: Rezultat
Kada učitate izvorni kod u privitku.
Možete unijeti novu vrijednost PWM (0-255) iz UART-a (možete koristiti terminal serijskog porta arduino) za podešavanje brzine istosmjernog motora.
Preporučeni:
Eksperimenti s slučajnim PWM motorom istosmjernog motora + Enkoder Rješavanje problema: 4 koraka
Eksperimenti s slučajnim PWM motorom na istosmjernoj struji + Enkoder Rješavanje problema: Često postoje slučajevi kada je nečije smeće tuđe blago, a ovo je bio jedan od onih trenutaka za mene. Ako ste me pratili, vjerojatno znate da sam se prihvatio velikog projekta stvaranja vlastitog CNC 3D printera od otpada. Ti su komadi bili
Kontrola svjetline PWM LED kontrola pomoću tipki, Raspberry Pi i ogrebotina: 8 koraka (sa slikama)
Kontrola svjetline PWM LED kontrola temeljena na tipkama, Raspberry Pi i Scratch: Pokušavao sam pronaći način da svojim učenicima objasnim kako PWM radi, pa sam si postavio zadatak pokušati kontrolirati svjetlinu LED diode pomoću 2 tipke - jedan gumb povećava svjetlinu LED -a, a drugi ga prigušuje. Za program
Timer Raspberry Pi 3 sa servo motorom: 5 koraka
Timer Raspberry Pi 3 sa servo motorom: Svrha ove izrade je stvoriti automatizirani mjerač vremena s podešenim vremenom korištenja Servo -a. Koristi malinu pi 3 kao računalo i Python za kôd
Vožnja istosmjernim motorom pomoću H mosta: 9 koraka
Vožnja istosmjernim motorom pomoću H mosta: Zdravo dečki! U ovom uputstvu pokazat ću vam kako izgraditi H most - jednostavan elektronički krug koji nam omogućuje primjenu napona na opterećenje u bilo kojem smjeru. Obično se koristi u aplikaciji robotike za upravljanje istosmjernim motorima. Korištenjem H Brid
Vožnja koračnim motorom bez mikrokontrolera .: 7 koraka
Vožnja koračnim motorom bez mikrokontrolera .: U ovom Instructable-u vozit ću motor sa 28 koraka BYJ-48, s UNL2003 darlington pločom, ponekad nazvanom x113647, bez mikrokontrolera. Imat će start/stop, naprijed/ unatrag i kontrolu brzine. Motor je jednopolarni stepenasti motor sa