Links BASCOM

http://sites.prenninger.com/bascom-avr/links-bascom

http://www.linksammlung.info/

http://www.schaltungen.at/

                                                                                            Wels, am 2015-05-10

BITTE nützen Sie doch rechts OBEN das Suchfeld  [                                                              ] [ Diese Site durchsuchen]

DIN A3 oder DIN A4 quer ausdrucken
**********************************************************************************
DIN A4  ausdrucken
*********************************************************

BASCOM-AVR‎ > ‎

BASCOM & uC LINKS



http://halvar.at/elektronik/kleiner_bascom_avr_kurs/

AVR-Mikrocontrollern der Firma Atmel  http://www.atmel.com/

DIL-8 ATtiny13  ATtiny45 

DIL 28  ATmega8-16PU um € 1,64
8-bit AVR Microcontroller, 8KB Flash, 28-pin

programmiert  mit Bascom-AVR (BASIC)

*********************************************************
Fa. netduino  
Microcontroller Board mit ARM7  -  hardwareseitig kompatibel zu ARDUINO
http://www.netduino.com/hardware/

Fa. NXP Semiconductord
uC-Board mbeduino mit dem Cortex-M3
http://www.nxp.com/

Fa. Leaflabs
einer Gruppe von MIT-Absolventen und -Studenten
uC Maple-Board mit Cortex-M3
http://leaflabs.com/
http://leaflabs.com/store/#Maple
Kompatibilität von Maple zu Arduino
http://leaflabs.com/docs/arduino-compatibility.html

Fa. DIGILENT Inc.
ARDUINO mit Microchip-Controller "chipKIT Uno32"
chipKIT-Entwicklungsboards chipKIT Uno32 und chipKIT Max32
https://www.digilentinc.com/

Fa. HW Kitchen
GSM-Shield
http://www.hwkitchen.com/arduino/
http://www.hwkitchen.com/products/gsm-playground/


Fa. Xduino
uC Board mit Cortex-M3 in Form eines STM32 bestückt
http://www.xduino.com/

ARDUINO Board's & Shield's & KIT's
http://arduino.cc/en/Main/Hardware


ARDUINO Clones-Liste
http://www.arduino.cc/playground/Main/SimilarBoards#goArdComp

ARDUINO Shield List  (über 150 Shields)
http://shieldlist.org/


GOOGLE-Code-Projekt (englisch)   Basis für die Entwicklung der Arduino-Plattform.
http://code.google.com/p/arduino/

Reference Language | Libraries | Comparison | Changes
Language Reference
Arduino programs can be divided in three main parts: structure, values (variables and constants), and functions.
Ausführliche Zusammenfassung und Hilfe mit der Language Reference
Alle ARDUINO Processing Befehle
http://arduino.cc/en/Reference/HomePage

Arduino und Processing
http://arduino-processing.tumblr.com/


Fabian Kainka Linkliste uC
http://fkainka.de/Arduino/Linkliste.html

z.B.
Komplett auf Deutsch mit unzähligen, strukturierten Themen - Immer eine gute Wahl, wenn es um Mikrocontroller geht
http://www.mikrocontroller.net

Gutes Tutorial mit vielen Erklärungen für Einsteiger
http://www.arduino-tutorial.de/

Interessante Projekte mit ausführlichen Artikeln
http://www.golem.de/specials/arduino/

Projekte und Hilfe
http://www.arduinoforum.de/

Projekte und Code-Beispiele
http://fff2.at/drupal/content/arduino-projekte

mbed
bezeichnet ein ARM-Mikrocontroller-Modul von NXP mit USB-Anschluss
http://mbed.org/

Xduino
ist eine Arduino-kompatible Software-Plattform für ARM Cortex-M3
http://www.xduino.com/

chipKIT-Entwicklungsboards chipKIT Uno32 und chipKIT Max32
http://www.digilentinc.com/

netduino
bezeichnet eine Open-Source-Hardware-Plattform, die das .NET Micro Framework verwendet
http://netduino.com/downloads/


Literaturverzeichnis:

Brühlmann, Th - - Arduino Praxiseinstieg (mitp Professional).
mitp-Verlag, 2010


Kühnel, Claus - - Arduino - Hard- und Software Open Source Plattform
Skript-Verlag Kühnel, 2011
http://www.ckuehnel.ch/arduino_benchmarks.html
Fa. Qiagen Instruments
CH- Hombrechtikon
http://www.qiagen.com/products/




Arduino Tutorials (englisch)
www.element14.com/community/groups/arduino

Arduino Tutorials (englisch)
http://blog.makezine.com/2011/05/12/why-google-choosing-arduino-matters-and-the-end-of-made-for-ipod-tm/


Maple Language Reference
Alle ARDUINO Processing Befehle
http://leaflabs.com/docs/language.html#arduino-c-for-c-hackers





*********************************************************

LINKS zum "Kleiner BASCOM-AVR Kurs"

Die 119 Seiten können von www.schaltungen.at downgeloadet werden
300_d_BASCOM-x_Kleiner Bascom-AVR Kurs mit ATMEL ATtiny13 (Seiten-001)_1a.pdf

1
Für den Einstieg --> Roland Walter:    AVR Mikrocontroller Lehrbuch      http://rowalt.de/mc/avr/avrbuch/index.htm
Als Ergänzung --> Claus Kühnel:   Programmieren der AVR RISC Mikrocontroller mit BASCOM-AVR      http://www.ckuehnel.ch/bcavr_buch2.htm

Mikrocontroller - Wie anfangen?  http://halvar.at/elektronik/mikrocontroller_wie_anfangen/

2

Hier sind die Links zu den ausführlichen Datenblättern der für uns wichtigsten AVR-Mikrocontroller:

ATtiny13: http://www.atmel.com/dyn/resources/prod_documents/doc2535.pdf
ATtiny45: http://www.atmel.com/dyn/resources/prod_documents/doc2586.pdf
ATtiny2313: http://www.atmel.com/dyn/resources/prod_documents/doc2543.pdf
ATmega8: http://www.atmel.com/dyn/resources/prod_documents/doc2486.pdf
ATmega16: http://www.atmel.com/dyn/resources/prod_documents/doc2466.pdf
Man muss diese Dinger nicht von vorne bis hinten durchlesen.
Aber es ist doch recht aufschlussreich, mal die ersten Seiten durchzublättern um sich über die Leistungsfähigkeit der einzelnen Mikrocontroller ein Bild zu machen.
Und zum Abrunden noch Links zu AVR-Vergleichslisten:

3

Spannungsregler 7805       http://www.strippenstrolch.de/1-2-11-der-spannungsregler-78xx.html

Elektronik FAQ Das KFZ-Bordnetz  http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.23


AVR Checkliste      http://www.mikrocontroller.net/articles/AVR_Checkliste#Spannungsversorgung_richtig_angeschlossen.3F

4

Du brauchst das AVR - Mikrocontroller Lehrbuch von Roland Walter und das zugehörige Experimentierboard.

Beides bekommst du bei Segor: http://cgi.segor.de/user-cgi-bin/sidestep2.pl?foto=1&Q=rowalt&M=1

Dann brauchst du noch ein paar Bauteile, Mikrocontroller und einen Programmer (=Gerät um das Programm zum µC zu übertragen).

Absolute Mindestausstattung:

Es wäre nicht schlecht ein paar dieser Dinger auf Vorrat zu haben:

Ideal aber nicht unbedingt notwendig:

5

Motorsteuerung mit PC und ATtiny13  http://halvar.at/elektronik/motorsteuerung_mit_attiny13/
Parallelport-Programmer bauen  STK200 Programmer mit 74HC244    http://halvar.at/elektronik/motorsteuerung_mit_attiny13/#parallelport-programmer-bauen
6


Parallelport-Programmer bauen  STK200 Programmer mit 74HC244   http://www.mikrocontroller.net/articles/STK200
STK200 Programmer  http://halvar.at/elektronik/kleiner_bascom_avr_kurs/stk200_programmer/

Die folgenden Links führen dich zu Seiten, die dir mehr über über ein paar dieser einfachen Programmer erzählen und wie man sich selbst so einen Programmer basteln kann.

10-poliger und 6-poliger ISP-Stecker (ATMEL):

Natürlich liefert Atmel auch eigene, fertige Programmiergeräte (AVRISP mk 1 ( LPT1), AVRISP mk 2 (USB)

avr_isp_pinout.gif

AVR In System Programmer  http://www.mikrocontroller.net/articles/AVR_In_System_Programmer

6-poliger, einreihiger Stecker den Roland Walter verwendet:

rowalt_stecker.gif

http://rowalt.de/mc/avr/avrbuch/AvrBoard.pdf

7

Um eine Empfehlung abgeben zu können, habe ich heute den STK200 Programmer dieser Seite http://www.mikrocontroller.net/articles/STK200 nachgebaut. Ich habe dafür den 74244 als Treiber verwendet.
Im Bascom muss man als Programmer den STK200 einstellen. Auf die anderen Bascom-Einstellungen werde ich in den nächsten Beiträgen eingehen.
Also, für alle mit Parallelport: Ich würde diesen Programmer auf jeden Fall einmal ausprobieren.

8

Programmer mySmartUSB  http://shop.myavr.de/index.php?sp=download.sp.php

Treiber, Programme und Informationen
Die zugehörigen Treiber, Programme und Informationen kann man unter dieser URL herunterladen: http://shop.myavr.de/index.php?sp=download.sp.php
Suche auf der Download-Seite nach diesen Dateien:
USB-Treiber für das myAVR Board 2 USB und mySmartUSB Dieser Treiber erstellt einen virtuellen COM-Port, über den auf den mySmartUSB zugegriffen werden kann.

9

BASCOM-AVR

Bascom ist das Programm mit dem die Programme für den µC geschrieben werden. Die Vollversion kostet 80 Euro und ermöglicht es dir, auch Programme über 4 kByte Größe zu schreiben. Aber für den Anfang genügt die Demo-Version. Damit kann man schon einiges anstellen. Erst recht, wenn man bedenkt, dass der Flash-Speicher eines ATtiny45 auch nur 4 kByte groß ist.

Das Programm Bascom-AVR kann man sich bei MCS-Electronics unter http://mcselec.com/index.php?option=com_content&task=view&id=14&Itemid=41 herunterladen.

10 11 12 13

Und so kann man auch größere Last an den µC anschließen: Relais mit kleinem Strom ansteuern  http://www.strippenstrolch.de/1-6-8-relais-mit-kleinem-strom-ansteuern.html

14 15

[1]"Bit" im Wikipedia: http://de.wikipedia.org/wiki/Bit
[2]"Byte" im Wikipedia: http://de.wikipedia.org/wiki/Byte
[3]"Einfache Genauigkeit" im Wikipedia: http://de.wikipedia.org/wiki/Einfache_Genauigkeit
[4]"Doppelte Genauigkeit" im Wikipedia: http://de.wikipedia.org/wiki/Doppelte_Genauigkeit

Das Binärsystem und die Umrechnung von Binär nach Dezimal und umgekehrt erkläre ich hier nicht.
Das wird sowiso in vielen Computerbüchern erklärt und Wikipedia hat dazu auch noch etwas zu sagen: http://de.wikipedia.org/wiki/Dualsystem
Umrechnung von Zahlensystemen: http://www.arndt-bruenner.de/mathe/scripts/Zahlensysteme.htm
Der Windows-Taschenrechner kann verschiedene Zahlensysteme umwanden. Man muss ihn dafür nur in die wissenschaftliche Darstellung umschaltet.
BASCOM-AVR HELP Characters from the BASCOM character set are put together to form labels, keywords, variables and operators.
http://avrhelp.mcselec.com/index.html?language_fundamentals.htm

16 17 18

Basom Hilfe BASCOM Language Reference  zu GOTO: http://avrhelp.mcselec.com/index.html?goto.htm

Basom Hilfe zu GOSUB: http://avrhelp.mcselec.com/index.html?gosub.htm

Links zur Bascom-Hilfe:

DECLARE SUB:
http://avrhelp.mcselec.com/index.html?declare_sub.htm
DECLARE FUNCTION:
http://avrhelp.mcselec.com/index.html?declare_function.htm
SUB:
http://avrhelp.mcselec.com/index.html?sub.htm
FUNCTION:
http://avrhelp.mcselec.com/index.html?declare_function.htm
CALL:
http://avrhelp.mcselec.com/index.html?call.htm
GOTO:
http://avrhelp.mcselec.com/index.html?goto.htm
GOSUB:
http://avrhelp.mcselec.com/index.html?gosub.htm


19 20

Das sollte man sich zu diesem Thema unbedingt durchlesen:  Das KFZ-Bordnetz   http://www.dse-faq.elektronik-kompendium.de/dse-faq.htm#F.23

21

Für diese Fälle gibt es eine in Bascom eingebaute High-Level-Prozedur: DEBOUNCE

Bascom Hilfe zu DEBOUNCE: http://avrhelp.mcselec.com/index.html?debounce.htm

22 23

Zum mySmartUSB gehört auch das Programm "myAVR ProgTool Version 1.01". Damit kann man die Fuse-Bits einstellen.
Zuerst holt man sich die aktuelle Demo Version die man unter der Adresse http://myavr.de/download.php herunterladen kann.
Suche dort einfach nach "myAVR Workpad PLUS".
Während ich diesen Beitrag schreibe ist dort die "myAVR Workpad PLUS, Demo Version 1.4" aktuell.
Nach dem Herunterladen kann das Programm wie üblich installiert werden.

24

CKOPT

Diese Einstellung wurde im vorherigen Beitrag erklärt.
Damit kann man, je nach CKSEL-Einstellung einen oder zwei eingebaute Kondensatoren für den Oszillator aktivieren.
Für Frequenzen ab 8 MHz muss diese Einstellung gesetzt werden.

Weiterführende Links:

25 26

UART = Universal Asynchronous Receiver Transmitter  http://de.wikipedia.org/wiki/UART

Frequenzen und damit machbare Baudraten     http://halvar.at/elektronik/kleiner_bascom_avr_kurs/uart_rs232_zum_computer/

Leitungen/Anschlüsse

Einfache Verbindungen in beide Richtungen können schon mit drei Leitungen aufgebaut werden.

Braucht man nur Daten in eine Richtung zu schicken, genügen sogar schon zwei Leitungen.

Computer        µC
===================
TX  --------->  RX
RX  <---------  TX
GND ----------  GND

Interessante Seiten zu diesem Thema:


27

Stichworte: RS-232, Nullmodem Nullmodemkabel, gekreuztes Kabel  rs232_max232_atmega8_nullmodem_v04.spl

28

rs232_max232_atmega8_v03.spl

29

$baud

Damit stellt man die gewünschte Übertragungsgeschwindigkeit ein.
Diese ist von der Frequenz abhängig, mit der der µC getaktet wird.
Diese muss Bascom mit $crystal bekannt gegeben werden. Beispiel: $baud = 9600
Bascom Hilfe zu diesem Befehl: http://avrhelp.mcselec.com/index.html?baud_1.htm

Will man die Zahl 1 ohne Umwandlung in ein Zeichen übermitteln, dann nimmt man dafür den Befehl PRINTBIN.

Bascom Hilfe zu diesem Befehl: http://avrhelp.mcselec.com/index.html?print.htm

So können reine Daten, ohne umwandeln, übermittelt werden.
Diese lassen sich aber dafür nicht mehr in einem normalen Terminalprogramm anzeigen.
Dafür bräuchte man einen Anzeigemodus der die empfangenen Daten in Hex oder Dezimal anzeigt.
Bascom Hilfe zu diesem Befehl: http://avrhelp.mcselec.com/index.html?printbin.htm

Mit CONFIG INPUT kann man einstellen, welches unsichtbare Zeichen oder welche unsichtbare Zeichenfolge einen Empfang abschließt.

Und mit ECHO OFF kann man einstellen, dass in ein Terminal eingegebene Zeichen nicht sofort wieder zurück geschickt werden.

Bascom Hilfe zu diesem Befehl: http://avrhelp.mcselec.com/index.html?input.htm

Bascom Hilfe zu diesem Befehl INPUTBIN  http://avrhelp.mcselec.com/index.html?inputbin.htm

Bascom Hilfe zu diesem Befehl WAITKEY: http://avrhelp.mcselec.com/index.html?waitkey.htm

Bascom Hilfe zu diesem Befehl INKEY: http://avrhelp.mcselec.com/index.html?inkey.htm

Bascom Hilfe zu diesem Befehl ISCHARWAITTING: http://avrhelp.mcselec.com/index.html?ischarwaiting.htm

Bascom Hilfe zu diesem Befehl ECHO: http://avrhelp.mcselec.com/index.html?echo.htm

30

Bascom Hilfe zu diesem Befehl CONFIG SERIALIN: http://avrhelp.mcselec.com/index.html?config_serialin.htm

Bascom Hilfe zu diesem Befehl CONFIG SERIALOUT: http://avrhelp.mcselec.com/index.html?config_serialout.htm

31 32 33
Und was den zweiten Puntk betrifft, kann ich dir keine Erklärung dazu bieten. Man kann die Textlänge beim Deklarieren nicht einstellen. Macht man es, dann bekommt man einen Fehler beim Kompilieren des Programms. Mehr weiß ich auch nicht darüber.

Hilfe findest du unter:

Die Bascom-Hilfe zu diesem Befehl FOR-NEXT: http://avrhelp.mcselec.com/index.html?for_next.htm

34

Das Datenblatt dieses 3x4-Tastenfeldes kann man sich bei Conrad herunterladen

http://www.produktinfo.conrad.com/datenblaetter/700000-724999/709840-da-01-en-TASTATUR_MATRIX_3X4.pdf

Bascom Hilfe zu diesem Befehl CONFIG KBD: http://avrhelp.mcselec.com/index.html?config_kbd.htm

Bascom Hilfe zu diesem Befehl GETKBD: http://avrhelp.mcselec.com/index.html?getkbd.htm

MID beginnt mit der Zählung bei 1 und nicht bei 0. Deshalb muss man die Rückgabe des Befehls GETKBD zuerst um 1 erhöhen.

Bascom Hilfe zu diesem Befehl MID: http://avrhelp.mcselec.com/index.html?mid.htm

CHR gibt ein Zeichen zurück wenn man es mit ASCII-Code füttert. 34 ist der ASCII-Code für das doppelte Anführungszeichen (").

Bascom Hilfe zu diesem BefehlCHR: http://avrhelp.mcselec.com/index.html?chr.htm

35

LCD - Liquid Crystal Display

"Powertip PC 1602-F"
LCD (PC 1602-F von Pollin) an ATmega8
Ziemlich gute Informationen bekommt man unter http://www.sprut.de/electronic/lcd/index.htm.
Also wenn dein Display nicht so funktioniert wie es funktionieren sollte, dann lohnt es sich, dort mal vorbei zu schauen und sich geballtes Wissen über die LCDs rein zu ziehen.
Und zum Erstellen der evt. benötigten negativen Spannung, hat sprut.de auch etwas zu sagen: http://www.sprut.de/electronic/switch/minus.html

36

Kann man mit Bascom auch 2 LCDs ansteuern?

Die Zusatzbibliothek lcd4e2.lib kann zwei LCD-Controller durch Umschalten zwischen zwei E-Leitungen ansprechen. Diese Bibliothek ist eigentlich dafür gedacht, große LCDs anzusprechen welche mehr als 80 Zeichen darstellen können. Aber ich denke, dass man damit auch schlicht ein zweites Display ansprechen kann. Ausprobiert habe ich es nicht.

Siehe: Roboternetz - LCDs mit mehr als 80 Zeichen

Vielleicht interessanter Link: http://www.roboternetz.de/phpBB2/viewtopic.php?p=471872#471872

37

Die Hilfe zu CONFIG ADC findest du hier: http://avrhelp.mcselec.com/index.html?config_adc.htm

Die Hilfe zu START ADC findest du hier: http://avrhelp.mcselec.com/index.html?start.htm
Die Hilfe zu GETADC findest du hier: http://avrhelp.mcselec.com/index.html?getadc.htm

ATmega8 für Analogmessungen

Weiters sollte man darauf achten, dass während einer Messung kein Pin des Analogteiles umgeschaltet wird. Jede Zustandsänderung an einem der Analog-Pins kann das Ergebnis verfälschen. Das ist auch der Grund dafür, dass ich die Analog-Pins nur dann für digitale Operationen verwende, wenn ansonsten keine anderen Pins mehr zur Verfügung stehen.

Die Pins PC4 (ADC4/SDA) und PC5 (ADC5/SCL) sind Sonderfälle. Da diese Pins auch für I²C-Verbindungen zuständig sind, werden diese Pins nicht von AVCC sondern von VCC versorgt. Diese beiden Pins werden also mit der Stromversorgung für den digitalen Bereich des Mikrocontrollers versorgt. Und nicht wie die restlichen ADC-Pins mit AVCC. Dadurch sind Messungen an diesen Pins nie so genau, wie an den anderen ADC-Pins. Das sollte man beim Zeichnen eines Schaltplanes beachten.

Kenndaten des ADC

  • Referenzspannung mindestens: 2 Volt
  • Widerstand des Referenzspannungs-Pins (AREF): 32 kOhm
  • Widerstand am zu messenden Pin (ADC): min 55 MOhm, typisch 100 MOhm

Die genauen Daten findest du im Datenblatt im Kapitel "ADC Characteristics".

Links

38

Die Hilfe zu START AC findest du hier: http://avrhelp.mcselec.com/index.html?start.htm
Die Hilfe zu STOP AC findest du hier: http://avrhelp.mcselec.com/index.html?stop.htm

Die Hilfe zu diesem Befehl findest du hier: http://avrhelp.mcselec.com/index.html?config_aci.htm

39 40 41 42
Wer einen kleinen µC braucht, aber zu wenig SRAM hat, der sollte bei den ATtiny-Controllern auf den ATtiny45 setzen. Der ATtiny45 hat 256 Byte SRAM.

Je kleiner der SRAM, desto mehr muss man bei der Vergabe der Speicherbereiche aufpassen. Ab dem ATmega8 ist das nicht mehr so ein großes Problem, da man mehr Speicher zur Verfügung hat.

Lesestoff:


Die zugehörigen Original-Beiträge findest du diesmal im Bascom-Forum: *********************************************************









DIN A4  ausdrucken
*********************************************************
Impressum: Fritz Prenninger, Haidestr. 11A, A-4600 Wels, Ober-Österreich, mailto:schaltungen@schaltungen.at
ENDE
Comments