PIC montāža programmēšanas palīdzību

R

Rambo

Guest
Nu, es esmu rakstiski programmu valde, kas būs kontrolēt peintbols lielgabals. Tomēr, man ir palaist, lai dažas problēmas. Es, izmantojot PIC 12f675 mikrokontrolleru. Man ir LED saliekts līdz pin 6 (GP1) tā, ka "1" loģikas, ka pin radīs gaismas ieslēgšanas. Man ir pārslēgties starp VDD un pin 7 (GP0). Pin 7 arī ir saliekts līdz pull-down rezistors uz zemes. Programma kļūst par LED īsu brīdi, kad mēlīte ir velk. Tā arī ir cilpa, kas pieļauj tikai LED mirgot, kad nav svarīgi, cik ilgi jūs tur uz sliekšņa, jo tas ir nepieciešams peintbols lielgabals. Es pārbaudīju kodu atkal un atkal, un es nevaru atrast neko nepareizi ar to. Tas ir iespējams, kaut kas vienkāršs, bet es nevaru to apskatīt. Cerams, ka kāds cits var noķert kaut ko es nevaru redzēt. Lūk programma .... http://home.comcast.net/ ~ millersseven / timingtest.asm
 
Es nesaprotu problēmu kodu? Kas ir ANO gaidāms uzvedību jūsu programmu?
 
Rambo, pārbaudiet šo (no 12F675 datu lapa): Piezīme: Ansel (9Fh) un CMCON (19.h) reģistriem (9Fh) ir inicializēts, lai konfigurētu analogo kanālu kā digitālo ieeju. Pins konfigurēta kā analogās ieejas būs lasīt '0 '. Ansel reģistrs ir definēta PIC12F675. best regards
 
Problēma ir tā, ka programma nedarbojas vispār. LED neieslēdzas, kad ievadi pin ir panākusi, kā tam vajadzētu. CMan, es neesmu pilnīgi pārliecināts, ko jūs sakāt. Nav celt vienu ieejas tapas VDD uzskatīta digitālo ieeju? Es domāju, digitālā ieeja bija tieši tur, kur pin var izlasīt vai nu kā augstu vai zemu (VDD vai VSS). Es esmu diezgan jauns, lai šo stuff, lai es varētu būt nepareizi, though.
 
Sveiki, es esmu šobrīd strādā pie microntolller pārāk, un ir jauns uz šo. Man ir enoucnter šādu problēmu pirms .. Pirmkārt, nepieciešams lūgt u, ja u ir pārliecināts, ka u ir lejupielādēt programmu veiksmīgi vērā chip? Lai pārbaudītu, u var uzrakstīt vienkāršu programmu, iedegsies LED izeja. Vai let me know ..
 
Hi! Kas ir C-Man teica, ka jums ir, lai izslēgtu analog salīdzinājumam un pāriet ostas digitālais I / O (nevis analog ostas). In 12F675 noklusējuma ir analogais ostām. Just rakstīt vērtību 7 CMCON reģistrēties un 0, lai Ansel reģistrēties vai, citiem vārdiem sakot, iekļaut šo līniju sākumā: movlw 0x07 MOVWF CMCON BSF STATUSS, 5 movlw 0x00 MOVWF Ansel BCF STATUS, 5
 
ahhh, es saprotu tagad. Thanks guys, es jums zināt, ja tā darbojas.
 
Nu, es esmu vienu soli tuvāk, lai iegūtu to darbu. Risinājumu Jūs man bija noteikt 1 problēma, bet tagad man ir cita. Kad es aizvērtu slēdzi un dot ievadi pin augsts, spuldze iet no off uz kā tam vajadzētu. Bet problēma ir tā, ka spuldze paliek uz visiem laikiem, un nav izslēgts no tā, ko es daru. Vienīgais, es domāju, ir, ka kaut programma kļūst iestrēdzis laika cilpu un nav iziet tik lika nekad izslēdzas. Kāds cits redzēt kaut ko nepareizi?
 
Sveiki, šis ir tas, ko u wrote decfsz skaits, 1; nokavējumu izraisīja būt par Goto LOOP decfsz count2, 1 Goto LOOP varbūt varat mēģināt redzēt, ja tas izdodas, decfsz skaits, 0, aizkaves noveda būt par Goto LOOP decfsz count2, 0 goto LOOP redzēt, ja tā var strādā .. :)
 
Nu, es esmu patiešām tuvu, lai iegūtu to uz darbu tagad. Es atjaunināts saiti programmā lapas augšpusē. Tagad, tā pārbauda ievades kā tam vajadzētu un izrādās rezultātā on tiesības summu laiku un tad izslēdzas. Problēma ir tā, ka kaut kā tas nav saņemt atpakaļ uz programmas sākuma, lai ļautu tam notikt vēlreiz. Tas strādā perfekti 1 reizi bet nedarbojas pēc tam. Es paskatījos pār kods pavisam nedaudz, un es nevaru redzēt, ja tas kļūst iestrēdzis. Varbūt kāds no jums guys var to apskatīt. Paldies.
 
Jā, es varētu darīt, bet ir problēma. Man vajag programmu, lai tikai mirgot, kad par katru 1 reizi, kad es pull sprūda. Tāpēc es nepieciešama sava veida cilpa, kad tas ir izdarīts apdedzinot tā, ka tas nav iet atpakaļ, lai pārbaudītu sliekšņa (slēdzis) atvelk līdz mēlīte ir let iet atkal. Ja jūs atceraties agrāk teicu šo programmu būtu, peintbols lielgabals. Ja man nebija šim nosacījumam, no skops daudzas lietas varētu notikt.
 
Vispirms ur programma ir tiešām grūti lasīt par board.the izejvielas ir iedarbināta, kad tās 0 Wright? tad kāpēc do u pievienot lieta kā "subloop" nav nozīmes es domāju. doesn't tas padara 2triggering.try svītrot subloop un un goto start.hope tas palīdz
 
Es mēģināšu un paskaidrot, kāpēc man ir nepieciešams, ka subloop mazliet labāk un kāpēc es nevaru vienkārši bez ierunām iet atpakaļ uz sākumu programmu. Tagad, kad es tiešām reālu programmu, es esmu nāksies LED tikai uz aptuveni 6 milisekundes, nevis 0,3 sekundes, kā parādīt programmā. LED tiek aktivizēts, kad ievadi pin iet liels. Ļoti maza uz laiku LED ir, kur problēma. Ja man būtu programma, dodas atpakaļ uz sākumu uzreiz pēc LED izslēgts, es tehniski nepieciešams, lai varētu virzīt un atlaidiet slēdzi, kas saskaņā ar 6 milisekundes. Un tas ir neiespējami. Tātad, apakšā programmas cilpa ir saglabāt programmas dīkstāvē, kamēr slēdzis ir ļaut aiziet un ievadi pin pagriežas atpakaļ uz zemu. Tad, kad ievadi pin iet zems, tas iet atpakaļ uz sākuma programmu, un pagaidīt vēl slēdzis pull. Ja man nebija pēdējais cilpa tur, un man nebija tur slēdzis ilgāk nekā 6ms (kuru es), tas savukārt LED atpakaļ vairāk laika, nekā nepieciešams. Un, kad runa ir laiks peintbola šautenes, tai ir jābūt diezgan precīzi. Es ceru, ka to skaidro mazliet labāk. Es neredzu neko nepareizu ar kodu tiesības tagad, un es esmu izskatījās tā vairāk nekā tonnu reizes, un šķiet, tāpat kā tā vajadzētu strādāt. Jebkurš citi ieteikumi?
 

Welcome to EDABoard.com

Sponsor

Back
Top