Sida 2 av 3
Postat: 17 september 2008, 22:50:36
av xxargs
hmm - är inne på precis samma spår med minimum 2 sensorer och användande av 10 bit AD-omvandlare - men tar i lite hårdare med så småningom ett försök med USB-anslutning ala PIC18f4550 för att kunna loggas och displayas med PC mm. - så får man se hur det går...
Postat: 18 september 2008, 13:08:05
av newbadboy
spännande
Här har ni min prel schema. ser ni ngt fel?
http://www.ladda-upp.com/bilder-a/ritnign-463.JPG
Sen satt jag o kollade på VOTI's sida och såg att wisp628 inte var specad för 16F690. Men jag antar att det skall funka, eller?
Postat: 18 september 2008, 14:23:56
av Schnegelwerfer
Det saknas kondensatorer före/efter spänningsregulatorn, och strömbegränsningsmotstånd till LED-displayen...
Postat: 18 september 2008, 15:26:23
av newbadboy
hehe det är inte inritat bara... jag har kondingar och jag har lagt några dioder i serie innan lysdioderna. Jag tänkte mer om det finns ngn port som inte kan kopplas på det sättet jag gjort pga av ngn konfigurerings begränsning.
Postat: 18 september 2008, 17:16:32
av Schnegelwerfer
Jag orkar inte gräva i PIC-databladet angående portarna, men varför har du kopplat dioder i serie innan lysdioderna?
Visst tar dioderna ner spänningen, men LEDs ska som bekant inte drivas med konstant spänning utan med konstant ström.
Postat: 18 september 2008, 18:57:34
av sodjan
> ...och såg att wisp628 inte var specad för 16F690. Men jag antar att det skall funka, eller?
Kod: Markera allt
Specs of following targets were collected from the configuration file(s):
+12F609 16F676 16F818 +16F884 +18F2423 +18F2680 18F452 18F6620
+12HV609 +16F677 16F819 +16F886 18F2431 +18F2682 +18F4520 18F6621
+12F615 +16F684 16F83 +16F887 +18F2450 +18F2685 +18F4523 +18F6622
+12HV615 +16F685 16F84 +16F913 +18F2455 18F4220 +18F4525 +18F6627
12F629 +16F687 16F84A +16F914 +18F2458 +18F4221 +18F4550 18F6680
+12F635 +16F688 16F87 +16F916 18F248 18F4320 +18F4553 18F6720
12F675 +16F689 16F870 +16F917 +18F2480 +18F4321 18F458 +18F6722
+12F683 +16F690 16F871 +16F946 +18F2510 18F4331 +18F4580 18F8410
16F610 *16F716 16F872 18F1220 +18F2515 +18F4410 +18F4585 18F8490
16HV610 16F72 16F873 +18F1230 18F252 18F442 +18F4610 18F8520
16F616 16F73 16F873A 18F1320 +18F2520 +18F4420 +18F4620 18F8525
16HV616 16F737 16F874 +18F1330 +18F2523 +18F4423 +18F4680 +18F8527
16F627 16F74 16F874A 18F2220 +18F2525 18F4431 +18F4682 18F8585
16F627A 16F747 16F876 +18F2221 +18F2550 +18F4450 +18F4685 18F8620
16F628 16F76 16F876A 18F2320 +18F2553 +18F4455 18F6410 18F8621
16F628A 16F767 16F877 +18F2321 18F258 +18F4458 18F6490 +18F8622
16F630 16F77 16F877A 18F2331 +18F2580 18F448 18F6520 +18F8627
+16F631 16F777 16F88 +18F2410 +18F2585 +18F4480 18F6525 18F8680
+16F636 +16F785 +16F882 18F242 +18F2610 +18F4510 +18F6527 18F8720
16F648A +16HV785 +16F883 +18F2420 +18F2620 +18F4515 18F6585 +18F8722
[+] Wisp6x8 firmware >= 1.10, [*] firmware >= 1.12
Ser ut så ja...
Postat: 19 september 2008, 08:34:22
av newbadboy
Jag satte dioder för att slippa ta hänsyn till att olika antal led drar olika strömmar och jag tycker det blir ojämn ljusstyrka med ett motstånd.
Med dioder sätter jag spänningen till 1,6V och då drar de en acceptabels ström.. Men visst denna variant ger oxå variation på ljusstyrka...
Sodjan. Vet inte vad det var för lista jag hittade men enl denna ska dat iaf inte va ngt problem ju... ja då får man börja fundera på koden

Postat: 19 september 2008, 10:07:35
av Schnegelwerfer
Nej, lysdioderna drar inte en "acceptabel" ström om du ger dem en konstant spänning. De drar en ström som kommer att vara starkt temperatur- och inividberoende.
Dessutom drar inte lysdioder olika mycket ström, de TÅL olika mycket ström.
Om du inte får till ljusstyrkan med motstånd har du dimensionerat något dåligt.
Postat: 22 september 2008, 10:26:50
av newbadboy
Kan inte hitta i databldet för 16f690 vilket värde det är på ingångs impedansen? Ngn som vet detta?
Postat: 22 september 2008, 10:38:28
av sodjan
Menar du digitala ingångar ? Irrelevant i så fall...
Postat: 22 september 2008, 10:42:55
av newbadboy
nej. jag menar om man sätter en ingång till ADC. vilket värde får den ADC'n som ingångs impedans. Jag ska näml koppla en fuktsensor som ska ha minst 80kohm last
Postat: 22 september 2008, 10:48:29
av sodjan
OK.
Det står vilken imdedans som det som ansluts till ADC ingången
*max* får ha (för att behålla en viss noggranhet och övriga parametrar).
Men vänta...
*Minst* 80 KOhm last ? Det är väl bara att hånga på ett motstånd.
Sannolikt blir det enklare om du sätter en opamp mellan.
Postat: 22 september 2008, 12:27:38
av newbadboy
mmm jag antar att en spänningsföljare borde göra jobbet.
Postat: 22 september 2008, 14:27:40
av newbadboy
Nu till koden.
Jag har alltså tänkt läsa in ett värde mellan 0,75-3,9V på pinnen som heter AN2 (tror den räknas som kanal 3). Därefter ska jag jämföra värdet med ett förutbestämt värde. Ex så vet jag att en spänning på 2V motsvarar ca 40% relativ luftfuktighet. Är värdet rätt kommer rätt segmenkombination att tändas och visa 40 på displayen. Den lilla kod jag knackat ner följer. Och med denna kommer även frågorna. Jag använder MikroC
Frågor.
1/ Jag är inte helt säker på hur jag sätter RA2 som ADC ingång och resten av pinnarna som digitala utgångar.
2/ Värdet från ADC'n lägger jag i Value. Hur ska jag jämföra Value med ett värde som ex 2,453V? Hur ska jag skriva värdet 2,453 binärt så att säga? Jag kan ju inte använda , tecknet.
**************************************************************************************************************************
// Fuktmätare för luftfuktighet.
// Pic16f690. Intern oscillator 4Mhz. Extern MCLR
unsigned int Value;
void main(){
TRISC = 0b00000000; //PORTC är utgångar
TRISB = 0b00000000; //PORTB är utgångar
TRISA = 0b00100000; //PORTA, RA2= ADC ingång, andra utgångar
ADCON1 = ??????????;
while(1){
Value = ADC_read(3); //Read ADC channel 3.
if( Value == ????????){ //Läser in värdet value och jämför det
PORTA = xxxxx ; // med ett värde, ex binärt för 2V
PORTB = xxxxx ; //om dessa stämmer tänds olika segment
PORTC = xxxxx ; //annars jämförs nästa "if" sats
}
if(Value == ???????){
PORTA = xxxxx ;
PORTB = xxxxx ;
PORTC = xxxxx ;
}
}
}
Postat: 22 september 2008, 15:35:05
av sodjan
> 1/ Jag är inte helt säker på hur jag sätter RA2 som ADC ingång och resten av pinnarna som digitala utgångar.
Om det ens går...
Ibland får välja mellan vissa kobinationer av dig/analoga pinnar.
ADC kapitlet i databladet har alla detaljer.
Är det bara just 40% som du vill visa ?