könnte man das so machen? Der jetzt verwendete Code ist im Anhang (Routinen zum Ansteuern des max7219 mit fünf 7-Segmentanzeigen sind zur besseren Übersicht herausgelöscht) Mein nächstes Ziel wäre eine Drehzahl auslesen zu können: Mein Gedanke nach dem Durchforsten des Forums dazu ist, mit
Du kannst 20 Stück MAX7219 an einem SPI-Bus kaskadieren.
für den Betrieb der LED der Uhr. Eine direkte Strombegrenzung auf 15mA gibt es nicht, sondern der max. Strom wird über R1+R2 festgelegt. Fragen dazu werden gern beantwortet.
gerade an einem Prog. für eine Jalousiene-Steuerung mit einem Arduino-Uno, Relaiskarte und 2x 8x8 MAX7219 Led-Matrix. Auf den 2 Led-Matrix laufen die Kommunikationsinfos und andere Werte, die als Laufschrift, Scrolltext ausgegeben werden. Bei diesem Matrix-Code-Abschnitt stösse ich auf ein merkwürdiges
konzipiert und kann 8 x 8 = 64 LEDs ansteuern: http://tronixstuff.com/2013/10/11/tutorial-arduino-max7219-led-display-driver-ic/ Wie das mit der Helligkeit ist, weiß ich allerdings nicht. Müsste man ausprobieren. Wenn ich weiß, welche LEDs ich verwenden werde, werde ich mir einmal zu Testzwecken
Minutendarstellung und pro Stundendarstellung mit prüfen Sollte er eigentlich tun: [c]... this.MinuteWordsMax = Math.Max(this.MinuteWordsMax, LenCount); ... this.HourWordsMax = Math.Max(this.HourWordsMax, LenCount); ... CodeLine.Add(Constants, "#define MaxHourWordsPlusOne " + (this.HourWordsMax + 1), ...
bis R17, LED1 bis LED8, 74HC595, +5v, VCC, 100nF, 74HC185, SEG A bis G, DIG A bis G, R1 bis R8, 10k, MAX7219, Sheet: 747ZAnzeige.kicad_sch, Rev: A, Date: 2026-08-16
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
ich aber tatsächlich eine uC-Lösung vorziehen, mit entsprechend mehr Aufwand. A) uC und 3 Stück MAX7219 sowie 24 Stück LED 7-Segmentanzeigen. Weshalb 24 Stück? Nun, ich würde das Teil gleich mit einer Leistungsanzeige ausstatten. B) uC und ein 4*20 LC-Display, auch wieder mit Anzeige der
C_N1-ATMEGA128P_P40-M1_(324P20U) (Debugging) - Microchip Studio
main.c
//max7219_0_decode_mode(0xf);
// if == Code B decode for digits 1-4, No decode for digits 5-8
while(1)
{
led1_ein;
_delay_ms(150);
led1_aus;
_delay_ms(400);
}
while (1); // Endlosschleife für Testzwecke
Memory
Aircraft, die voll synchron zum FSX läuft. Besteht aus: - 5 x ATmega-32 - 70 x 7-Segment LEDs - 14 x MAX7219 LED Driver - 29 Drucktaster - 8 x Rotation Encoder - und noch ein paar LEDs Angesteuert werden die 5 ATmega-32 via TWI von einem ATmega-8, der via UART am PC hängt. Derzeit sind die Navigationsinstrumente
entsprechenden Schiene verbunden. Das Ganze funktioniert mit AC, DC und Digitalspannung, min. 12V, max. 24V. Reinhard
Gängige Bausteine sind: - 74HC595 (oder andere Schieberegister) - MAX7219 - PCF8574 - TLC5940 - Neopixel-Leds Und dann die Platinchen rund um RTC, GPS, Analogerweiterung usw. usw... Nur, es weiß ja niemand was Du machen möchtest.
lagen 3 Leerplatinen (Opto-Net-Mini für 80C517, Tastaturmodul mit 8031 und RS232, Displaymodul mit Max7219) + Diskette zu den Buchinhalten schon mit im Buch drin...
letzten 3 Jahren die Service Nummer bemühen, beidemale wurde das jeweilige Problem zeitnah gelöst. (max 1 Tag) Schlussendlich stellte sich eine defekte TAE Dose als Fehlerursache heraus, seit deren Wechsel durch einen Telekommitarbeiter (für mich Kostenfrei) gibt es keinerlei Probleme mehr. Das ist nun
*********************************************************** */ //CLK schick ich zu CLK (Pin 13) an MAX7219 //MISO kriegt von DOUT (Pin 24) //MOSI schickt an DIN (Pin 1) //CS (PIN 12) /* USER CODE END Header */ /* Includes ------------------------------------------------------------------*/ #include "
ausgeben können. Und das schien mir bei bis zu 480MHz Clock nicht _zu_verwegen. Ich hab für den max7219 einen SPI "von Hand" geschrieben (also ohne das SPI-Interface) um ein bisschen zu experimentieren. Dann diese Signale mit einem 746 eingefangen und dargestellt. Und beim Schrauben an den Timings
Hallo Johannes, wenn du einen einfachen Aufbau willst, empfehle ich den MAX7219, das ist ein 64fach LED Treiber. Das Teil gibt es bei Reichelt (knappe 7 Taler für die SMD Version). Einfach per SPI anbinden - fertig. Warum muss es denn immer wieder ein "Schieberegistergrab"
nicht gespeichert, sondern auch im Edit-Mode gleich ausgefuehrt ' Anzeigefunktionen Declare Sub Init_max7219() ' Initialisierung der Anzeige, Helligkeit, Modus u.s.w. Declare Sub Anzeigen() ' Schleife ueber das Anzeigefeld, Umwandlung in 7segmentcode Declare Sub Interpr_rx() ' Die Anzeigefunktion, wir
70 LED1 LED2 LED3 S4301B S4301B S4301B C1 47uF F 2 1 MAX7219CNG , C I 0 P R1 J 10k D3 0 R 1 SFH482 R8 A17,5mm D2 D10 T1 1N4148DO35-17N4148DO35-7 k 6 k 7 5 3 1 2 3 1 R 0 R 2 2 1 Q D 1 B C12 10nF B1 100nF 5C11 3 k 10k N R 6 2 r R22 4 J a OK2 o 100k b 4 5 R21
memory%20size=64%20kbit&organization=8%20k%20x%208&package%20%2F%20case=SOIC-28&supply%20voltage%20-%20max=5.5%20V&supply%20voltage%20-%20min=4.5%20V braucht noch den Digitalkram zum setzen und einlesen nach Neustart
, macht das Aufbauen von irgendwelchen Matrizen aber nicht viel Sinn, man nimmt z.B. einfach einen MAX7219 oder kaskadiert ganz leicht mehrere und spart sich die ganze unnötige Gymnastik in Hardware als Spinnennetz und Software als performanceraubender Abschnitt des Gesamtcodes.
3 = Gnd, Pin 6 = ~SS. Vorteil: Schmitt-trigger inputs. Ähnlich wie HC595 kann man auch LED-Treiber MAX7219 SPI-konform machen. Nachdem ~SS 1>0, könnte eine kleine Verzögerung notwendig werden, um Load-Impuls auf HC165 abzuwarten. Mit ATMEGA324 und F_CPU=16 MHz reichte zwischen ~SS=0 und spi_master_transmit
händische Nutzung bei mir völlig ausreichend. 80-120ms Durchlaufzeit. Für einen Handencoder sind max. 2ms sinnvoll. Wenn man wirklich langsam dreht meinetwegen auch 4ms. Aber niemals sind 80-120ms ausreichend. Nie und nimmer. Der kann gar nicht so reagieren wie man möchte. Ich würde mir erstmal die
328Ps (einfach wegen der Menge an Ports die ich brauche, diverse Taster, Drehgeber und kaskadierte MAX7219-Displays), da hatte ich Timer im Überfluss und konnte die Drehgeber-Abfrage sehr einfach bauen. Da ich Spaß am Basteln habe, schreibe ich den Code neu (in C, war ursprünglich Assembler) und multiplexe
mit ATMEGA48 Andreas Weschenfelder 22.07.06 Ansteuerung der 8x8 Matrix ueber SPI CS-Ansteuerung mit MAX7219 nicht moeglich RESET nicht durch RESET-Knopf, sondern durch aus- und einschalten von Vcc Taktfrequenz 12Mhz *****************************************************************************/ #include
Die Eingänge werden über 74HC165 eingelesen, die Ausgänge über 74HC595 ausgegeben und die LEDs über MAX7219. Im RAM befinden sich quasi die virtuellen Pins. Über Macros werden sie dann so definiert, wie sie sich aus dem Schaltplan ergeben. Eine Umsortierung ist daher nicht nötig, da immer nur mit den
Bool-Feld den erlaubten Wertebereich kennt. Der Rest ist gleich geblieben. Aber stimmt: Er werden max. drei Befehle pro Bit. Der vierte kommt erst beim Byte-Wechsel.
noch einmal eine Leiterplatte, die auf diese TCXOs abgestimmt ist und als Eingangsstufe ggf. einen MAX961 dazu - wenn Zeit dafür ist.
eine LED-Version des Zählers gibt. Meine eigene Anzeigeplatine ist allerdings schon fertig und den MAX7221 habe ich auch schon seit einigen Wochen hier liegen. Der MAX7221 hat den Vorteil, das Multiplexing der Anzeige selbst zu machen ohne dass der µC aktiv wird. Der 7221 hat gegenüber dem 7219 noch
Output - Platine Spannungsversorgung für Breadboard - Anschluklemmen - Temperaturfühler - Sample Max7219 - SMD-Taster - AD7628KR - Rolle Entlötlitze - einige Abschnitte von SMD-Rollen (Widerstände) Input - AVR-ISP-Stick (haben bis zuletzt funktioniert mit Atmel Studio 4.irgedwas. Ich
nicht zum Laufen gekriegt) - UDN2987LWT (8-fach Highside-Treiber) - TL7705 (Reset-Controller) - Max202 (RS232-Treiber) - TLE7241-2G (Stromversorgung linear 5V/550mA) - ATMega644V-10MU (wollte ich eigentlich selber löten, aber ich glaube, das überlasse ich lieber Leuten mit besseren Augen und
P T P R O G R A M M I N I T ; ============================================ ; ;.INCLUDE "..\INC\INC_MAX7219_8x7Seg.inc" ;7-Segmentanzeige 8 Stellen .INCLUDE "..\INC\makros.inc" ;Schleifen ect. .INCLUDE "..\push_mathe\push_mathe.asm" ;8Bit x 8Bit ; ;-----ISR-Routienen----- isr_PCINT0: ;Einer der CNY hat
GND SEGG 17 G F 2f (TXD)PD1 16 (TXD)PD1 C 4 9 GND SEGDP 22 DP G 1g DP DP (RXD)PD0 15 (RXD)PD0 + GND MAX7219CNG S4301B GND AT90LS8535J-S 2 D C ) 4N35 - - - - - C T D 1 1 1 2 11 3 1 1 4 11 5 1 1 V I 4 2 N 0 Z B 9 ZB 8 Z B 7 ZB 6 Z B ( G 2 D L 1 DL 1 D L 1 DL 1 D L SIG 1 0 5 5 2 1R 6 1 C C C C C 1D 1 D VCC
geführt. Wertvollere (da 32 bit kann, und SPI5 nur 16 bit, kritisch bei NSS-Automatik: z.B. wenn 2x MAX7219 in Serie angeschlossen) SPI1 kann man über Pins in der Mitte haben. Beide sind mit Arduino-Funktionen zugänglich. Über Manipulationen mit Register kann man noch SPI2 und 3 (auf Kosten von DAC) und
auch VSC und habe z.B. Python-Funktionen um einfache IO-HW zu simulieren - wie 8x8 LED Matrix mit MAX7219 ... Ansonsten habe ich ein bash script (das erste Mal!) geschrieben, das auf Knopfdruck unter W10/WSL2 alles durchzieht compilieren/Flash-Erease/UpLoad/Terminal-Start. Ich mache das nur, aus
an den AVRs ist, daß ich den 3,3V Regler und die Pegelwandler zur den 5V ICs (OPI1266, TPIC6C595, MAX7219 usw.) einspare.
RC-Glied am Resetpin, was auch nicht zuverlässig startet. Da mußte man noch mit einem Supervisory-IC (MAX690) nachhelfen. Ich hatte mal beim AT90S2313 die FSTRT-Fuse gesetzt mit dem Erfolg, daß nach dem kurzen Delay der Quarz noch nicht angeschwungen war. Der AT90S2313 machte daher nichts beim Einschalten
;+++ Programm zur Ansteuerung des MAX7219 für Lichternetz +++ .nolist .include "8515def.inc" .list ;----------------------------------------------------------------- ; ; General purpose registers .def rRETURN =r0 ; return value from functions
Unter Menüpunkt Help / Register eingeben. Kontrolle mit Edit / Design Information. Dort auf Pins max achten! http://diptrace.com/buy/non-profit/
Ich nutze EAGLE und bin sehr zufrieden. Ich habe mir die EAGLE Files vom MAX7219-Platine runtergeladen (001.png und 002.png) Ich verwende die ULP "eagleup.ulp" um in SketchUp 2014 die Platine sowie Bauteile in 3D-Ansicht darzustellen. (003.png, 004.png und 005.png) Ein