Tipps und Fragen zum Lernpaket Tiny85    


Elektronik-Labor   Projekte   AVR  Tiny85



Das Franzis Lernpaket Mikrocontroller

Zähler-Eingang am Timer0

Auf S. 83 hat sich ein Fehler eingeschlichen: Bei der Messung der Frequenz werden die externen Impulse nicht vom Timer1, sondern tatsächlich vom Timer0 gezählt, dessen Eingang an B2 liegt. Das abgedruckte Programm zeigt es korrekt.

Ein Test unter Linux  von Ralf Beesner

Unter meinem Slackware Linux funktioniert das meiste. LPmikro85.exe tut es unter Wine, mit ergänzter avrdude.conf geht auch avrdude (aber nur SEHR langsam und nur im ISP-Modus), und Bascom-AVR funktioniert mit dem neuen Wine 2.0 halbwegs (bei meinem Vierkerner drehen allerdings 2 Kerne im Dauerlauf auf 100%). Unter Kubuntu 16.04 LTS sieht es nicht so toll aus - da wird noch Wine 1.6 eingesetzt, und Bascom ist darunter kaum zu gebrauchen. CompactDefinition scheint jedoch ein hoffnungsloser Fall zu sein; das segfaultet sofort.


Ein Sinusblinker von Christian Meilinger

In AVR-basierten Franzis Lernpaketen finde ich "weiche Blinker", die die PWM linear zur Zeit steuern. Dadurch wirken diese LED-Blinker immer so, als ob sie nie wirklich dunkel würden. Mit Hilfe von nichtlinearen Funktionen, wie z.B. Sinus, könnte man die Dunkelphase verstärken und den Softblinker ausgewogener blinken lassen. Anbei ein modifiziertes Programm mit Sinus am Port B.0.

'PWM1_neu.bas - Sinusblinker - --------------------------------------
$regfile = "attiny85.dat"
$crystal = 8000000
$hwstack = 64
$swstack = 32
$framesize = 32

Dim N , Dat , Ampl As Integer
Dim Rad , S , T , U As Single

Config Timer0 = Pwm , Prescale = 8 , Compare A Pwm = Clear_up

Do
  For N = 0 To 180
    S = N
    T = Deg2rad(s)
    U = Sin(t)
    Dat = U * 256
    Ampl = 255 - Dat
    Pwm0a = Ampl
    Waitms 10
  Next N
Loop
End


Elektronik-Labor   Projekte   AVR  Tiny85