loetstelle.net
Lötstelle Userforum
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Und mal wieder DCF77....

 
Neues Thema eröffnen   Neue Antwort erstellen    loetstelle.net Foren-Übersicht -> Microcontroller und DSP
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
kea



Anmeldungsdatum: 03.03.2012
Beiträge: 1
Wohnort: Brandenburg

BeitragVerfasst am: Sa 03.März 2012 11:50:48    Titel: Und mal wieder DCF77.... Bauteile finden Antworten mit Zitat

Hallo und guten Tag,
nachdem ich schon einige Zeit das Forum als Gast durchstöbere, habe ich mich entschieden Euch auch mal mit einer Frage zu "löchern".

Seit einigen Wochen beschäftige ich mich mit Bascom und den Atmels8 und 16, dabei ist das folgende Projekt einer Funkuhr (jaja, ich weiß.... schon wieder eine!) herausgekommen. Diese funktioniert ja auch zu meiner Zufriedenheit. Allerding stoße ich jetz ganz heftig an die 4096 byte Grenze der Demoversion von Bascom 2.0.7.1.

Nun zu meiner eigentenlichen Frage: kann man diesen Code noch irgendwie verkleinern, ohne auf Funktionen zu verzichten? Mir schweben da noch einige Ideen duch den Kopf..... die aber leider nicht mehr reinpassen.

'*********************************'
'* Dcf77 Uhr mit Pollin_Modul *'
'* Glcd TG 12864B (Pollin) *'
'* Kea 64 *'
'* Januar 2012 *'
'*********************************'
$regfile = "m16def.dat"
$swstack = 16
$crystal = 8000000
$lib "glcdKS108.lbx"
$baud = 9600

Config Graphlcd = 128 * 64sed , Dataport = Portc , Controlport = Porta , Cd = 2 , Rd = 1 , Ce = 4 , Ce2 = 5 , Enable = 0 , Reset = 3

Setfont My6_8

Config Dcf77 = Pinb.0 , Inverted = 0 , Timer = 1 , Debug = 0 , Check = 1 , Gosub = Sectic
Config Date = Dmy , Separator = .

Config Portd.7 = Output 'Licht Display
Portd.7 = 1

Config Portd.6 = Input 'taster licht

Idcf Alias Pinb.0 ' Idfc= Signal vom DCF Empfänger
Reset Portb.0 ' pull-up- off

Led Alias Portd.4 ' Led= Kontroll-Led
Config Led = Output

Dcfpon Alias Portb.1 'Dcfpon= Zur Aktivierung vom DCF_Modul von Pollin
Config Dcfpon = Output
Set Dcfpon

Declare Sub Showtime_lcd()
Declare Sub A

Dim B As Byte
Dim C As Byte
Dim D As Integer
Dim E As Dword
'Dim F As Dword

Reset Led
Set Dcfpon
Set Led
Call A
Reset Led
Wait 1
Reset Dcfpon

Cls
Enable Interrupts


'-----------------Programmstart-----------------------------------------------
Do

If Idcf = 1 Then
Set Led
Else
Reset Led
End If

Loop

End

Sectic:
'------'
If Dcf_status.7 = 1 Then
Call Showtime_lcd()
Else
Lcdat 4 , 10 , "Rufe Daten ab... !"
Lcdat 5 , 10 , " Bitte warten"
Lcdat 8 , 38 , Time$
End If

If Pind.6 = 1 Then 'Displaybeleuchtung ein / aus
Toggle Portd.7
End If


Return

'-----------------Programmende-------------------------------------------------
Sub A
Initlcd 'Begrüßungsbildschirm
Cls
Lcdat 2 , 2 , " Atmega16 __ 8MHz"
Lcdat 4 , 2 , " Glcd 128 x 64"
Lcdat 6 , 2 , " DCF77_Uhr V2.5"
Lcdat 8 , 2, " by Kea64"
Wait 8
Cls
End Sub


Sub Showtime_lcd()
B = Dayofyear()
E = Secofday()
'F = Syssec()
Incr B
Incr E
'Incr F
C = Dcf77timezone()
Cls

Lcdat 2 , 2 , D , 'Tag
Lcdat 2 , 67 , Date$ 'Datum'

Lcdat 4 , 40 , Time$ , 1 'Uhrzeit'

'Lcdat 8 , 2 , "System: " ; F 'Systemsekunden

Lcdat 6 , 2 , "Tag/Jahr: " ; B 'Tag im Jahr

Lcdat 7 , 2 , "Sek./Tag: " ; E 'Sekunden am Tag




If C = 1 Then
Lcdat 4 , 10 , "MEZ"
Else
Lcdat 4 , 10 , "MESZ"
End If
If C = 0 Then
Lcdat 4 , 6 , "FAIL"
End If

' 0=kein Signal 1 = Sommerzeit 2 = Winterzeit '
D = Dayofweek()
If Dayofweek() = 0 Then
Lcdat 2 , 2 , "Montag,"
End If
If Dayofweek() = 1 Then
Lcdat 2 , 2 , "Dienstag,"
End If
If Dayofweek() = 2 Then
Lcdat 2 , 2 , "Mittwoch,"
End If
If Dayofweek() = 3 Then
Lcdat 2 , 2 , "Donnerstag,"
End If
If Dayofweek() = 4 Then
Lcdat 2 , 2 , "Freitag,"
End If
If Dayofweek() = 5 Then
Lcdat 2 , 2 , "Sonnabend,"
End If
If Dayofweek() = 6 Then
Lcdat 2 , 2 , "Sonntag,"
End If
End Sub



End

$include "my6_8.font"



Vielleicht etwa ein kleinerer Font, Umschreiben der Routinen o.ä.??

Der Code ist wahrscheinlich noch seeeehr holprig, aber wie gesagt, mit knapp 48 Jahren und etwa 8 Wochen arbeiten mit Bascom......

Hoffe, Ihr könnt mir helfen....
Mfg kea


Hallo Leute,
hat sich erledigt, habe mir die Software gekauft. Trotzdem danke...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Anzeige






Verfasst am: Heute 12:01:21    Titel: Bauteile finden

Nach oben
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    loetstelle.net Foren-Übersicht -> Microcontroller und DSP Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen


Powered by phpBB 2.x © 2001, 2002 phpBB Group

Sie sind Besucher Nr. 1222154
©opyright by Markus Vohburger 2005 All Rights reserved