Sida 2 av 2

Re: c-control LED-Display

Postat: 15 november 2009, 21:57:36
av Swech

Re: c-control LED-Display

Postat: 15 november 2009, 22:35:46
av stampe92
DEN ÄR INTE OKÄND!

Jag håller alltså på och försöker få fram värdet från temperaturmodulen till en LED-disp.
värden utan decimaler är inga problem! men nnär dom "halva" graderna ska in kör jag fast!

lite delar ur koden:

Kod: Markera allt

'-----------------------------------------------------
'--      IIC SEND BUFFER TO SAA1064               ----
'-----------------------------------------------------
FUNCTION SENDBUF(BRIGHT as byte,DIGIT1 as byte,DIGIT2 as byte,DIGIT3 as byte,DIGIT4 as byte)
  IIC.INIT
  IIC.START
  IIC.SEND 118 'WRITE ADDRESS
  IIC.SEND 0
  IIC.SEND BRIGHT
  IIC.SEND DIGIT1
  IIC.SEND DIGIT2
  IIC.SEND DIGIT3
  IIC.SEND DIGIT4
  IIC.STOP
  IIC.OFF
END FUNCTION
'----------------------------------------------------
'          SPLIT VALUE INTO DIGITS
'----------------------------------------------------
FUNCTION SPLIT_DIGITS(VALUE as word)
  TAUSENDER=VALUE/1000
  HUNDERTER=(VALUE-(TAUSENDER*1000))/100
  ZEHNER=(VALUE-(TAUSENDER*1000)-(HUNDERTER*100))/10
  EINER=VALUE-TAUSENDER*1000-HUNDERTER*100-ZEHNER*10
END FUNCTION
i "split value into digits" måste man ju kunn ta bort "tausender" och "hunderter" och istället lägga till decimalerna efter "einer" på något sätt...

här är koden som läser temp och sedan skickar till LED-Disp.

Kod: Markera allt

define TEMP as word
DS1631RESET(DS1631)
DS1631SET_STATUS(DS1631,1)
'-------------------------------------------------------------
'-----            LOOP READING TEMPERATURE                 ---
'-------------------------------------------------------------



#LOOP
pause 5
DS1631CONVERT(DS1631)
DS1631WAIT_READY(DS1631)
TEMP=DS1631GET_TEMP(DS1631)

TEMP=TEMP SHR 7
if (TEMP and 0100h) = 0100h then TEMP=(TEMP or FE00h)
SPLIT_DIGITS(temp/2)
  SENDBUF(BRIGHT1,DECODE(EINER),DECODE(ZEHNER),0,0)
lcd.init switchonly
lcd.clear
LCD.PRINT "TEMP: " & TEMP/2 & "." & (TEMP and 1)*5 & " C        "
LCD.OFF
goto LOOP
det hela programeras i WORKBENCH++ (basic) och körs på conrads C-Control II

led disp driver:http://www.nxp.com/acrobat_download/dat ... _CNV_2.pdf


temp modul och display:http://www2.produktinfo.conrad.com/date ... _Modul.pdf

Re: c-control LED-Display

Postat: 15 november 2009, 23:02:44
av sodjan
OK, det var den jag hittade.

Hoppas du hittar någon som kan hjälpa till med den där.
Jag har för mig att det har funnits något tråd för nått år
sedan om prylar i Conrads C-Control serie, men jag minns inte
hur det gick. Har du funderat på att testa Conrads eget
forum för just dessa prylar ? http://www.conrad.se/forum

Ja, det har du visst... :-)

http://www.conrad.se/web/forum?func=vie ... tid=13#627
http://www.conrad.se/web/forum?func=vie ... tid=13#853

I en av de trådarna så fick du även tips om att utvecklaren av C-Control
har ett eget forum, har du testat där ? (Det ser inte ut så...)

Min personliga gissning är att om du inte får vettig hjälp varken i Conrads
eget forum eller i utvecklarens forum, så är sannolikheten ganska låg
att du skulle råka på någon *här* som har pysslat med dessa prylar.

Att jag även har synpunkter på ditt sätt att presentera det hela på har
väl framgått antar jag. Det borde ha funnits länkar till prylarna i första inlägget
och du borde kanske ha nämnt att du redan har varit i andra forum och frågat,
svaren *där* kan ju vara viktiga/intressanta för den som är intresserad *här*
så att det inte läggs ner tid i onödan på något som redan är besvarat...

Re: c-control LED-Display

Postat: 15 november 2009, 23:07:48
av xraid
> Jag vet inte men varför upplever jag att sodjan alltid är så spydig och elak?
kort och koncis ibland bara ...

Re: c-control LED-Display

Postat: 15 november 2009, 23:22:09
av BEEP
Inget daltande här inte, bara rakt på sak :)

Frågan är vad är problemet, är det datan från tempgivaren som du inte kan omvandla eller har du problem med att få LED'en att visa decimaler, har du provat att skriva in siffrorna för hand i koden och kollat vad som visas på LED'en?

Re: c-control LED-Display

Postat: 16 november 2009, 09:49:42
av stampe92
om jag skriver in siffrorna själv visar den decimaler. men då använder jag inte DECODE funktionen.
och att få decimaler rfån tempgivaren är inga problem. hoppas du förstår vad jag menar.. kan inte förklara XD

Re: c-control LED-Display

Postat: 16 november 2009, 12:20:13
av DeVille
Men om du får in decimalvärden från tempgivaren in i en variabel tex DECIMAL
Då kan du väl bara skriva ut den efter din decimalpunkt?

nåtsånt här.

Kod: Markera allt

lcd.init switchonly
lcd.clear
LCD.PRINT "TEMP: " & TEMP/2 & "." & DECIMAL & " C        "  // HÄR BYTTE JAG UT (TEMP and 1)*5  MOT DECIMAL.
LCD.OFF
goto LOOP
Borde väl funka?

Sen är det alltid bra att lista vad man har för grejor, vad man vill göra etc i första inlägget.
Blir mycket lättare för de som kan/vill hjälpa till då.

Lycka till
/DeVille

Re: c-control LED-Display

Postat: 16 november 2009, 17:57:41
av stampe92
Då kopierar jag mitt inlägg och lägger de på första sidan ;)

Nu är de ju bara det att de du skrev var LCD-displayen inte LED-DIsplayen! men tack iaf ;)

Re: c-control LED-Display

Postat: 16 november 2009, 20:54:44
av DeVille
Då kanske ditt problem ligger i att du försöker använda LCD-display kod till din LED-Display.
Jag klippte och klistrade ur koden som du postat, Så står det LCD någonstans kommer det från ditt inlägg.

Nu borde tillvägagångssättet vara samma oavsett display typ om du har färdiga rutiner som du använder.
Ett annat tips kan vara att gå över till tex AVR som fler använder.

Har sett att många inte gillar Conrads C-control. Prova istället Ardunio, nåt som tydligen ska vara bra för nybörjare.

När du editerar första inlägget, se till att du markerar vad du ändrat, samt när du gör det. Annars kan det bli konstigt för de som läser tråden och inte varit med från början.

/DeVille

Re: c-control LED-Display

Postat: 18 november 2009, 16:27:36
av stampe92
ja men åvanför eller under den kod du klistrat så finns en kod för LED