Fórum témák

» Több friss téma
Fórum » PIC - Miértek, hogyanok haladóknak
Lapozás: OK   1075 / 1320
(#) Panzer576 hozzászólása Máj 30, 2012 /
 
Valaki foglalkozott már hőelemekkel PIC-es mérésre?
Most egy ilyet szeretnék összedobni: (melléklet)
De a leírt pontosság nem egészen ilyen, valamint hiába fogom meg a hőelem végét, nincs változás az analóg jelen!
Szerintetek mit tegyek?
(#) watt válasza Panzer576 hozzászólására (») Máj 30, 2012 /
 
Építsd meg úgy, hogy hiba ne legyen benne, mert ennek működnie kell, főleg az analog kimeneten, ami igazából nem is PIC haladó kérdés, hanem tiszta elektró...
(#) watt válasza helektro hozzászólására (») Máj 30, 2012 /
 
Erratákat nézted? Valami rémlik ezzel a PIC-el az A/D-vel kapcsolatban.
(#) kiralyz válasza Dave87 hozzászólására (») Máj 30, 2012 /
 
A mikropascal forditasnal mar ezt a hibat irja ki:

350 1019 Warning: Source size may exceed destination size alarm.mpas

erre kodreszre :
begin
sor1:='ELESITES:'+sec_rem_text+'mp ';
sor2:='mulva! ';
end;

Valoszinu hogy nem fer be a sor1 valtozoba az egesz szoveg.
De ez szerintem a mikropaskal topicba valo kerdes
(#) Dave87 válasza kiralyz hozzászólására (») Máj 30, 2012 /
 
Nem tudom melyik verzióját használod a mP-nak, de nálam nem figyelmeztet ilyesmire. Sőt, ha megnézed a ByteToStr, egy 3 karakter hosszú stringet ad vissza. a sor1 16 karakter hosszú, az ELESITES: az 9 karakter +3 amit a ByteToStr visszaad, +4 a vége a "mp ". Nem tudom nálad miért dobja ezt.
(#) Dave87 válasza Dave87 hozzászólására (») Máj 30, 2012 /
 
Nos egyelőre függőben hagyom a dolgot, először is megfogadom Programmer javaslatát és megszüntetem az egymásba ágyazott case-eket, aztán ha van valami fejlemény megírom. Sajnos kevés szabadidőm van, de próbálok haladni vele minden nap egy kicsit. Köszönöm az eddigi segítségeteket, hamarosan jelentkezem!
(#) kiralyz válasza Dave87 hozzászólására (») Máj 30, 2012 /
 
Mikropaskal pro 3.8 de ez valojaban csak warning a program lefordul es fut is a mikropaskal debuggereben
(#) Dave87 válasza kiralyz hozzászólására (») Máj 30, 2012 /
 
Nekem az 5.61 pro (legújabb) van feltéve, az lehet már alapból kezeli ezt a problémát fordításkor és csonkolja a stringet? Mindegy, ez már tényleg a mP témába tartozik, na meg a valószínűleg nem ez az oka a hibának.
(#) kiralyz válasza Dave87 hozzászólására (») Máj 30, 2012 /
 
A hex fut az mplab szimulatoraban is, felteszem ide probald ki.

alarm.hex
    
(#) Hp41C válasza Dave87 hozzászólására (») Máj 31, 2012 /
 
De meg is az egymásba tett case szerkezet...
(#) helektro válasza watt hozzászólására (») Máj 31, 2012 /
 
Erratát néztem.
Ott csak az elég nagy offsetről írnak, és elvileg! abba a revisióba, amit kaptam, abban ez már nem áll fenn.

Viszont jobban megnéztem a pic doskit és a felső 4 bit az előjel bit az adresh-ban. Mivel az ebben lév AD tud differenciál mérést, ezért van benne az előjel jelzése.

Mondjuk az eddigi tapasztalat alapján ebben is elég nagy offset van (nálam olyan 10LSB), csak arra nem számítottam, hogy ez lehet negatív is.
(#) szuperman hozzászólása Jún 1, 2012 /
 
Helló mindenki!

Van egy ASM programom. Mivel nem értek hozzá, így fordítom sincs hozzá, sőt fogalmam sincs milyenek vannak. Annyi lenne a kérésem ,hogy egy progit, ami AMS -ben van lefordítana nekem valaki .hex -é?

Kettő db ASM -et kaptam, nem tudom melyik micsoda...

Előre is köszi!
(#) Panzer576 válasza szuperman hozzászólására (») Jún 1, 2012 /
 
A 2-at nem fordította le, de most sajna sietek, nem tudom megnézni!
Az 1-é a mellékletben!

ize.HEX
    
(#) szuperman válasza Panzer576 hozzászólására (») Jún 1, 2012 /
 
Köszi!
(#) Hp41C válasza szuperman hozzászólására (») Jún 1, 2012 /
 
Szia!

A másik is fordul, csak kell még neki egy állomány a AN857 csomagjából. Ennek előállítására egy Excell táblázat is van a csomagban...

A motorodhoz igazításához kelleni fog a fordító: MpLab 8.85
(#) szuperman válasza Hp41C hozzászólására (») Jún 1, 2012 /
 
Köszi!

De miért kell hozzá egy exel tábla? Miket kellene az exelbe raknom. Vagy jó így ahogy van? 2 exel is van hozzá.

Program.zip
    
(#) Dave87 hozzászólása Jún 2, 2012 /
 
Sziasztok újra!

Nos némi átalakítást végeztem a programon, próbáltam kicsit átláthatóbbá tenni, bár lehet csak nekem lett az. A problémám sajnos továbbra is fenn áll. Megosztanám veletek a jelenlegi forráskódot, a működőképes hex-et illetve azt is ami nem működik, illetve a Proteusos szimulációt (ISIS v7.6 SP4) is mellékelem, hogy akinek van ideje nézze meg mit produkál a program. Teljesen tanácstalan vagyok most már az a helyzet. A működő illetve nem működő hex annyiban különbözik, hogy a működőbe nincs belefordítva a forrás 446, 447-ik sora. Köszönöm előre is ha pazaroltok rám némi időt.
(#) thomas01 hozzászólása Jún 3, 2012 /
 
ez most lehet, hogy elég hülye kérdés lesz, (mentségemre szolgáljon, hogy még teljesen kezdő vagyok a témában): katalógusban néztem egy árlistát a picekről, de nem igazán tudom, hogy a "/" jel után lévő betűk mit is jelentenek.

PIC12F683-E/MD
PIC12F683-E/MF
PIC12F683-E/P
PIC12F683-E/SN

konkrétan ezekre lennék kíváncsi
(#) _vl_ válasza Dave87 hozzászólására (») Jún 3, 2012 /
 
Tokozás. A data sheet legvégén megtalálod, hogy melyik micsoda. A -E meg a hőmérséklet jelölés (mit bír az eszköz). Szintén ugyanott található a magyarázat.
(#) Programmer válasza Dave87 hozzászólására (») Jún 3, 2012 /
 
Még egyszer nekifutva észrevettem még valamit: a kp_buff nevű string változót módosítod ebben a két ágban, mégpedig úgy, hogy az egyes elemeire hivatkozol. Ha jól emlékszem a Pascal nem null végződésű stringekkel dolgozik, hanem eltárolja azok hosszát, s a hossz értéke az a változó[0] elem. A hossz számítása a felhasználó beavatkozása nélkül történik. Magyarán az első elemet nem szabad piszkálni, előre nem látható következménye lehet.
Próbáld ennek függvényében módosítani a programot.
PS: gondolom a stringeket a mikrovezérlőknek szánt fordító is így kezeli, bár a fejemet nem tenném rá...
(#) Dave87 válasza Programmer hozzászólására (») Jún 3, 2012 /
 
Szia! A mP helpje szerint így néz ki egy string:
  1. var s : string[5];
  2.  
  3. begin
  4.  s := 'mik';
  5.  
  6. {
  7.  s[0] is char literal 'm'
  8.  s[1] is char literal 'i'
  9.  s[2] is char literal 'k'
  10.  s[3] is zero
  11.  s[4] is undefined
  12.  s[5] is undefined
  13. }
  14. end;


Tehát ha nekem van egy 16 karakter hosszú sztringem és azt feltöltöm 0..15-ig akármilyen karakterekkel a 16-ik eleme egy #0 karakter lesz. Ha csak 5 elemmel töltöm fel, akkor a 6-ik eleme lesz #0.

http://www.mikroe.com/download/eng/documents/compilers/mikropascal/...gs.htm
(#) lidi válasza thomas01 hozzászólására (») Jún 3, 2012 /
 
Ez marhára haladó kérdés volt ám
(#) Programmer válasza Dave87 hozzászólására (») Jún 3, 2012 /
 
Ezek szerint a mP nem úgy kezeli mint a "sima Pascal", ez inkább C-s string kezelés. A linken viszont van egy mondat, ami nagyjából ugyanaz mint amit én mondtam, csak a string végére igaz:
Idézet:
„Be careful when handling strings in this way, since overwriting the end of a string will cause an unpredictable behavior.”

Meg kéne bizonyosodj arról, hogy ez sem áll fenn soha.
(#) szilva hozzászólása Jún 5, 2012 /
 
Üdv!

Régen jártam erre, nem sok szabadidőm volt ilyesmire. Most viszont lenne pár kérdésem, hátha tudtok valami irányt mutatni.

Szóval röviden a projekt, amiben bütykölgetek: SD/MMC kártyáról akarnék filerendszerben lévő fileokat olvasni. A cél az, hogy PC-vel C64-es tape fileokat egy memóriakártyára felmásolok, majd erről a kártyáról egy PIC-es cuccal egy file-t kiválasztva abból előállítom a C64-be beküldendő jelfolyamot. Gyakorlatilag a fileokból hazudnék be a C64-nek magnót.

Ott tartok, hogy egy 18F2520-asra van kötve egy LCD modul és egy SD kártyafoglalat, a progi asm-ben íródik. Jelenleg normál módon partícionált-formattált FAT12 és FAT16 SD és MMC kártyáról tudom már olvasni a root directory bejegyzéseit, ki tudom számolni a file kezdő szektorát. Azt hiszem, hogy nem akarok alkönyvtárakkal foglalkozni, elegek nekem a gyökérben lévő fileok. Most valahol 1300 szónál tart a progi mindenestül.

Az elektromos illesztés viszonylag primitív a kártya és a PIC között (a PIC 5V-ról fog menni), PIC->SD irányban 680ohm/1k osztók vannak, visszafelé irányban egy BS170 invertál és illeszt 5V-ra. A PIC 20MHz-es kvarcról jár, jelenleg ha minden igaz Fosc/4, azaz 5MHz az SPI clock, és a kommunikáció renben zajlik.

A kérdéseim a FAT filerendszer és alapvetően a "hard disk" kezelésével kapcsolatosak:
- Hogyan tudom biztosan megállapítani, hogy a 0. blokk MBR-e?
- Elvileg lehet nem partícionált memóriakárytára is csinálni filerendszert, ekkor a 0. blokkon a FAT boot szektora van. Fel kell-e készülni ilyen kártya kezelésére, vagy ezt nyugodtan elhajíthatja az ember?
- Ha nincs MBR, akkor miből lehet megállapítani a filerendszer típusát (FAT12 vs FAT16)?
- Hogyan lehet egyértelműen azonosítani a FAT boot szektorát, hogy az tényleg az?
- Van egy 32MB-os kártyám, ezen FAT12 van (szerintem még fényképező formázta), de ha ugyanekkora kártyát linux alól FAT-ra formázok, arra már FAT16 kerül. Vajon mennyire szükséges a FAT12 támogatása (a kezelése a FAT táblában található 12 bites bejegyzések miatt elég horror)?

Igazából azon tűnődöm, hogy vajon mennyire erős megszorítások azok, ha kijelentem, hogy csak MBR partícionált kártyával állok szóba, azon belül is kizárólag a legelső partícióval, ami csak FAT16 lehet. Ráadásul csak a gyökérben lévő fileok közül tudok válogatni. Szerintetek ezek nagyon erős megszorítások, vagy együtt lehet élni velük, mert ez a megszokott használat módja?

Előre is köszönöm az öteleteket, segítségeket!
(#) _vl_ válasza szilva hozzászólására (») Jún 5, 2012 /
 
Tudok adni egy 150KB-s pdf-et, ami az eredeti SD card fájlrendszer specifikációt tartalmazza még 2000-ből. Abban megnézheted, hogy mi fordulhat elő, és mire nem kell számítani.
(#) pjg válasza szilva hozzászólására (») Jún 6, 2012 /
 
Ez segíthet valamit.Bővebben: Link

Sajnos nem az egész könyv.
(#) szilva válasza _vl_ hozzászólására (») Jún 6, 2012 /
 
Azt megköszönöm, ha eljuttatod hozzám. Az itt lévő e-mail címem él.
(#) szilva válasza pjg hozzászólására (») Jún 6, 2012 /
 
Neked is köszönöm, mindenképpen átolvasom. Amúgy sose volt korábban MMC kártyám, de szereztem párat direkt azért, hogy kipróbáljam a velük való kommunikációt. Kapásból működtek az eddig megirt progival.
(#) watt válasza szilva hozzászólására (») Jún 6, 2012 /
 
Szia! Régebben ezt túrkáltam, azt hiszem ott van az egyik táblázatban, hogy hol van a FAT típusa, meg sokminden más is. Remélem segít, annak ellenére, hogy német...!
(#) Hp41C válasza szilva hozzászólására (») Jún 6, 2012 /
 
Egy magyar nyelvő (jó régi) könyv, amiben le van írva az MBR, a Boot szektor felépítése:
Bővebben: Link
Következő: »»   1075 / 1320
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