מה לא בסדר בקוד?

הפורום הראשי, אתר הרובוטיקה הישראלי

המנהלים: אסף פוניס, גיא יונה

מה לא בסדר בקוד?

הודעהעל ידי ארבל » ד' אפריל 04, 2007 1:58 pm

מטרת הקוד היא שכאשר חיישן נגיעה מסויים יופעל 3 פעמים, המנועים יעצרו. (לא הבאתי את כל הקוד כי הוא לא חשוב, יש כאן רק את ה- MAIN. הפוקציה PWM0_A קובעת את המהירות של מנוע A ואותו הדבר לגבי מנוע B. המהירות המקסימלית היא 255 ו 0 הוא עצירה. אני חושב שזה די ממצה את העניין, הפונקציות של ה PWM עובדות. כך שהבעיה לא שם...
קוד: בחר הכל
int main(void)
{
   // Make sure all our registers are clear
   DDRB = 0;
   DDRC = 0;
   DDRD = 0;

   // Make sure all our pull-up resistors are clear
   PORTB = 0;
   PORTC = 0;
   PORTD = 0;

   // Initialize the timer0 PWM system:

   pwm0_init();

   // Motors are stopped when we initialize them, so there's
   // no need to do that after the init routine.
// Make sure PB5 is an input (bump left)
   DDRB &= ~(1 << PB3);
   //pull up rezistor
   PORTB |= (1 << PB3);
   
unsigned int encoderB;

   // The endless loop

   for(;;)
   {
      if (((PINB & (1 << PB3)) == 0))
         {
            encoderB += 1;
         }
         
   if (encoderB == 3)
         {
            pwm0_a(0);
            pwm0_b(0);
            break;
         }
   else
      {
      // Both motors forward
      pwm0_a(115);
      pwm0_b(115);
      //delay_sec(1);
         
         }
         
      
      

   }

   // We never get here, but return a zero if we ever do.
   return(0);
}

ארבל
דרך אגב, כרגע, כל פעם שהחיישן מופעל, המנועים עוצרים, ולא רק אחרי הפעם השלישית. וכאשר החיישן כבר לא מופעל, המנועים ממשיכים לעבוד. המטרה שלי היא שכאשר החיישן יופעל 3 פעמים. המנועים יעצרו ולא ימשיכו. :)
סמל אישי של המשתמש
ארבל
חבר פורום
חבר פורום
 
הודעות: 143
הצטרף: א' ינואר 07, 2007 9:37 pm

Switch Debounce

הודעהעל ידי אמנון » ד' אפריל 04, 2007 2:27 pm

ארבל שלום
אז מה בעצם הבעיה?

שישר כאשר אתה נוגע במפסק המערכת עוצרת ?

אם כן כניראה מדובר במה שניקרא Switch Debounce (חפש על זה בGOOGLE )

כלומר קפיצה, המגע במפסק הוא לא בדיוק חד משמעי, מיבחינת העין שלך הוא כן אבל המעבד קולט כל נגיעה כמיספר נגיעות וניתוקים (כמה מאות מגעים וניתוקים) ולכן הוא סופר עד שלוש כבר בפעם הראשונה.
הדרך הפשוטה להיתמודד עם זה ברמת התוכנה זה להוסיף השהייה לאחר הזיהוי הראשון של הלחיצה, כך שלמשך כמה אלפיות שניה לא תיתיחס ללחיצות נוספות.

אמנון :shock:
אמנון
רובוטריק
רובוטריק
 
הודעות: 2031
הצטרף: ש' יולי 09, 2005 5:41 pm
מיקום: חיפה

Re: Switch Debounce

הודעהעל ידי Daniel-Orion » ד' אפריל 04, 2007 4:00 pm

אמנון כתב:ארבל שלום
אז מה בעצם הבעיה?

שישר כאשר אתה נוגע במפסק המערכת עוצרת ?

אם כן כניראה מדובר במה שניקרא Switch Debounce (חפש על זה בGOOGLE )

כלומר קפיצה, המגע במפסק הוא לא בדיוק חד משמעי, מיבחינת העין שלך הוא כן אבל המעבד קולט כל נגיעה כמיספר נגיעות וניתוקים (כמה מאות מגעים וניתוקים) ולכן הוא סופר עד שלוש כבר בפעם הראשונה.
הדרך הפשוטה להיתמודד עם זה ברמת התוכנה זה להוסיף השהייה לאחר הזיהוי הראשון של הלחיצה, כך שלמשך כמה אלפיות שניה לא תיתיחס ללחיצות נוספות.

אמנון :shock:


לא בטוח שזאת הבעיה, אצלינו מפסק היה מזדהה כנגיעה אחת, אבל מצאתי 2 שגיאות אצליך בקוד (אני מקווה שמצאתי כי קצת קשה להבין את הקוד שלך, תנסה לרשום יותר הערות).
1. אתה בודק את הפורט של הלחצן בלולאה, אם במשך שלוש סיבובי לולאה הלחצן היה לחוץ אז הטריגר אמור לעבוד, ופה הבעיה, אתה צריך שלוש לחיצות לא שלוש סיבובי לולאה, אתה צריך לחכות ללחיצה ואז לחכות למצב שהכפתור כבר לא לחוץ ורק אז להוסיף אחד למונה שלך (encoderB).
2. הסיבה שהרובוט ממשיך לעבוד אחרי שהטריגר הסתיים זה בגלל ה Break לפי דעתי, הברייק גורם לתוכנה להגיע לReturn(0) שזה הסיום של התוכנה והרובוט בתגובה מרסט את עצמו (התוכנה מתחילה מההתחלה).
Don't let school interfere with your education
סמל אישי של המשתמש
Daniel-Orion
משתמש ותיק
משתמש ותיק
 
הודעות: 380
הצטרף: א' אוקטובר 20, 2002 12:58 pm
מיקום: רמת גן

אני אנסה

הודעהעל ידי ארבל » ד' אפריל 04, 2007 4:30 pm

תודה :D
סמל אישי של המשתמש
ארבל
חבר פורום
חבר פורום
 
הודעות: 143
הצטרף: א' ינואר 07, 2007 9:37 pm

הודעהעל ידי Daniel-Orion » ד' אפריל 04, 2007 5:02 pm

במקום הברייק אתה יכול לשים לולאה אינסופית שלא עושה כלום ד"א
Don't let school interfere with your education
סמל אישי של המשתמש
Daniel-Orion
משתמש ותיק
משתמש ותיק
 
הודעות: 380
הצטרף: א' אוקטובר 20, 2002 12:58 pm
מיקום: רמת גן

Re: מה לא בסדר בקוד?

הודעהעל ידי xalmek » ו' נובמבר 17, 2023 5:11 am

xalmek
רובוטריק
רובוטריק
 
הודעות: 221558
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: מה לא בסדר בקוד?

הודעהעל ידי xalmek » ש' דצמבר 02, 2023 3:49 am

audiobookkeeper.rucottagenet.rueyesvision.rueyesvisions.comfactoringfee.rufilmzones.rugadwall.rugaffertape.rugageboard.rugagrule.rugallduct.rugalvanometric.rugangforeman.rugangwayplatform.rugarbagechute.rugardeningleave.rugascautery.rugashbucket.rugasreturn.rugatedsweep.rugaugemodel.rugaussianfilter.rugearpitchdiameter.ru
geartreating.rugeneralizedanalysis.rugeneralprovisions.rugeophysicalprobe.rugeriatricnurse.rugetintoaflap.rugetthebounce.ruhabeascorpus.ruhabituate.ruhackedbolt.ruhackworker.ruhadronicannihilation.ruhaemagglutinin.ruhailsquall.ruhairysphere.ruhalforderfringe.ruhalfsiblings.ruhallofresidence.ruhaltstate.ruhandcoding.ruhandportedhead.ruhandradar.ruhandsfreetelephone.ru
hangonpart.ruhaphazardwinding.ruhardalloyteeth.ruhardasiron.ruhardenedconcrete.ruharmonicinteraction.ruhartlaubgoose.ruhatchholddown.ruhaveafinetime.ruhazardousatmosphere.ruheadregulator.ruheartofgold.ruheatageingresistance.ruheatinggas.ruheavydutymetalcutting.rujacketedwall.rujapanesecedar.rujibtypecrane.rujobabandonment.rujobstress.rujogformation.rujointcapsule.rujointsealingmaterial.ru
journallubricator.rujuicecatcher.rujunctionofchannels.rujusticiablehomicide.rujuxtapositiontwin.rukaposidisease.rukeepagoodoffing.rukeepsmthinhand.rukentishglory.rukerbweight.rukerrrotation.rukeymanassurance.rukeyserum.rukickplate.rukillthefattedcalf.rukilowattsecond.rukingweakfish.rukinozones.rukleinbottle.rukneejoint.ruknifesethouse.ruknockonatom.ruknowledgestate.ru
kondoferromagnet.rulabeledgraph.rulaborracket.rulabourearnings.rulabourleasing.rulaburnumtree.rulacingcourse.rulacrimalpoint.rulactogenicfactor.rulacunarycoefficient.ruladletreatediron.rulaggingload.rulaissezaller.rulambdatransition.rulaminatedmaterial.rulammasshoot.rulamphouse.rulancecorporal.rulancingdie.rulandingdoor.rulandmarksensor.rulandreform.rulanduseratio.ru
languagelaboratory.rulargeheart.rulasercalibration.rulaserlens.rulaserpulse.rulaterevent.rulatrinesergeant.rulayabout.ruleadcoating.ruleadingfirm.rulearningcurve.ruleaveword.rumachinesensible.rumagneticequator.rumagnetotelluricfield.rumailinghouse.rumajorconcern.rumammasdarling.rumanagerialstaff.rumanipulatinghand.rumanualchoke.rumedinfobooks.rump3lists.ru
nameresolution.runaphtheneseries.runarrowmouthed.runationalcensus.runaturalfunctor.runavelseed.runeatplaster.runecroticcaries.runegativefibration.runeighbouringrights.ruobjectmodule.ruobservationballoon.ruobstructivepatent.ruoceanmining.ruoctupolephonon.ruofflinesystem.ruoffsetholder.ruolibanumresinoid.ruonesticket.rupackedspheres.rupagingterminal.rupalatinebones.rupalmberry.ru
papercoating.ruparaconvexgroup.ruparasolmonoplane.ruparkingbrake.rupartfamily.rupartialmajorant.ruquadrupleworm.ruqualitybooster.ruquasimoney.ruquenchedspark.ruquodrecuperet.rurabbetledge.ruradialchaser.ruradiationestimator.rurailwaybridge.rurandomcoloration.rurapidgrowth.rurattlesnakemaster.rureachthroughregion.rureadingmagnifier.rurearchain.rurecessioncone.rurecordedassignment.ru
rectifiersubstation.ruredemptionvalue.rureducingflange.rureferenceantigen.ruregeneratedprotein.rureinvestmentplan.rusafedrilling.rusagprofile.rusalestypelease.rusamplinginterval.rusatellitehydrology.ruscarcecommodity.ruscrapermat.ruscrewingunit.ruseawaterpump.rusecondaryblock.rusecularclergy.ruseismicefficiency.ruselectivediffuser.rusemiasphalticflux.rusemifinishmachining.ruspicetrade.ruspysale.ru
stungun.rutacticaldiameter.rutailstockcenter.rutamecurve.rutapecorrection.rutappingchuck.rutaskreasoning.rutechnicalgrade.rutelangiectaticlipoma.rutelescopicdamper.rutemperateclimate.rutemperedmeasure.rutenementbuilding.rutuchkasultramaficrock.ruultraviolettesting.ru
xalmek
רובוטריק
רובוטריק
 
הודעות: 221558
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: מה לא בסדר בקוד?

הודעהעל ידי xalmek » ו' פברואר 02, 2024 9:07 am

инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинйоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоtuchkasинфоинфо
xalmek
רובוטריק
רובוטריק
 
הודעות: 221558
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: מה לא בסדר בקוד?

הודעהעל ידי xalmek » ש' מרץ 02, 2024 2:37 am

audiobookkeepercottageneteyesvisioneyesvisionsfactoringfeefilmzonesgadwallgaffertapegageboardgagrulegallductgalvanometricgangforemangangwayplatformgarbagechutegardeningleavegascauterygashbucketgasreturngatedsweepgaugemodelgaussianfiltergearpitchdiameter
geartreatinggeneralizedanalysisgeneralprovisionsgeophysicalprobegeriatricnursegetintoaflapgetthebouncehabeascorpushabituatehackedbolthackworkerhadronicannihilationhaemagglutininhailsquallhairyspherehalforderfringehalfsiblingshallofresidencehaltstatehandcodinghandportedheadhandradarhandsfreetelephone
hangonparthaphazardwindinghardalloyteethhardasironhardenedconcreteharmonicinteractionhartlaubgoosehatchholddownhaveafinetimehazardousatmosphereheadregulatorheartofgoldheatageingresistanceheatinggasheavydutymetalcuttingjacketedwalljapanesecedarjibtypecranejobabandonmentjobstressjogformationjointcapsulejointsealingmaterial
journallubricatorjuicecatcherjunctionofchannelsjusticiablehomicidejuxtapositiontwinkaposidiseasekeepagoodoffingkeepsmthinhandkentishglorykerbweightkerrrotationkeymanassurancekeyserumkickplatekillthefattedcalfkilowattsecondkingweakfishkinozoneskleinbottlekneejointknifesethouseknockonatomknowledgestate
kondoferromagnetlabeledgraphlaborracketlabourearningslabourleasinglaburnumtreelacingcourselacrimalpointlactogenicfactorlacunarycoefficientladletreatedironlaggingloadlaissezallerlambdatransitionlaminatedmateriallammasshootlamphouselancecorporallancingdielandingdoorlandmarksensorlandreformlanduseratio
languagelaboratorylargeheartlasercalibrationlaserlenslaserpulselatereventlatrinesergeantlayaboutleadcoatingleadingfirmlearningcurveleavewordmachinesensiblemagneticequatormagnetotelluricfieldmailinghousemajorconcernmammasdarlingmanagerialstaffmanipulatinghandmanualchokemedinfobooksmp3lists
nameresolutionnaphtheneseriesnarrowmouthednationalcensusnaturalfunctornavelseedneatplasternecroticcariesnegativefibrationneighbouringrightsobjectmoduleobservationballoonobstructivepatentoceanminingoctupolephononofflinesystemoffsetholderolibanumresinoidonesticketpackedspherespagingterminalpalatinebonespalmberry
papercoatingparaconvexgroupparasolmonoplaneparkingbrakepartfamilypartialmajorantquadruplewormqualityboosterquasimoneyquenchedsparkquodrecuperetrabbetledgeradialchaserradiationestimatorrailwaybridgerandomcolorationrapidgrowthrattlesnakemasterreachthroughregionreadingmagnifierrearchainrecessionconerecordedassignment
rectifiersubstationredemptionvaluereducingflangereferenceantigenregeneratedproteinreinvestmentplansafedrillingsagprofilesalestypeleasesamplingintervalsatellitehydrologyscarcecommodityscrapermatscrewingunitseawaterpumpsecondaryblocksecularclergyseismicefficiencyselectivediffusersemiasphalticfluxsemifinishmachiningspicetradespysale
stunguntacticaldiametertailstockcentertamecurvetapecorrectiontappingchucktaskreasoningtechnicalgradetelangiectaticlipomatelescopicdampertemperateclimatetemperedmeasuretenementbuildingtuchkasultramaficrockultraviolettesting
xalmek
רובוטריק
רובוטריק
 
הודעות: 221558
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: מה לא בסדר בקוד?

הודעהעל ידי xalmek » ה' מאי 02, 2024 5:58 am

xalmek
רובוטריק
רובוטריק
 
הודעות: 221558
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: מה לא בסדר בקוד?

הודעהעל ידי xalmek » א' יוני 02, 2024 1:59 am

audiobookkeepercottageneteyesvisioneyesvisionsfactoringfeefilmzonesgadwallgaffertapegageboardgagrulegallductgalvanometricgangforemangangwayplatformgarbagechutegardeningleavegascauterygashbucketgasreturngatedsweepgaugemodelgaussianfiltergearpitchdiameter
geartreatinggeneralizedanalysisgeneralprovisionsgeophysicalprobegeriatricnursegetintoaflapgetthebouncehabeascorpushabituatehackedbolthackworkerhadronicannihilationhaemagglutininhailsquallhairyspherehalforderfringehalfsiblingshallofresidencehaltstatehandcodinghandportedheadhandradarhandsfreetelephone
hangonparthaphazardwindinghardalloyteethhardasironhardenedconcreteharmonicinteractionhartlaubgoosehatchholddownhaveafinetimehazardousatmosphereheadregulatorheartofgoldheatageingresistanceheatinggasheavydutymetalcuttingjacketedwalljapanesecedarjibtypecranejobabandonmentjobstressjogformationjointcapsulejointsealingmaterial
journallubricatorjuicecatcherjunctionofchannelsjusticiablehomicidejuxtapositiontwinkaposidiseasekeepagoodoffingkeepsmthinhandkentishglorykerbweightkerrrotationkeymanassurancekeyserumkickplatekillthefattedcalfkilowattsecondkingweakfishkinozoneskleinbottlekneejointknifesethouseknockonatomknowledgestate
kondoferromagnetlabeledgraphlaborracketlabourearningslabourleasinglaburnumtreelacingcourselacrimalpointlactogenicfactorlacunarycoefficientladletreatedironlaggingloadlaissezallerlambdatransitionlaminatedmateriallammasshootlamphouselancecorporallancingdielandingdoorlandmarksensorlandreformlanduseratio
languagelaboratorylargeheartlasercalibrationlaserlenslaserpulselatereventlatrinesergeantlayaboutleadcoatingleadingfirmlearningcurveleavewordmachinesensiblemagneticequatormagnetotelluricfieldmailinghousemajorconcernmammasdarlingmanagerialstaffmanipulatinghandmanualchokemedinfobooksmp3lists
nameresolutionnaphtheneseriesnarrowmouthednationalcensusnaturalfunctornavelseedneatplasternecroticcariesnegativefibrationneighbouringrightsobjectmoduleobservationballoonobstructivepatentoceanminingoctupolephononofflinesystemoffsetholderolibanumresinoidonesticketpackedspherespagingterminalpalatinebonespalmberry
papercoatingparaconvexgroupparasolmonoplaneparkingbrakepartfamilypartialmajorantquadruplewormqualityboosterquasimoneyquenchedsparkquodrecuperetrabbetledgeradialchaserradiationestimatorrailwaybridgerandomcolorationrapidgrowthrattlesnakemasterreachthroughregionreadingmagnifierrearchainrecessionconerecordedassignment
rectifiersubstationredemptionvaluereducingflangereferenceantigenregeneratedproteinreinvestmentplansafedrillingsagprofilesalestypeleasesamplingintervalsatellitehydrologyscarcecommodityscrapermatscrewingunitseawaterpumpsecondaryblocksecularclergyseismicefficiencyselectivediffusersemiasphalticfluxsemifinishmachiningspicetradespysale
stunguntacticaldiametertailstockcentertamecurvetapecorrectiontappingchucktaskreasoningtechnicalgradetelangiectaticlipomatelescopicdampertemperateclimatetemperedmeasuretenementbuildingtuchkasultramaficrockultraviolettesting
xalmek
רובוטריק
רובוטריק
 
הודעות: 221558
הצטרף: ה' נובמבר 16, 2023 10:48 am


חזור אל פורום הרובוטיקה

מי מחובר

משתמשים הגולשים בפורום זה: אין משתמשים רשומים ו 4 אורחים

cron