ניתוח אחרון של הבעייה באינטראפט.

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

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

ניתוח אחרון של הבעייה באינטראפט.

הודעהעל ידי roby69 » א' ספטמבר 28, 2008 10:12 pm

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

#include <16F690.h>
#fuses HS,NOWDT,NOPROTECT,put
#use delay(clock=8000000)
#include <stdlib.h>
#int_ext


void int_ext_isr()
{

output_low(pin_b6);
output_high(PIN_C2);//go straight
output_low(PIN_C3);
output_high(PIN_C5);
output_low(PIN_C4);
//delay_ms(3000);


}


void main() {


enable_interrupts(global);
enable_interrupts(INT_EXT);
ext_int_edge( L_TO_H );


while(1)
{ output_high(pin_b6);



}

}


האם אני צריך תנאי גם בתוך האינטראפט עצמו ? הוא אמור להיות מבוצע ללא קריאה ?
roby69
משתמש חדש
משתמש חדש
 
הודעות: 16
הצטרף: ש' ספטמבר 27, 2008 10:01 am

הודעהעל ידי אמנון » א' ספטמבר 28, 2008 11:11 pm

תיסתכל כאן בדוגמא , הוא מבצע ניקוי !
http://www.ccsinfo.com/forum/viewtopic. ... 0&start=15

ותיסתכל בדף הנתונים ותיראה שאתה לא חורג מכלום
4.2.2 INTERRUPT-ON-CHANGE
Each of the PORTA pins is individually configurable as
an interrupt-on-change pin. Control bits IOCAx enable
or disable the interrupt function for each pin. Refer to
Register 4-4. The interrupt-on-change is disabled on a
Power-on Reset.
For enabled interrupt-on-change pins, the values are
compared with the old value latched on the last read of
PORTA. The ‘mismatch’ outputs of the last read are
OR’d together to set the PORTA Change Interrupt Flag
bit (RABIF) in the INTCON register (Register 2-3).
This interrupt can wake the device from Sleep. The
user, in the Interrupt Service Routine, clears the
interrupt by:
a) Any read or write of PORTA. This will end the
mismatch condition, then,
b) Clear the flag bit RABIF.

A mismatch condition will continue to set flag bit RABIF.
Reading PORTA will end the mismatch condition and
allow flag bit RABIF to be cleared. The latch holding the
last read value is not affected by a MCLR nor BOR
Reset. After these Resets, the RABIF flag will continue
to be set if a mismatch is present.
REGISTER 4-4: IOCA – INTERRUPT-ON-CHANGE PORTA REGISTER (ADDRESS: 96h)
Note: If a change on the I/O pin should occur
when the read operation is being executed
(start of the Q2 cycle), then the RABIF
interrupt flag may not get set


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

הודעהעל ידי אמנון » א' ספטמבר 28, 2008 11:22 pm

שים לב לדבר נוסף ששווה בדיקה
וממש לא קראתי הכל אבל זה שירשור בנושא
http://www.ccsinfo.com/forum/viewtopic. ... hlight=ext

ובנוסף אני רואה בקובץ H של המעבד שלך שיש אינטראפטים פרטניים לכל פורט
קוד: בחר הכל
////////////////////////////////////////////////////////////////// INT
// Interrupt Functions: ENABLE_INTERRUPTS(), DISABLE_INTERRUPTS(),
//                      EXT_INT_EDGE()
//
// Constants used in EXT_INT_EDGE() are:
#define L_TO_H              0x40
#define H_TO_L                 0
// Constants used in ENABLE/DISABLE_INTERRUPTS() are:
#define GLOBAL                    0x0BC0
#define INT_RTCC                  0x0B20
#define INT_RB                    0x1FF0B08
#define INT_EXT                   0x0B10
#define INT_AD                    0x8C40
#define INT_TBE                   0x8C10
#define INT_RDA                   0x8C20
#define INT_TIMER1                0x8C01
#define INT_TIMER2                0x8C02
#define INT_CCP1                  0x8C04
#define INT_SSP                   0x8C08
#define INT_EEPROM                0x8D10
#define INT_TIMER0                0x0B20
#define INT_RA                    0xFF0B08
#define INT_OSC_FAIL              0x8D80
#define INT_COMP                  0x8D20
#define INT_COMP2                 0x8D40


#define INT_RA0                   0x010B08
#define INT_RA1                   0x020B08
#define INT_RA2                   0x040B08
#define INT_RA3                   0x080B08
#define INT_RA4                   0x100B08
#define INT_RA5                   0x200B08



#define INT_RB4                   0x1100B08
#define INT_RB5                   0x1200B08
#define INT_RB6                   0x1400B08
#define INT_RB7                   0x1800B08




יש קוד דוגמא בשם :
EX_WAKUP.C

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

תודה רבה אמנון..

הודעהעל ידי roby69 » ב' ספטמבר 29, 2008 5:38 pm

תודה רבה אמנון, אבל לאחר הרבה חפירות לא ממש הצלחתי להבין משהו ממה שאמרת.

הלינק הראשון שצירפת לא ממש קשור לנושא, והשני מדבר על רכיב אחר ולא ראיתי בו כמועיל.

צירפת גם איזה קטע שלא הצלחתי להבין ממש מה הוא תורם לי.

אמרת שהוא מבצע ניקוי , מה זה אומר? אני פשוט לא מצליח להבין מה העניין עם הניקוי הזה, ומה הדרך לפתרון...

תודה רבה......
roby69
משתמש חדש
משתמש חדש
 
הודעות: 16
הצטרף: ש' ספטמבר 27, 2008 10:01 am

הודעהעל ידי אמנון » ב' ספטמבר 29, 2008 11:29 pm

אובי שלום
ראשית אני לא בטוח שתימצא כאן בפורום מישהו שגם עבד עם האינטראפט החיצוני ב PIC וגם עשה את זה עם ה CCS C .

אני לפחות עוד לא הייתי צריך להתמודד עם זה ולכן לא חפרתי בזה עד עתה.

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

לגבי הניקוי .

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

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

הקומפיילר CCS C יודע לעשות את האיפוס הזה בעצמו בחלק מהמקרים , אבל אני לא בטוח לגבי המקרה הספציפי שלך.

ושוב לדעתי עם כמות התשובות שאתה מקבל כאן מכאלו שעבדו עם הקומפיילר שלך , היית הולך לפורום תמיחה של הקומפיילר.

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

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

הודעהעל ידי The arctic wolf » ג' ספטמבר 30, 2008 12:56 am

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



אנדריי.
זה שהרעיון משוגע עוד לא אומר שהוא לא יצליח!
The arctic wolf
רובוטריק
רובוטריק
 
הודעות: 1007
הצטרף: ד' ינואר 26, 2005 12:43 am

כולכם

הודעהעל ידי roby69 » ג' ספטמבר 30, 2008 3:41 pm

חוזרים ואומרים כבר כמה פעמים שצריך לבצע ניקוי, אבל מישהו יכול לכתוב לי בשורה אחת ספציפית איך מבצעים אותו? ומתי ???

מוזר לי שאף אחד לא מכיר את זה בפורום רובוטיקה,כאשר רכיב עיקרי בכל רובוט הוא האינטראפט.

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

אתם חושבים שישנה בעייה חומרה?
אני נוטה לחשוב שאני כבר שבוע מתעסק במשהו שהפתרון שלו הוא הוספת שורת קוד אחת קטנה שמנקה את הFLAG. ואני לא יודע איך......
תודה על התשובות בכל אופן
roby69
משתמש חדש
משתמש חדש
 
הודעות: 16
הצטרף: ש' ספטמבר 27, 2008 10:01 am

הודעהעל ידי אמנון » ג' ספטמבר 30, 2008 4:16 pm

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

הודעהעל ידי The arctic wolf » ג' ספטמבר 30, 2008 8:12 pm

חוזרים ואומרים כבר כמה פעמים שצריך לבצע ניקוי, אבל מישהו יכול לכתוב לי בשורה אחת ספציפית איך מבצעים אותו? ומתי ???


שולחים אפס לרגיסטר המתאים.
מתי??
אחריי סיום האינטראפט.


אתם חושבים שישנה בעייה חומרה?

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

ואוליי כדאי שתקרא את כל העמוד:
http://www.mstracey.btinternet.co.uk/pi ... gtut12.htm

ואפילו את כל המדריך:
http://www.mstracey.btinternet.co.uk/pi ... icmain.htm

זה ממש ממש יעזור לך!

כי נכון לרגע זה אתה עובד כמעט על עיוור בלי הבנה של מבנה הפיק בכלל!


אנדריי.
זה שהרעיון משוגע עוד לא אומר שהוא לא יצליח!
The arctic wolf
רובוטריק
רובוטריק
 
הודעות: 1007
הצטרף: ד' ינואר 26, 2005 12:43 am

Re: ניתוח אחרון של הבעייה באינטראפט.

הודעהעל ידי xalmek » ו' נובמבר 17, 2023 12:33 pm

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

Re: ניתוח אחרון של הבעייה באינטראפט.

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

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

Re: ניתוח אחרון של הבעייה באינטראפט.

הודעהעל ידי xalmek » ש' דצמבר 02, 2023 11:43 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
רובוטריק
רובוטריק
 
הודעות: 246431
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: ניתוח אחרון של הבעייה באינטראפט.

הודעהעל ידי xalmek » ו' פברואר 02, 2024 4:31 pm

сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтtuchkasсайтсайт
xalmek
רובוטריק
רובוטריק
 
הודעות: 246431
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: ניתוח אחרון של הבעייה באינטראפט.

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

сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайт
сайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтсайтtuchkasсайтсайт
xalmek
רובוטריק
רובוטריק
 
הודעות: 246431
הצטרף: ה' נובמבר 16, 2023 10:48 am

Re: ניתוח אחרון של הבעייה באינטראפט.

הודעהעל ידי xalmek » ה' מאי 02, 2024 1:37 pm

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

הבא

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

מי מחובר

משתמשים הגולשים בפורום זה: Google [Bot] ו 14 אורחים

cron