Fórum témák
» Több friss téma |
Fórum » CCS PIC Compiler
Helló mindenki!
Van egy 16f628a PIC -em. Szeretnék vele feszültséget mérni. 16f877 esel sikerült. Ugyan úgy próbálom a 628 assal ,de nem működik. Le sem fordul a kód. Ismeretlen függvény a hibaüzenet. Nem értem ,hogy a 877 esnél miért működik ,ha a 628 nál le sem fordul. Kérem segítsen valki! [code=c] #include <16f628a.h> #device adc=8 #byte ADCON0 = 31 #bit ADC_godone = ADCON0.2 #use delay(clock=8000000) void main() { //mérés előkészitése int adc_value, temp; setup_adc_ports(AN0); setup_adc(ADC_CLOCK_INTERNAL ); //órajel set_adc_channel(0); //chanel választás while(true){ read_adc(adc_start_only); //mérés inditása while(ADC_godone); //várakozás a végéig adc_value=read_adc(adc_read_only); } } Ha átírom a 628 -at 877 -re működik rendesen a kód. Előre is köszi!
Szervusz!
Az adatlapokat szoktad nézni? A 16f628 nem tartalmaz ADC-t...
Akkor mire való rajta az analóg bemenet? Nem értem...
Idézet: Az is benne van az adatlapban: analóg komparátorhoz. „Akkor mire való rajta az analóg bemenet?”
Mert van benne két analóg komparátor meg egy feszültség referencia modul...
A komparátorral össze lehet hasonlitani két feszültséget, hogy melyik a nagyobb vagy kisebb, ahol az egyik feszültség ebben az esetben akár lehet a feszültség referencia modul kimenete is, amit programból lehet változtatni.
Pl.: PIC MCU Comparator
Akár ADC-t is lehet a komparátorral készíteni:16f628- ADC
Értem. Ha szépen kérem valaki nem tudna nekem készíteni egy kódot, ami a kérdéses 628 assal megold valahogy egy adc -t? Konkrétan egy aksinak a töltöttségi szintjét szeretném meghatározni a feszültségéből.
Előre is köszönöm!
Itt található egy alkalmazási mintapélda. Indulj ki ebből.
Alternatív lehetőség: veszel egy olyan mikrovezérlőt, amiben van ADC. Az még mindig kevesebbe kerül, mint valaki félnapi munkája, hogy a problémádat megoldja.
Valaki tudna mondani egy olyan pic -et ami hasonló ár kategóriás és van benne adc? Csak olyat találok, ami sokkal drágább és a kivezetés is sok.
Vagy a Texas MSP430 16bites csodája.
Bár, ez az ágyúval verébre esete lenne. Nagyon olcsó, jó fejlesztő panelt is kapsz hozzá és icserny fórumtársunktól még támogatást is lehet kérni.
Ami a chipcadnél van raktáron:
16F1824 - 14 láb - nettó 310 16F1825 - 14 láb - nettó 340 16F1826 - 18 láb - nettó 340 16F1827 - 18 láb - nettó 360 16F1828 - 20 láb - nettó 410 16F1829 - 20 láb - nettó 430 ezek mind tudják ugyanazt, meg még többet is, mint a 628, és van bennük adc. A 16F1823 csak nettó 290, de abban csak 128 byte ram van (14 lábú). A 16F1503 csak nettó 210, de abban nincs eeprom, nincs usart, és csak 128 byte ram van benne (ez is 14 lábú).
Helló mindenki!
Szeretnék egy lcd-t használni. Keresgéltem és találtam több header fájlt ehhez ,de valahogy egyiknél sem tudom elérni azt ,hogy a szöveget és a változókat konkatenálva rendesen kiírja amit szeretnék. Jelenleg a CCS beépített lcd.c nevű fájljával vesződök, de azt írja ,hogy nincs definiálva a set_tris_d. Nem tudok rájönni mit vár tőlem. Mit állítsak be. Meg arra sem tudok rájönni ,hogy lehet beállítani ,hogy melyik vezeték micsoda. Előre is köszi a segítséget!
Nem ertem ezt a TRISD kerdest. Ezert akkor szokott sirni, ha a PIC-ben nem letezik D port. Probald meg ezt a drivert. Az elejen atirhato a labak hozzarendelese, valamint beallithato hogy olvassa a Busy bitet, vagy Delay-t hasznaljon. A CCS forumon talalsz tobbfele meretu kijelzohoz valtozatot.
Tobbfele formaban hasznalhato: pl
Köszönöm szépen. Mostmár szépen működik a kijelző.
Viszont bele ütköztem egy új problémába: Szeretnék egy rgb leddel színeket keverni. Úgy tudom ,hogy ha elég gyorsan kapcsolgatom föl le, akkor folyamatosnak tűnik a fénye ,viszont tudom vele a fény erőt szabályozni. Próbáltam mindenféle frekvencián ,de valahogy nem akar össze jönni. Vagy folyamatosan világít, vagy villog. Szoftveresen szeretném megoldani a led fényerejének szabályozását. Ha lehet úgy ,hogy 0-255 közt lehessen szabályozni a színek fényét. Valaki tudna egy pl. mutatni? Előre is köszi!
Több kHz-cen próbálkozzál a kapcsolgatással. Ha van PWM kimeneted, akkor egyszerűbben is megy a dolog.
van olyan fv. ami a delay_ms -nél kisebb intervallumban gondolkodik? Ha jól gondolom 1 ms sok lesz. Nem?
Az 1ms nem elég semmire se. Ha 1ms-os lépcsőkben gondolkodsz, és szeretnél legalább 16 fényerőszintet, akkor azzal ~62Hz-et tudsz csak elérni, ami már látványosan vibrál. Ennek legalább a 10, de inkább az 50-szerese kéne. Ezt igazából timer interruptból kéne csinálni, ha nem PWM modult használsz.
Értem. Eddig csináltam egy ilyet:
A problémám eddig annyi ,hogy a belső oscillatort szeretném használni ,de valami nem stimmel. Vagy rosszul értelmezek valmi és nem 4Mhz es az oscillator? Nagy kérés lenne egy kód ehhez a fényerő szabályozáshoz? Előre is köszi!
n-be 0..20 köztti számot rakhatsz, ezzel arányos lesz a fényerő. Idézet: „Szeretnék egy rgb leddel színeket keverni” De hol itt az RGB?
Ez a piros szín. De ,ha ez szépen működik, 3 vagy akárhány színre nagyon könnyen tovább fejleszthető. Mindjárt ki is próbálom.
![]()
Hát akárhogy is nézem, ez villog. Valamit rosszul csináltam?
Proteusban tesztelek. Az jelenthet problémát? Fölteszem össze csomagolva a projektet. Valaki megnézhetné, mert én ezt nem értem.
Előre is köszi!
Akkor megbízok benned és megépítem a kapcsolást. Remélem jó lesz.
![]()
Én ilyeneken szoktam tesztelni:
Bővebben: Link És pl. ilyen drótokkal lehet drótozni: Bővebben: Link |
Bejelentkezés
Hirdetés |