Përmbajtje:
- Hapi 1: Zgjedhja e Mikrokontrolluesit
- Hapi 2: Konfiguro modulin CCP
- Hapi 3: Konfigurimi i modulit Timer2 (Regjistri TMR2)
- Hapi 4: Konfigurimi i PR2 (Regjistri i Periudhave Timer2)
- Hapi 5: Konfiguroni modulin CCPR1l
- Hapi 6: Shkruani Skicën në Ju MPLAB X IDE Kodi është dhënë më poshtë
Video: Krijoni valë PWM me mikrokontrollues PIC: 6 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:16
ÇFAR IS SHT PWM?
QANDNDRIMET PWM P MOR MODULIMIN E GJERSISUL SUL PULSIT është një teknikë me të cilën gjerësia e pulsit ndryshon.
Për ta kuptuar këtë koncept merrni parasysh qartë një puls të orës ose ndonjë sinjal valor katror që ka 50% cikël pune që do të thotë se periudha Ton dhe Toff është e njëjtë, Kohëzgjatja totale për të cilën sinjali ishte i lartë dhe kohëzgjatja për të cilën sinjali ishte i ulët quhet total Periudha kohore.
Për imazhin e treguar më sipër, kjo valë ka një cikël pune prej 50%
Cikli i punës = (Ora ON / Koha totale)*100
ON ON - koha për të cilën sinjali ishte i lartë
Koha OFF - armiku i kohës i cili sinjal ishte i ulët Koha totale - Periudha totale kohore e pulsit (koha ON dhe OFF)
Hapi 1: Zgjedhja e Mikrokontrolluesit
Përzgjedhja e mikrokontrolluesit të përshtatshëm për projektin kjo është pjesa thelbësore e projektit Sinjalet PWM mund të gjenerohen në mikrokontrolluesit me kanale PWM (regjistrat CCP). Për këtë projekt po planifikoj t'i përmbahem pic16f877. ju mund të shkarkoni lidhjen e fletës së të dhënave është dhënë më poshtë
Fleta e të dhënave PIC16F877a klikoni këtu
Moduli CCP është përgjegjës për prodhimin e sinjalit PWM. CCP1 dhe CCP2 janë të shumëfishta me PORTC. PORTC është një port dypalësh i gjerë 8-bit. Regjistri përkatës i drejtimit të të dhënave është TRISC. Vendosja e bitit TRISC (= 1) do të bëjë që pini përkatës PORTC të merret si hyrje. Pastrimi i një biti TRISC (= 0) do ta bëjë pinin PORTC përkatës një dalje.
TRISC = 0; // Pastrimi i këtij biti do ta bëjë PORTC si dalje
Hapi 2: Konfiguro modulin CCP
CCP - MODULE TAP CAPTURE/KRAHASIM/PWM
Çdo modul Capture/Compare/PWM (CCP) përmban një regjistër 16-bit i cili mund të funksionojë si:
• Regjistri i kapjes 16-bit
• Regjistër Krahasimi 16-bitësh
• Regjistri PWM Master/Cikli i Detyrës së Skllavit
Konfiguroni regjistrin CCP1CON në modalitetin PWM
Përshkrimi i regjistrit
CCPxCON Ky regjistër përdoret për të konfiguruar modulin CCP për funksionimin Capture/Compare/PWM.
CCPRxL Ky regjistër mban bitët 8-Msb të PWM, 2-bitët e ulët do të jenë pjesë e regjistrit CCPxCON.
TMR2 Numëruesi pa pagesë i cili do të krahasohet me CCPR1L dhe PR2 për gjenerimin e daljes PWM.
Tani do të përdor binarin për të përfaqësuar bitët për të konfiguruar regjistrin CCP1CON.
referojuni imazhit të mësipërm.
CCP1CON = 0b00001111;
Ju gjithashtu mund të keni formatin gjashtëkëndësh
CCP1CON = 0x0F; // konfigurimi i regjistrit CCP1CON për modalitetin PWM
Hapi 3: Konfigurimi i modulit Timer2 (Regjistri TMR2)
Timer2 është një kohëmatës 8-bit me një para-shkallë dhe një postcaler. Mund të përdoret si bazë kohore PWM për mënyrën PWM të modulit (ve) CCP. Regjistri TMR2 është i lexueshëm dhe i shkrueshëm dhe pastrohet në çdo pajisje Reset.
Tregohet regjistri T2CON
Shkalla parashkollore dhe postale do të rregullojnë frekuencën e daljes së valës së gjeneruar PWM.
Frekuenca = frekuenca e orës/(4*prescaler*(PR2-TMR2)*Postale shkallë*numërimi)
Ku Tout = 1/frekuencë
T2CON = 0b00000100;
Kjo do të gjenerojë kristal 2.5 KHz @ 1Mhz ose 100KHz @ 4MHz (praktikisht ka një kufizim për këtë frekuencë PWM referojuni fletës së të dhënave të veçanta për më shumë detaje)
përfaqësim gjashtëkëndësh
T2CON = 0x04; // aktivizoni T2CON pa Konfigurimin Prescaler dhe postcale
Hapi 4: Konfigurimi i PR2 (Regjistri i Periudhave Timer2)
Moduli Timer2 ka një regjistër të periudhës 8-bit, PR2. Kohëmatësi2 rritet nga 00h derisa përputhet me PR2 dhe pastaj rivendoset në 00h në ciklin e ardhshëm të rritjes. PR2 është një regjistër i lexueshëm dhe i shkruar. Regjistri PR2 është i inicializuar në FFh me Rivendosje.
Vendosja e një diapazoni të përshtatshëm për PR2 do të lejojë përdorimin për të ndryshuar ciklin e punës të valës së gjeneruar PWM
PR2 = 100; // Vendosni kohën e Ciklit në 100 për ndryshimin e ciklit të punës nga 0-100
Për thjeshtësi po përdor PR2 = 100 duke bërë CCPR1L = 80; Cikli i punës 80% mund të arrihet.
Hapi 5: Konfiguroni modulin CCPR1l
Meqenëse PR2 = 100 CCPR1l mund të konfigurohet kudo midis 0-100 për të marrë ciklin e dëshiruar të punës.
Hapi 6: Shkruani Skicën në Ju MPLAB X IDE Kodi është dhënë më poshtë
#përfshi
void vonesë (int a) // funksion për të gjeneruar vonesë {
për (int i = 0; i <a; i ++)
{
për (int j = 0; j <144; j ++);
}
}
pavlefshme kryesore ()
{TRISC = 0; // Pastrimi i këtij biti do ta bëjë PORTC si dalje.
CCP1CON = 0x0F; // konfigurimi i regjistrit CCP1CON për modalitetin PWM
T2CON = 0x04; // aktivizoni T2CON pa Konfigurimin Prescaler dhe postcale.
PR2 = 100; // Vendosni kohën e Ciklit në 100 për ndryshimin e ciklit të punës nga 0-100
ndërsa (1) {
CCPR1L = 75; // gjeneroi 75% vonesë të ciklit të punës (1);
}
}
Unë gjithashtu kam bërë një modifikim të vogël të kodit në mënyrë që frekuenca e valës së gjeneruar PWM
Ky është kodi i simuluar në proteus dhe vala e daljes PWM është treguar më poshtë Për ta ngarkuar këtë në bordet tuaja të zhvillimit të fotografisë përdorni #përfshini me pjesë të përshtatshme konfigurimi.
Faleminderit
Recommended:
Si të krijoni një pasqyrë inteligjente portative/krijoni një kombinim të kutisë: 8 hapa
Si të krijoni një pasqyrë të lëvizshme inteligjente/krijoni një kombinim të kutisë: Si një projekt përfundimtar për gurin tim të lartë në Davis & Kolegji Elkins, fillova të hartoj dhe krijoj një kuti udhëtimi make up, së bashku me një pasqyrë më të madhe dhe përdorimin e një mjedre pi dhe platformës softuerike të pasqyrës magjike, që do të funksiononte si një port
Krijoni bordin tuaj të zhvillimit me mikrokontrollues: 3 hapa (me fotografi)
Bëni Bordin tuaj Zhvillimor me Mikrokontrollues: A keni dashur ndonjëherë të bëni bordin tuaj të zhvillimit me mikrokontrollues dhe nuk e dini se si. Në këtë udhëzues unë do t'ju tregoj se si ta bëni atë. E tëra që ju nevojitet është njohuri në elektronikë, dizajnimin e qarqeve dhe programim. Nëse keni ndonjë kërkim
Krah robotik i bazuar në mikrokontrollues PIC: 6 hapa (me fotografi)
Krahu Robotik i Bazuar në Mikrokontrollues PIC: Nga linja e montimit të industrive të prodhimit të automobilave deri te robotët e telesurgjisë në hapësirë, Armët Robotikë gjenden kudo. Mekanizmat e këtyre robotëve janë të ngjashëm me një njeri i cili mund të programohet për funksione dhe rritje të ngjashme
Si të krijoni qarqe dhe të krijoni një PCB duke përdorur Autodesk EAGLE: 9 hapa
Si të dizajnoni qarqe dhe të krijoni një PCB duke përdorur Autodesk EAGLE: Ka shumë lloje të programeve CAD (Dizajni i Ndihmuar nga Kompjuteri) që mund t'ju ndihmojnë të dizajnoni dhe bëni PCB (Pllaka Qarqesh të Shtypura), çështja e vetme është se shumica e tyre nuk duan t shpjegoj vërtet se si t'i përdorim ato dhe çfarë mund të bëjnë. Kam përdorur shumë
Pesëdhjetë metra varg Pika e hyrjes me valë me TP Link WN7200ND Përshtatës me valë USB në Raspbian Stretch: 6 hapa
Pesëdhjetë metra varg Pika e hyrjes pa tel me TP Link WN7200ND Përshtatës USB me valë në Raspbian Stretch: Raspberry Pi është e mrekullueshme për të krijuar pika të sigurta të hyrjes pa tel, por nuk ka një gamë të mirë, kam përdorur një përshtatës Wireless USB TP Link WN7200ND për ta zgjeruar atë. Unë dua të ndaj se si ta bëj Pse dua të përdor një pi mjedër në vend të një ruteri? T