het idee;
een analoog signaal (0 t/m 5V) wordt door de pic 12f675 ingelezen.
aan de hand van dit signaal wordt een led aangestuurd d.m.v. pwm.
bijvoorbeeld: er staat een analoog signaal van 2,5V op pin 3 dan moet de led een duty cycle hebben van 50%.
- analoge signaal zit op pin 3
- led zit op pin 7
- 5V voeding op pin 1 en GND op pin 8
probleem=de led verandert niet gelijkmatig.
Device = 12F675
Config wdt_off, INTRC_OSC_NOCLKOUT
Declare ADIN_RES 10
Declare ADIN_TAD FRC
Declare ADIN_STIME 50
; 76543210
ADCON0 =%10001101
TRISB = %11111000
PORTB = 0 ; Alle uitgangen laag.
Symbol led = PORTB.0
Dim duty As Byte
Dim inlezenled As Word
While 1=1
inlezenled = ADIn 3
If inlezenled < 1 Then inlezenled = 1
duty = inlezenled
duty = duty / 4
PWM PORTB.0, duty, 1
Wend
End
picsels
Volgend project: 7-seg gaming displays; dan dec-1982 labvoeding afmaken, dan funcgen met ad9833 afmaken, dan...
hier had ik even over heen gekeken
nu wil ik een analoog signaal inlezen en aan de hand daarvan de led dmv pwm aansturen,
dit werkt allemaal alleen ik krijg pin5 (portb.2) niet hoog.
dit heb ik nodig om de fet open te sturen
Device = 12F675
Config wdt_off, INTRC_OSC_NOCLKOUT
Declare ADIN_RES 10
Declare ADIN_TAD FRC
Declare ADIN_STIME 50
; 76543210
ADCON0 =%10001101
TRISB = %11111000
PORTB = %0
Symbol led = PORTB.0
Dim inlezenled As Word
While 1=1
High PORTB.2
inlezenled = ADIn 3
If inlezenled < 1 Then inlezenled = 1
inlezenled=inlezenled / 4
PWM PORTB.0, inlezenled, 1
Wend
End
[Bericht gewijzigd door Henry S. op (93%)]
De 12F675 kent geen portB, dat heet GPIO. Struikelt de compiler daar niet over?
Basic ken ik niet, maar moet je ANSEL niet nog instellen?
ik heb nu portb.2 verandert in gpio.2 (geen verandering)
de compiler gaf geen problemen.
ik heb de ANSEL ingesteld probleem is weg
[Bericht gewijzigd door Henry S. op (48%)]