Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   986 / 1319
(#) janikukac válasza trudnai hozzászólására (») Jún 20, 2011 1 /
 
Régebben kerestem, ám nem.. Ha ti találtok esetleg valamit, vagy keresési SZÓ ötleteket adtok akár angol nyelven is, akkor megköszönöm!
(#) trudnai válasza janikukac hozzászólására (») Jún 20, 2011 1 /
 
Kozben hozza tettem linket az elozo hozzaszolasomhoz... Az em jo?
(#) janikukac válasza trudnai hozzászólására (») Jún 20, 2011 1 /
 
Szia. Nem. Az első ok: hogy drága
a második , hogy nem az a PIC megy bele, hanem a 628-as...
(#) potyo válasza janikukac hozzászólására (») Jún 20, 2011 1 /
 
Ha csak utánépíteni akarsz, akkor miért nem olyan PIC-et veszel, amivel az eredeti áramkör is épült?
(#) janikukac válasza potyo hozzászólására (») Jún 20, 2011 1 /
 
Mivel ezeket kaptam, és szeretnék takarékos lenni!!! :yes:
(#) trudnai válasza janikukac hozzászólására (») Jún 20, 2011 1 /
 
Aki keres az talal (me mindig csak a HE-n belul maradva!)

http://www.hobbielektronika.hu/kapcsolasok/egyszeru_7_szegmenses_or...l.html

Hogy mas a PIC arra nem tudok mit mondani. Vagy veszel kb 600 ft-ert egy 628-asat (ket gombocos fagyi ara, de lehet csak egy nem tudom), vagy atirod a programot, aminek a forrasa elerheto...
(#) janikukac válasza trudnai hozzászólására (») Jún 20, 2011 1 /
 
Épp ez az , hogy nem akarok átírkálni. Nem is menne.
Na, köszi szépen azért! Többiek: várom az ötleteket ! Szép estét!
(#) janikukac válasza (») Jún 21, 2011 /
 
Rendben, átmegyek, ne haragudj, de a címben benne van?: HOGYANOK?!
(#) mrobi válasza janikukac hozzászólására (») Jún 21, 2011 /
 
Sziasztok!
Mplab-ban programozok. A WATCH ablakban beálítottam hogy a GPIO regisztert kiírja (12F675-ős pic-nél így nevezik a portot) de ha leszimulálom a GPIO regiszter értéke nem változik. Ha beégetem pic-be ott szépen működik. Ezt hogyan lehet orvosolni?
(#) kissi válasza mrobi hozzászólására (») Jún 21, 2011 /
 
Mi nem változik? A bemenet --> azt neked kell változtatni !
A kimenet --> annak működnie kell, ha a valóságban ugyanazzal a beállítással működteted ! Sokat segítene, ha ilyenkor a projectet, de legalább a programodat mellékelnéd és egy fényképet a beállításaidról!

Steve
(#) watt válasza mrobi hozzászólására (») Jún 21, 2011 /
 
Tiltsd le az A/D-t és a comparátort, ha nem használod!
A másik, hogy a ki-bemeneteket a TRIS GPIO-val kell beállítani, nem a MOVWF TRISIO val!
(#) mrobi válasza kissi hozzászólására (») Jún 21, 2011 /
 
Itt egy kép.

névtelen.PNG
    
(#) mrobi válasza watt hozzászólására (») Jún 21, 2011 /
 
Tudom hogy a GPIO-t kell használni. Az A/D hogyan kell letiltani (azzal még nem foglalkoztam)?
(#) watt válasza mrobi hozzászólására (») Jún 21, 2011 /
 
Idézet:
„Tudom hogy a GPIO-t kell használni.”
Biztosan arra válaszoltál amit írtam? Mert ha igen, akkor miért úgy csinálod a becsatolt forrásodban???
A képet amit küldtél most nézem, az a forrás pedig abszulút hiányos! (Egyébként lehet fájlt is csatolni, akkor nem kell képpel és másolásokkal bíbelődni, és minden rajta van ami fontos!)

Az A/D-t úgy kell letiltani, hogy az adatlapban olvasható megfelelő regiszter megfelelő bitjeit beállítod!

Nem csak az A/D-t írtam, a komparátort is...
(#) mrobi válasza watt hozzászólására (») Jún 21, 2011 /
 
Bocsi. Elolvastam. Azt írtad hogy nem TRISIO-val kell beállítani. Én nézem az adatlapot de ott úgy írják.

  1. include "P12F675.inc"
  2.  
  3.         __CONFIG       _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_OFF & _INTRC_OSC_NOCLKOUT & _MCLRE_ON & _CPD_OFF
  4.  
  5.         CBLOCK  0X20   
  6.         L1
  7.         L2
  8.         ENDC
  9.         org     0
  10.  
  11. START   BSF     STATUS,RP0
  12.         MOVLW   B'00001000'
  13.         MOVWF   TRISIO
  14.         BCF     STATUS,RP0
  15.         CLRF    GPIO
  16.         BSF     GPIO,1
  17. MAIN    NOP
  18.         GOTO    MAIN
  19.         END

Ebből mi hiányzik? Az A/D letiltásán kívül?
(#) watt válasza mrobi hozzászólására (») Jún 21, 2011 /
 
Valóban úgy írják ezen meglepődtem, biztosan azért, mert az a PIC hiába 12F már midrange típus. Az érdekes, hogy én a TRIS GPIO parancsot használtam és az is működik, mint az egyszerűbb 12F-eknél. Minden, lényeg, hogy akkor ez nem okozhat zavart a későbbiekben.

Az A/D-n kívűl még írtam ,hogy a komparátorokat is le kell tiltani.

Írtam, hogy ne copy-z, hanem csatold be a fájlt! (Tallózás!)
(#) kissi válasza watt hozzászólására (») Jún 21, 2011 /
 
A TRIS beállítás jó, de a komparátor és az analóg funkció nincs kontrollálva! A mellékelt képen látható, hogy milyen regisztereket kell nézned a PORT-al kapcsolatban, ezeket a biteket kell beállítani, ill. leellenőrizni!

De ez hogyan működött a letöltés után ( mert azt írtad, hogy a szimulációban nem működik ! ) ?!

Steve

12F675.JPG
    
(#) watt válasza kissi hozzászólására (») Jún 21, 2011 /
 
Én is tapasztaltam eltérést a szimuláció és valós működés között addig, amíg nem állítottam be mindent rendesen. (gondolom nem nekem akartál válaszolni, vettem...)
(#) mrobi válasza watt hozzászólására (») Jún 21, 2011 /
 
Értem. Megpróbáltam letiltani az A/D-t. Így gondoltad:

12f675.asm
    
(#) trudnai válasza mrobi hozzászólására (») Jún 21, 2011 /
 
Adatlapot erdemes forgatni!

(Kiolloztam belole a peldat port initre, ha nem is pont igy kell neked, adhat otletet...)
(#) mrobi válasza trudnai hozzászólására (») Jún 21, 2011 /
 
Köszi. Kezdem most már érteni. Forgatom én az adatlapot. Csak nem igen megy még az értelmezése.
(#) 3080 hozzászólása Jún 21, 2011 3 /
 
Sziasztok! Elnézést, hogy ide írom bajom. Szóval... van egy programom amit át kéne alakítani. Viszont én nem értek a témához ezért szorulok más tapasztalatára. Szerintem nem túl összetett a dolog. Ha valaki vállalná kérem írjon rám akár itt, mailben elküldöm.
(#) zoz11 hozzászólása Jún 21, 2011 /
 
Sziasztok
Én is kezdő pices vagyok, nem rég írtam is ide.
Amit megírtam működik nagyon szépen, úgy ahogy kell.
Itt a program, PIC simulátroba csinálgatom.

  1. Define CONF_WORD = 0x3f69
  2. Define CLOCK_FREQUENCY = 4
  3.  
  4. TRISB.0 = 0
  5. TRISB.1 = 0
  6. TRISB.2 = 0
  7. TRISB.3 = 0
  8.  
  9. TRISA.4 = 1
  10. TRISB.5 = 1
  11.  
  12. Dim x As Byte
  13.  
  14. eleje:
  15. If PORTB.5 = 0 Then
  16. Gosub stop
  17. Else
  18. Endif
  19.  
  20. If PORTA.4 = 0 Then
  21.  
  22. x = 1
  23. PORTB = x
  24. WaitMs 5
  25. x = 1
  26. PORTB = x
  27. WaitMs 5
  28. x = 2
  29. PORTB = x
  30. WaitMs 5
  31. x = 6
  32. PORTB = x
  33. WaitMs 5
  34. x = 4
  35. PORTB = x
  36. WaitMs 5
  37. x = 12
  38. PORTB = x
  39. WaitMs 5
  40. x = 8
  41. PORTB = x
  42. WaitMs 5
  43. x = 9
  44. PORTB = x
  45. WaitMs 5
  46.  
  47.  
  48. Else
  49. x = 9
  50. PORTB = x
  51. WaitMs 3
  52. x = 8
  53. PORTB = x
  54. WaitMs 3
  55. x = 12
  56. PORTB = x
  57. WaitMs 3
  58. x = 4
  59. PORTB = x
  60. WaitMs 3
  61. x = 6
  62. PORTB = x
  63. WaitMs 3
  64. x = 2
  65. PORTB = x
  66. WaitMs 3
  67. x = 3
  68. PORTB = x
  69. WaitMs 3
  70. x = 1
  71. PORTB = x
  72. WaitMs 3
  73.  
  74. Endif
  75.  
  76. Goto eleje
  77.  
  78. End                                              
  79. stop:
  80. If PORTB.5 = 0 Then
  81.  
  82. x = 1
  83. PORTB = x
  84. WaitMs 1
  85. x = 3
  86. PORTB = x
  87. WaitMs 1
  88. x = 2
  89. PORTB = x
  90. WaitMs 1
  91.  
  92. Goto stop
  93. Else
  94. Goto vege
  95. Endif
  96. vege:
  97. Return

Olyan kérdésem van, azt hogyan tudom megcsinálni pl. ami a 22-45 sor között van, az akkor fusson x ideig, mikor valamelyik port kap egy pillanatra jelet, és mikor letelik az idő, akkor ugorjon ki a subrutinra.
Köszönöm!
Üdv: Zoltán
(#) kissi válasza watt hozzászólására (») Jún 21, 2011 /
 
Bocs, persze, hogy nem Neked szólt
Steve
(#) cape-t hozzászólása Jún 21, 2011 /
 
Sziasztok!

Autodidakta módon programozgatok PIC-et. Az eszköz PIC16F877. Az lenne a kérdésem, hogy egy 10 bites számot (A/D átalakító eredménye) hogyan lehetne kijeleztetni az LCD-n. Az LCD kezelés már úgy-ahogy megy, a bitenkénti 0 v. 1 kiiratását megoldottam. De szeretném decimálisan kiiratni az eredményt. Pl. a referencia feszülséghez képest félfesznél 512, max.-nál 1024.
Ennél még nagyobb vágyam, hogy pl. 5V végkitérésű mérőműszert készítsek belőle. (Jelenleg poti a Vcc és Vdd között, csúszka az RA0 bemeneten.) Ekkor a kijelzés 0.000 és 5.000V között 0.005V-os lépésekben emelkedne. Ezt hogyan lehet megoldani assemblyben?

A válaszokat előre is köszönöm!

Üdv:
Gyula
(#) Hp41C válasza cape-t hozzászólására (») Jún 21, 2011 /
 
Szia!

Két lépésben kiolvasod és eltárolod a 10 bites számot, binárisból BCD konvertálod, a BCD kódokat ASCII kódokká alakítod. Az így nyert szöveget lehet kiírni az LCD -re...
Assembly rutinok C rutinok
(#) trudnai válasza zoz11 hozzászólására (») Jún 21, 2011 /
 
Figyeled azt a portot ahol az a bizonuyos jel jon, mikor azt eszleled bele ugrasz a rutinodba CALL utasitassal, ott csinalod amit kell idozitessel figyeled mennyi ideig kell,majd RETURN utasitassal onnan vissza lepsz. Ezer felekeppen lehet ilyesmit csinalni, de most latom valami Basic-kel szenvedsz -- ott GOSUB es RETURN van, de mintha ezeket mar ismerned...
(#) zoz11 válasza trudnai hozzászólására (») Jún 21, 2011 /
 
Igen basic-el szenvedek, nekem még ez is nagyon magas, a többi programozási nyelvből meg gyakorlatilag semmit nem értettem meg eddig.
Próbálkozom, hátha…
(#) vilmosd válasza cape-t hozzászólására (») Jún 21, 2011 /
 
A konyvespolcon talalsz mintapeldakat, es sok irodalmat a PIC programozasaval kapcsolatban. Van egy mintapelda csomag ami ASM es C nyelven elvezet az alapoktol bonyolultabb projektekig.
(#) marek hozzászólása Jún 21, 2011 /
 
Sziasztok!
Megépítettem a Szilva-féle pickit2 klónt, az lenne a kérdésem, hogy ha rádugom a gépre, akkor fel kellene ismernie új hardverként, vagy kell hozzá még valami program?
Következő: »»   986 / 1319
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem