Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Brogyi: CTEK akkumulátor töltő és másolatai
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Lalikiraly: Mercis kalandok - Huszonnyolcadik rész - Az újrakezdés
- sziku69: Szólánc.
- Lalikiraly: Macbook NEO 2
- Gurulunk, WAZE?!
- MasterDeeJay: Intel Optane M10: mire lehet használni?
- creation: Elég lett abból, hogy a nagy gépeim nem képesek behúzni a filamentet
Új hozzászólás Aktív témák
-
don_peter
senior tag
válasz
Peter789
#4377
üzenetére
Az előző hozzászólásomban rosszul írtam a 10-es számrendszert.

Helyesbítés: 10bit-es számot kapok vissza értékként 2-es számrendszerben
Közben megoldottam a feldolgozást és kiíratást.
A float mint lebegőpontos változó nem tetszett az LCD-t vezérlő driver-nek, így külön kellett hozzá írni egy rutint amely égésszámmá konvertálja a törtet majd egy long változóba tölti, ezek után utána összarakja beleírva a megfelelő helyre egy pontot (ez a pont lesz a tizedest elválasztó) és string-ként kiírja az LCD display-re.
Nem volt egyszerű, de kis segítséggel ez is megoldódott.
Jöhet a digitális bemenet és a digitális jelek feldolgozása

-
don_peter
senior tag
válasz
Peter789
#4377
üzenetére
Sajnos nem tudtak segíteni a hobbielektronikán, vagy csak azt akarták, hogy én kínlódjam ki a megoldást

Közben kiderült, hogy mindenképpen a bejövő analóg jelet konvertálni kell mert más ként nem lesz megjeleníthető formába így nem vált láthatóvá.
A program amit linkeltem részben jó volt, de a konverterek nem voltak benne így nem tudott vissza adni értéket.
Megkaptam 10-es számrendszerben a potméter jelét szóval faszányos a dolog.
Most már csak az alap matematikai műveleteket kell elvégezzem, csak még nem tudom, hogy kell ezeket deklarálni, mert simán beírva a műveletet 0-át ad vissza.
Köszi a segítséget. -
don_peter
senior tag
válasz
Peter789
#4372
üzenetére
Nah igen ha így vesszük, igazad van, de még sem egy drag-and-drop-os (fogd és húzd) megoldással dolgozom

Egy kezdőnek a C nyelvezet így is elég bonyolultnak tűnik, nem beszélve a mikroprocesszorok programozásáról és azok ismeretéről.
Természetesen minden lefut és lefordul, fel is égetem a PIC-et, de 0 értékkel jön vissza.Az A0-ás analóg bemeneten van egy 10K-os állítható értékű ellenállás vagy POTI és az 5v-ot szabályzom vele le s fel.
Reakció 0... -
don_peter
senior tag
válasz
Peter789
#4370
üzenetére
Köszönöm az ajánlásokat, de én még az a programozó vagyok aki a kódokat szereti látni és megtanulni őket leírni

Természetesen megy az élesztés és kisebb programokat már írtam is mint pl.: while ciklusok számolása, nyomógombok használata magas és alacsony szintetek beállítása és kezelése, ledek villogtatása vagy éppen csak kapcsolgatása, és természetesen mindezek értékeit LCD-re kiíratom folyamatos frissítéssel.Alap programozói tapasztalataim a webes irányzatból vannak így némileg el tudok gravírozni az egyes főbb függvények közt. (HTML, CSS, JS, PHP SQL ismereteim vannak)
A gondom az hogy elakadtam az analóg jelek bekérésénél és azok feldolgozásánál.
Egyenlőre beállítom a PIC A0-ás lábára, hogy analóg bemenet legyen és a beépített ReadADC() függvénnyel próbálom kiolvasni a rákerülő jeleket.A fő program része:
#include <p18f4550.h> //chip beállítása
#include <stdio.h> //I/O portok beállítása
#include <delays.h> //Időzítő
#include <tesztheader.h>
#include "lcd.c"
#include <adc.h>
#define ANALOG_IN ADC_CH0 //a potméter AN0-ra csatlakozik
volatile unsigned char a;
void main(){
lcd_init(); // Az LCD modulinicializálása
lcd_init_cgram(); // Az ékezetes betűk feltöltése
stdout = _H_USER; // Az LCD legyen a standard kimenetnt
TRISAbits.TRISA0 = 1; //analog A0 láb legyen bemenet
ADCON0=0b00000001;
OpenADC(ADC_FOSC_64 | ADC_RIGHT_JUST | ADC_20_TAD, ANALOG_IN | ADC_INT_OFF | ADC_REF_VDD_VSS, ADC_2ANA);
TRISBbits.TRISB7 = 0;
LATBbits.LATB7 = 1;
while(1){
a=0L;
Delay10TCYx(80);
a = ReadADC();
printf("Valami %u", a);
lcd_write(0xC0,0,1,1);
}
}
Elviekben a header állományban minden deklarálva van ami szükséges lehet mivel a program nem figyelmeztet, hogy hiányolna valamit
Előre is köszi a segítséget. -
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Milyen TV-t vegyek?
- Samsung LCD és LED TV-k
- Milyen légkondit a lakásba?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Vége a régi Kindle-öknek? Az Amazon május 20-án beszünteti támogatásukat
- Kábellel oldaná meg a 12VHPWR gondjait az ASUS
- Kamionok, fuvarozás, logisztika topik
- Olcsóbb lett a Game Pass Ultimate, de a Call of Dutyért cserébe várni kell
- Proxmox VE
- S.T.A.L.K.E.R. 2: Heart of Chornobyl
- További aktív témák...
- Legújabb Thinkpad T14 gen6 - Bontatlan + magyar! - Core Ultra 7 255U - 16/32GB - 512GB - Gyártói gar
- 96GB DDR5 ECC RDIMM 5600MHz szerver RAM
- Eladó AMD Ryzen 7 9700X, RTX 3070, 32GB 6000MHz DDR5, 1TB M.2, 850W +80 Gold Gamer PC!
- Dell Latitude 5411,14",FHD,i7-10850H,16GB DDR4,512GB SSD,2GB VGA,WIN11
- Dell Precision 7720,17.3",FHD,i7-7820HQ,16GB DDR4,256GB SSD,P3000 6GB VGA,WIN11
- Eladó Dell Latitude 7440 Új állapotban i7-1365U 32 GB DDR5 RAM 1TB SSD Dell pro support garancia
- AKCIÓ! Sony PlayStation 4 PRO 1TB fekete játékkonzol garanciával hibátlan működéssel
- LG UltraGear 32GS60QC-B VA Monitor! 2560x1440 / 180Hz / 1ms / FreeSync
- Azonnali készpénzes nVidia RTX 5000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- Dell XPS 13 Plus 9320 i7-1260P 32GB 512GB 4K+ TouchScreen 1 év garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



]
