Orodha ya maudhui:

Mashine ya Serikali ya kumaliza kwenye MSP430: Hatua 6
Mashine ya Serikali ya kumaliza kwenye MSP430: Hatua 6

Video: Mashine ya Serikali ya kumaliza kwenye MSP430: Hatua 6

Video: Mashine ya Serikali ya kumaliza kwenye MSP430: Hatua 6
Video: Siri 5 ili kuwa mjasiriamali mwenye mafanikio. 2024, Novemba
Anonim
Mashine ya Serikali ya kumaliza kwenye MSP430
Mashine ya Serikali ya kumaliza kwenye MSP430
Mashine ya Jimbo la kumaliza kwenye MSP430
Mashine ya Jimbo la kumaliza kwenye MSP430

Nitaenda kukuonyesha jinsi ya kupanga Launchpad ya MSP430G2 na Mashine za Jimbo la Finite (FSM) ukitumia Zana za Jedwali la Jimbo la YAKINDU moja kwa moja katika Studio ya Mtunzi wa Hati za Hati za Texas.

Mafunzo haya yana hatua sita:

  1. Kusakinisha Zana za Jimbo la YAKINDU kama programu-jalizi kwa Studio ya Mtunzi wa Msimbo
  2. Kuanza na Mashine za Serikali katika Studio ya Mtunzi wa Kanuni
  3. Unda Blinky State Machine
  4. Zalisha Nambari ya Mashine ya Jimbo C
  5. Kuita Machine State kutoka kwa nambari yako
  6. Endesha mradi!

Mradi huu unaweza kutumika kama ramani ya MPS430 yoyote au MSP432!

Vifaa

Programu:

  • Zana za Jimbo la YAKINDU
  • Studio Code Composer Studio (CCS) Mazingira Jumuishi ya Maendeleo (IDE)

Vifaa:

MSP430G2 LaunchPad Kitanda cha Ukuzaji

Hatua ya 1: Kusanikisha Zana za Jimbo la Jimbo la YAKINDU kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo

Kusakinisha Zana za Jimbo la YAKINDU Kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo
Kusakinisha Zana za Jimbo la YAKINDU Kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo
Kusakinisha Zana za Jimbo la YAKINDU Kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo
Kusakinisha Zana za Jimbo la YAKINDU Kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo
Kuweka Zana za Jimbo la YAKINDU Kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo
Kuweka Zana za Jimbo la YAKINDU Kama Programu-jalizi ya Studio ya Mtunzi wa Msimbo

Kwanza, unahitaji kusanikisha Studio ya Mtunzi wa TI ya TI. Nimefanikiwa kujaribu usanidi na toleo la CCS 9.2 na zaidi mara moja. Unaweza kupata kiunga cha kupakua hapa:

Pakua CCS

Bonyeza kwa kupakua na uhakikishe kuwa umechagua angalau MSP430 za nguvu za chini wakati wa kusanikisha. Wakati huo huo, unaweza kunyakua wavuti ya sasisho kwa Zana za Jimbo la YAKINDU. Enda kwa:

Pakua Zana za Jimbo la YAKINDU

Kwenye wavuti hii, bonyeza Pakua Sasa na ufuate maagizo. Kama unavyoona kwenye picha: Ni bure kwa matumizi yasiyo ya kibiashara. Baada ya usajili, utapata muhtasari wa chaguzi za kupakua. Bonyeza kwenye SITI YA STANDARD DOWNLOAD na ubonyeze Sakinisha KUTOKA KWENYE SASA. Huko utapata kiunga chini ya Matoleo thabiti. Shika kiunga hiki na uihifadhi au uweke kwenye clipboard yako.

Kusakinisha Zana za Jimbo la Jimbo la YAKINDU katika Studio ya Mtunzi wa Msimbo inaweza kuwa ngumu kidogo, kulingana na toleo la Studio ya Mtunzi wa Kanuni unayotumia. Labda hatua hizi zimepitwa na wakati - hata hivyo: usisite kuniuliza kwenye maoni ikiwa unahitaji msaada wowote.

Hizi ndizo hatua zangu:

Baada ya kufanikiwa kusanikisha CCS kwenye mfumo wako, fungua kichupo cha Usaidizi na ubonyeze Sakinisha Programu mpya… Katika mchawi huu, ongeza tovuti ifuatayo ya sasisho kupitia kitufe cha Ongeza…:

download.eclipse.org/releases/2018-09/

Usiongeze chochote, inahitaji tu kutatuliwa. Unaweza kuiona kwenye picha.

Baada ya hayo, kurudia hatua na bonyeza kitufe cha Ongeza…. Ingiza tovuti ya sasisho ya Zana za Jimbo la YAKINDU, ambayo kwa matumaini umehifadhi. Kisha, chagua kisanduku cha kuangalia cha Usimamizi wa Leseni ya YAKINDU na bonyeza kitufe kinachofuata. Fuata maagizo. IDE yako inaweza kuanza tena mara moja.

Mwishowe, unaweza kusanikisha zana za Jimbo la Jimbo la YAKINDU. Rudia hatua za mwisho, lakini wakati huu chagua Toleo la Kawaida la Zana za Jimbo la YAKINDU. Kwa mara nyingine tena, fuata maagizo. Baada ya kuanza upya umefanikiwa Kusanidi Zana za Jimbo la Jimbo la YAKINDU.

Hatua ya 2: Kuanza na Mashine za Serikali katika Studio ya Mtunzi wa Nambari

Kuanza na Mashine za Serikali katika Studio ya Mtunzi wa Nambari
Kuanza na Mashine za Serikali katika Studio ya Mtunzi wa Nambari
Kuanza na Mashine za Serikali katika Studio ya Mtunzi wa Nambari
Kuanza na Mashine za Serikali katika Studio ya Mtunzi wa Nambari

Kutumia mashine za serikali endelea kama kawaida na unda Mradi mpya wa CCS. Fungua kichupo cha Faili, fungua Mpya na ubonyeze Mradi wa CCS. Fafanua jina la mradi, chagua microcontroller yako na uunda mradi tupu, ulio na faili tupu ya main.c. Nilitumia MSP430G2553.

Sasa unaweza kuanza kufanya kazi na mashine za serikali!

Bonyeza kulia kwenye mradi, fungua Mpya na uchague Modelchart Model. Mchawi atafunguliwa ambayo unaweza kuchagua mradi wako na kutaja chati yako ya jimbo. Kwa mfano, iite blinkyStateMachine.sct.

Mfano wa Statechart utaonekana kwenye folda ya mradi baada ya kubonyeza Maliza. Bonyeza Ndio ikiwa utaulizwa kubadilisha mtazamo.

Hatua ya 3: Unda Blinky State Machine

Unda Mashine ya Jimbo la Blinky
Unda Mashine ya Jimbo la Blinky

Sasa unaweza kuanza kuunda chati ya serikali!

Kwenye upande wa kushoto, utapata kinachojulikana Sehemu ya Ufafanuzi. Huko unaweza kuongeza vitu vya maandishi kwa mfano, kwa mfano, shughuli, ambazo zinaweza kuitwa kwenye mashine ya serikali.

Futa kila kitu kutoka kwake na ongeza tu ufafanuzi hizi tatu za operesheni:

ndani:

operesheni init () operesheni redOn () operesheni redOff ()

Baadaye, badili kwa mfano wa chati ya serikali na ongeza majimbo matatu:

  • Uanzishaji
  • LED nyekundu imewashwa
  • LED nyekundu imezimwa

Unganisha majimbo kama inavyoonyeshwa kwenye picha na ongeza mabadiliko na vitendo vya kuingia. Unaweza kuzipata kwenye picha iliyojumuishwa tena.

Hatua ya 4: Tengeneza Nambari ya Mashine ya Jimbo C

Zalisha Nambari ya Mashine ya Jimbo C
Zalisha Nambari ya Mashine ya Jimbo C

Sasa ni wakati wa kutengeneza C-Code. Ili kufanya hivyo, mfano wa jenereta lazima uongezwe. Bonyeza kulia mradi huo tena na ufungue Mpya na ubonyeze Mfano wa Jenereta ya Msimbo. Chagua jina la faili ya sgen. Ni mazoezi mazuri kukaa na jina la mashine ya serikali. Iite blinkyStateMachine.sgen na bonyeza Bonyeza Ijayo. Chagua Mashine ya Jimbo unayotaka kwa kubonyeza kisanduku cha kuangalia. Hakikisha kuwa umechagua YAKINDU SCT C Code Generator (kama tunataka kutengeneza C-Code) na bonyeza Finish.

Kawaida, C-Code itazalishwa kiatomati, lakini ikiwa sivyo, unaweza kubofya kulia -sile -file na bonyeza Bonyeza Tengeneza Vifurushi vya Msimbo kufanya hivyo. Folda za src na src-gen zinapaswa kuonekana katika mradi wako. Ni pamoja na C-Code iliyotengenezwa, ambayo itasasishwa kiotomatiki wakati unahariri na uhifadhi chati ya serikali.

Kwa sababu chati hii ya serikali hutumia hafla zinazotegemea wakati, huduma ya kipima muda inahitaji kutekelezwa. Ili kuandaa hii, unahitaji faili hizi mbili: sc_timer_service.c na sc_timer_service.h Unaweza kuzipata kutoka kwa GitHub au kuzipakua hapa. Lazima uwaongeze kwenye folda ya src.

Hatua ya 5: Kupigia Mashine ya Jimbo Kutoka kwa Nambari Yako

Mwishowe, mashine ya serikali inaweza kutumika katika kazi yako kuu!

Kwanza, lazima ujumuishe mashine ya serikali na huduma ya kipima muda. Kisha mashine ya serikali, huduma ya muda na kazi zinazohitajika kwa huduma ya muda lazima zitangazwe na kufafanuliwa. Kwa kuongeza, shughuli zilizofafanuliwa ambazo zinawasha na kuzima nyekundu tena lazima zitekelezwe.

# pamoja

# pamoja na "src-gen / BlinkyStateMachine.h" #include "src / sc_timer_service.h" BlinkyStateMachine blinky; #fafanua MAX_TIMERS 4 tuli st_timer_t timers [MAX_TIMERS]; static sc_timer_service_timer_service; huduma; //! utekelezaji wa kupigia simu kwa kuanzisha matukio ya wakati nje ya blinkyStateMachine_setTimer (BlinkyStateMachine * handle, const sc_eventid evid, const sc_integer time_ms, const sc_boolean periodic) {sc_timer_start (& timer_service, handle, evid, time_ms, periodic); } //! utekelezaji wa kupiga simu kwa kughairi hafla za wakati. utupu wa nje blinkyStateMachine_unsetTimer (BlinkyStateMachine * handle, const sc_eventid evid) {sc_timer_cancel (& timer_service, evid); } //! kufafanua shughuli nje batili blinkyStateMachineInternal_init (const BlinkyStateMachine * handle) {WDTCTL = WDT_MDLY_32; IE1 | = WDTIE; P1DIR | = BIT0; } utupu wa nje blinkyStateMachineInternal_redOn (const BlinkyStateMachine * handle) {P1OUT | = BIT0; } utupu wa nje blinkyStateMachineInternal_redOff (const BlinkyStateMachine * handle) {P1OUT & = ~ BIT0; }

Kazi kuu ina sehemu mbili:

Uanzishaji na kazi ya kuingia ya mashine ya serikali na uanzishaji wa kipima muda.

Sehemu ya pili ni kitanzi kisicho na mwisho - kitanzi wakati (1). Ndani ya kitanzi hiki, kazi ya mzunguko wa kukimbia wa mashine ya serikali inaitwa. Baadaye, MSP430 itawekwa kwenye Njia ya Nguvu ya Chini 0 na Kukatiza kwa Jumla Wezesha kidogo. Sasa mdhibiti mdogo amelala na anasubiri kukatiza. Baada ya usumbufu wa WDT, kipima muda kitaendelea. Hii inamaanisha kuwa kila kipima muda kinasasishwa na muda uliopitiliza unazidishwa na 32 - wakati katika milliseconds, ambayo inaendelea baada ya kila usumbufu wa WDT.

utupu kuu (batili) {WDTCTL = WDTPW | WDTHOLD; // Acha kipima muda cha mwangalizi

// kipima muda cha Init na mashine ya serikali sc_timer_service_init (& huduma ya muda, saa, MAX_TIMERS, (sc_raise_time_event_fp) & blinkyStateMachine_raiseTimeEvent); blinkyStateMachine_init (& blinky); blinkyStateMachine_enter (& blinky);

wakati (1)

{// simu ya serikali kila ms 32 blinkyStateMachine_runCycle (& blinky); _bis_SR_sajili (LPM0_bits + GIE); sk_timer_service_proceed (& huduma ya timer, 32); }}

// ISD ya WDT

#pragma vector = WDT_VECTOR _katiza tupu ya saa ya kuangalia (batili) {_bic_SR_register_on_exit (LPM0_bits + GIE); }

Hatua ya 6: Endesha Mradi

Hiyo tu - Sasa unaweza kujenga na kupakia programu kwenye MSP430 yako!

Tunatumahi, mafunzo haya yalikusaidia kufanikisha mradi wa MSP430 yako. Sasa ni wakati wa kutekeleza maoni yako mwenyewe!

Kwa utengenezaji wa nambari, Zana za Jedwali la Jimbo la YAKINDU zinahitajika kama Programu-jalizi katika Studio yako ya Mtunzi wa Msimbo.

Unaweza kupata sasisho hapa! <

Huanza na toleo la majaribio la siku 30. Baadaye, unaweza kupata leseni ya bure kwa matumizi yasiyo ya kibiashara!

Ilipendekeza: