Anzeige

nRF24L01 + Wireless Transceiver auf dem mini2440!

Über die Festtage Will und ich portiert Neil MacMillan nRF24L01 Treiber für den Atmel AT90, die mini2440. Neil hat eine ausgezeichnete Beschreibung des Radios und sein Fahrer auf seiner Website . Die genaue Abfolge der Ereignisse sind verschwommen, aber sie ging ungefähr so:

1) Konfigurieren SPI und ermöglichen eine Pullup für die IRQ-Pin in der mini2440 Kernel.

2) Ändern Sie die spidev Modul, um die IRQ mit dem Setzen Userspace I / O-System .

3) schreiben neue SPI-Funktionen zur Schnittstelle zwischen dem Radio und Neil Fahrer.

4) Schreiben Sie eine Gewinde-Interrupt-Handler, mit dem IRQ aus dem Radio befassen.

6) Anschluss des Fahrers zu einem ATmega16 Development Board und konfigurieren Sie diese als Empfänger für die Prüfung.

5) Schreiben Sie eine User-Space-Programm, um das Radio als Sender konfigurieren und senden Sie eine Testnachricht an den ATmega16 dev board.

Wir benutzten die folgenden Entwicklungsumgebung:

.. Und hier sind die Module auf der dev-Boards:

Der Code für all dies (alpha am besten) ist hier erhältlich:

https://github.com/dougszumski/nRF24L01

Der nächste Schritt ist, um die Geschwindigkeit des Fahrers zu verbessern. Wir gehen derzeit davon eine maximale Bandbreite von ~ 10B / s mit jiffies auf 1000, die einen Bruchteil des wahren Potenzials. Eine der Ideen so weit ist, die SPI-Routinen zu bewegen, damit der Chip umschalten und die Interrupt-Behandlung wieder in den Kernel, und dann Interface mit so etwas wie eine Netlink-Socket. Wenn jemand irgendwelche hilfreichen Ratschläge würden wir uns freuen, von Ihnen zu hören.

Weitere Details werden auf unserer nächsten Seite, die TBA gebucht werden.

Tags: Kategorien: mini2440 Tags:

Aufbauend Angstrom für die mini2440 mit Fedora 15

2 comments 28. November 2011 2 Kommentare

Hier ein kurzes Update für alle kämpfen mit dem Bau Angstrom für die mini2440 auf Fedora 15 (wahrscheinlich auch relevant für die F14).

Wenn Sie sind BusError der ursprünglichen Repo folgen Sie dann den OE Anweisungen , wie normal, dann können Sie diese Anleitung , wenn Sie möchten. Wie bereits erwähnt werden Sie ein Downgrade Patch benötigen. Ich hatte auch ein Downgrade machen durch einige Inkompatibilitäten.

--releasever = 12 yum Downgrade Patch - releasever = 12

--releasever = 13 yum downgrade machen - releasever = 13

Anfangs hatte ich einige Fehler über die GPG-Schlüssel, damit ich sie heruntergeladen F13 und F12 von hier . Sie können sie wie folgt installieren, zum Beispiel:

rpm - import E8E40FDE.txt

Dann, du bist gut zu backen.

Wenn Sie etwas bleeding edge Sie brauchen, um sich die Hände schmutzig werden wollen, hat OE viel kürzlich geändert!

Tags: Kategorien: Allgemein Tags:

CAT3626 RGB-LED-Treiber + Qt Embedded 4.6 auf der Mini2440

10 comments 29. März 2010 10 Kommentare

Der CAT3626 ist ein nettes kleines I2C-Gerät von ON Semiconductor. Es kommt in einem 14-poligen QFN-Paket, das ist wohl das Schwierigste, was ich je gelötet habe! Jedes Pad wird von seinem Nachbarn um etwa 100 Mikrometer voneinander getrennt! Um die Sache noch schwieriger es gibt eine Isomatte in der Mitte für die Versenkung Wärme. Eigentlich sollte man sich eine Art Breakout-Board-oder Reflow es aber das wäre langweilig! Hier ist ein Bild des Geräts vor dem Löten:

... Und hier ist das fertige Produkt! Die LED ist 10mm diffuse mit einer gemeinsamen Anode und einer maximalen Nennstrom von 20mA pro Kanal. Sobald ich die Adern an den CAT3626 gelötet Ich klebte ihn auf das Brett mit Epoxy-, Gewinde die Drähte durch die Löcher und dann verklebt die sich mit mehr Epoxy. Danach wurde mir klar, ich hatte vergessen, wo Pin 1 gegangen, damit ich den Kleber von der Spitze des Chips kratzen hatte!

Der Draht kommt durch das Loch in der Mitte des Bildes ist es, die CAT3626 gelötet und wirkt wie ein rohes Kühlkörper. In der Praxis scheint es gut genug, obwohl ich wahrscheinlich Kupfer benutzt haben zu arbeiten. Ich zog den Keramiken aus einem alten Projektor i herumliegen hatte. Nicht die sauberste Arbeit, aber es funktioniert gut!

Nachdem ich gebaut, dass ich es schnell mit I2C-Tools und schrieb dann einen Kernel-Treiber getestet. Der CAT3626 erlaubt maximal 32mA pro Kanal in Schritten von 0,5 mA geregelt. Leider, weil meine LED kann maximal 20mA pro Kanal i nur erzeugen können ~ 64.000 Farben. Zu allem Überfluss wird die Lichtintensität im allgemeinen nicht eine lineare Funktion der Eingangsstrom so die erreichbare fade Sequenzen nicht so schön wie jene mit PWM gemacht, aber sie schauen noch recht gut. Hier ist ein Video!


YouTube DirektCAT3626 RGB-LED-Treiber

Tags: , Kategorien: Allgemein Tags: ,

Chameleon 135 für die Mini2440

Dank www.andahammer.com sowohl Will und ich haben jetzt die Chameleon 135 Gehäuse für den Mini2440. Ich habe auf einem Li-Ion-Ladegerät gearbeitet und wenn wir das fertige sollten wir für einige Feldversuche bereit. Es dauert eine Weile, bis die Löcher an der richtigen Stelle gebohrt zu bekommen, aber sobald es zusammen der Fall ist äußerst robust verschraubt. Es gibt viel Platz im Inneren für zusätzliche Verkabelung :)

Sie können die Chameleon aus bekommen www.andahammer.com .

Tags: Kategorien: Allgemein Tags:

Bluetooth GPS auf dem mini2440 mit RaPS

3 comments 18. Februar 2010 3 Kommentare

Für eine lange Zeit Ich habe einen SiRF 3 Bluetooth-GPS, das ich nur auf die mini2440 mit einem lächerlich billig USB Bluetooth Adapter von angeschlossen haben DealExtreme . Inklusive Versand kostet 1,38 £ ausgeliefert! Hier ist was Sie für Ihr Geld bekommen:

Der Chip ist ein Conwise CW6626. Egal, was am wichtigsten ist, dass, wenn Sie Bluetooth konfiguriert haben es klappt of the box!

Verbinden mit dem GPS ist einfach. Überprüfen Sie zuerst die Schnittstelle:

hciconfig-a

Wenn sie sagt sich bringen es zusammen:

hciconfig hci0 up

Nach dem Ausführen der oben habe ich die folgenden:

root @ mini2440: ~ # hciconfig-a
hci0: Type: USB
: 15 :A3: 10 ACL MTU: 672 : 3 SCO MTU: 128 : 2 BD Address: 00: 15: 83: 15: A3: 10 ACL MTU: 672: 3 SCO MTU: 128: 2
UP RUNNING
sco: 0 events: 11 errors: 0 RX bytes: 348 acl: 0 sco: 0 events: 11 errors: 0
sco: 0 commands: 11 errors: 0 TX bytes: 38 acl: 0 sco: 0 commands: 11 errors: 0
Features: 0xff 0x3E 0x85 0x30 0x18 0x18 0x00 0x00
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link-Politik:
Link-Modus: SLAVE ACCEPT
Name:''
Class: 0x000208
Service-Klassen: Keine Angabe
Device Class: Telefon, Schnurlos
0x3 ) HCI Rev: 0xc5c LMP Ver: 2.0 ( 0x3 ) LMP Subver: 0xc5c HCI Version: 2.0 (0x3) HCI Rev: 0xc5c LMP Version: 2.0 (0x3) LMP Subversion: 0xc5c
) Hersteller: Cambridge Silicon Radio (10)

Nun drehen Sie Ihren GPS auf und machen Sie einen Scan:

root @ mini2440: ~ # hcitool scan
Scannen ...
00.00 D: B5: 32: 2C: 02 BT-GPS- 322C02

Jetzt in / etc / bluetooth / rfcomm.conf füllen sich mit den Einzelheiten. Hier ist meine:

#
# RFCOMM Konfigurationsdatei.
#
rfcomm0 {
# Automatisch binden das Gerät beim Start
; bind yes;

# Bluetooth-Adresse des Geräts
Gerät 0.00 D: B5: 32: 2C: 02;

# RFCOMM-Kanal für den Anschluss
Kanal 1;

# Beschreibung der Verbindung
Kommentar "BT-GPS-322C02";
}

Nächstes binden Sie das Gerät:

rfcomm binden rfcomm0

Und überprüfen Sie das Gerät Ausgabe mit:

dev / rfcomm0 cat / dev / rfcomm0

Next i bitbaked gpsd, indem Sie einfach:

bitbake gpsd

In meinem OE-Installation (siehe die verschiedenen Beiträge über das Einrichten dieser Funktion).

Sobald diese baut man installieren Sie die entsprechende IPKS. Aus dem Gedächtnis Ich glaube, ich installiert die folgenden:

gpsd_2.39-r0.5_armv4t.ipk

gpsd-static_2.39-r0.5_armv4t.ipk

gpsd-gpsctl_2.39-r0.5_armv4t.ipk

gps-utils_2.39-r0.5_armv4t.ipk

libgps18_2.39-r0.5_armv4t.ipk

Dieser zog in eine ganze Ladung von anderen Paketen. Als nächstes können Sie beginnen gpsd durch Eingabe von:

rfcomm0 gpsd / dev / rfcomm0

Und überwachen die Ausgabe mit:

gpsmon

Wenn alles gut gegangen ist, sollten Sie sich eine Textausgabe des analysierten NMEA Daten:

Jedenfalls .. das ist nur die Spitze des iceburg. Wenn Sie erfahren möchten mehr einen Blick auf den gpsd Website und die Bluetooth-Seite i diesem Beitrag basiert haben.

Tags: , , , , Kategorien: Bluetooth , GPS , mini2440 Tags: , , , ,

Qt Embedded 4.6.0 + + Qwt kxps5 Beschleunigungsmesser!

28 comments 14. Februar 2010 28 Kommentare

Nach der Prüfung des Betriebs der kxps5 Beschleunigungssensor mit I2C-tools schrieb ich einen Test-Anwendung mit dem i2c-dev Schnittstelle. Wenn Sie den Code zu testen, bevor Sie einen Kernel-Treiber schreiben wollen dies ist definitiv ein guter Ort, um zu starten. Einmal hatte ich die Konfigurations-Register richtig und setzen hatte ich eine Routine zum Auslesen der Beschleunigung Vektoren Ich zog den Knopf A DS1621-Kernel-Treiber auf ein Minimum, und dann baute es wieder aufwärts mit dem kxps5 Arbeit. Ich habe dann bitbaked die kxps5 Treiber als Kernel-Modul, zusammen mit hwmon und es funktioniert perfekt! :) Next i Kreuz qwt 5.2.0 zusammengestellt und geplottet die Beschleunigung als Funktion der Zeit. Das Video unten ist mit Antialiasing Linien, die sich die Refresh-Rate verlangsamt, sondern macht sie schön aussehen übernommen. Wenn Sie es Plot, ohne dass dies ermöglichte es läuft sehr reibungslos. Hier sehen Sie die kxps5 läuft ohne externe Tiefpass-Filter (der interne Filter ist 1 kHz) und trotz dieser Ausgang ist ziemlich stabil. Was mich am meisten beeindruckt ist die Empfindlichkeit. Wenn auf einem Schreibtisch den freien Fall zu unterbrechen leuchtet platziert auf, wenn Sie eines der kleinen Nüsse Drop aus dem friendlyarm LCD ca. 10cm vom Gerät weg!


YouTube Direkthttp: / / www.youtube.com/watch?v=j5FQmKPqhwg

Bitbaking den Kernel, Angstrom und qt4-embedded alle auf einmal

101 comments 18. November 2009 101 Kommentare

Dies ist, was sollte ich tun, um mit zu beginnen haben! Die Anweisungen sind sehr ähnlich zu früheren, außer wir diesmal Klon das Recht git-Repository!

Auf eine neue Kopie von Fedora 11 habe ich dann das System und installiert die Pakete von OE empfohlen:

yum install python m4 make wget curl ftp cvs subversion tar bzip2 gzip unzip su-c "yum install python m4 machen wget curl ftp cvs subversion tar bzip2 gzip entpacken
python-psyco perl texinfo texi2html diffstat openjade docbook-style-dsssl
docbook-style-xsl docbook-DTDs docbook-utils sed Bison bc glibc-devel glibc-static
quilt groff linuxdoc-tools patch linuxdoc-tools gcc binutils pcre pcre-devel git Quilt groff linuxdoc-Tools Patch linuxdoc-tools
gcc-c + + help2man perl-ExtUtils-MakeMaker "

Ich machte dann einen Ordner namens OE in meinem Home-Verzeichnis und geklont die mini2440 Repo-git:

cd ~

mkdir OE

cd OE

repo.or.cz / openembedded / mini2440.git openembedded git clone git: / / repo.or.cz / openembedded / mini2440.git openembedded

Ich habe dann Setup der Quelle-me.txt ähnlich vor:

gedit source-me.txt

Ich habe folgendes:

= "/home/doug/OE" Export OETREE = "/ home / doug / OE"

/ : ${OETREE} / openembedded / BBPATH = $ {OETREE} / $ {OETREE} / openembedded /

for Ångström echo Einrichten dev für Ångström env

-z ${ORG_PATH} ] ; then if [-z $ {ORG_PATH}], dann
ORG_PATH = $ {PATH}
Export ORG_PATH
fi

-z ${ORG_LD_LIBRARY_PATH} ] ; then if [-z $ {ORG_LD_LIBRARY_PATH}], dann
ORG_LD_LIBRARY_PATH = $ {LD_LIBRARY_PATH}
Export ORG_LD_LIBRARY_PATH
fi

/ openembedded / bitbake / bin: ${ORG_PATH} PATH = $ {OETREE} / openembedded / bitbake / bin: $ {} ORG_PATH

LD_LIBRARY_PATH =
export PATH LD_LIBRARY_PATH BBPATH
=C export LANG = C
= "MACHINE DISTRO OETREE ANGSTROM_MODE ANGSTROMLIBC LIBC" Export BB_ENV_EXTRAWHITE = "MASCHINE DISTRO OETREE ANGSTROM_MODE ANGSTROMLIBC LIBC"

'sysctl vm.mmap_min_addr=0' su-c 'sysctl vm.mmap_min_addr = 0'

echo "Altered Umfeld für OE-Entwicklung"

Alles was Sie jetzt tun müssen, ist die Einrichtung local.conf. Bearbeiten Sie einfach das Beispiel und kopieren Sie sie an der richtigen Stelle:

cd openembedded
gedit mini2440_local_conf_example.conf

Lesen Sie diese Datei und bearbeiten als angemessen. Ich habe mir angebracht als ein Beispiel. Jetzt kopieren Sie ihn in der conf / local.conf

local.conf cp mini2440_local_conf_example.conf conf / local.conf

Wenn Sie möchten, qt4-embedded oder andere Paket in den Aufbau einfach bearbeiten das Rezept enthalten in:

images / mini2440-image.bb openembedded / Rezepte / images / mini2440-image.bb

Ich fügte hinzu, qt4-embedded:

# Angstrom bootstrap Bild

IMAGE_PREPROCESS_COMMAND = "create_etc_timestamp"

ANGSTROM_EXTRA_INSTALL? = ""

Depends = "task-base-erweitert
psplash-zap
esekeyd u-boot-utils tslib
i2c-tools i2c Bildschirm rsync nfs-utils
directfb gdbserver directfb mtd-utils
"

IMAGE_INSTALL = "task-base-erweitert
$ {} ANGSTROM_EXTRA_INSTALL
psplash-zap qt4-embedded
esekeyd u-boot-utils tslib kalibrieren tslib-Tests
i2c-tools i2c Bildschirm rsync nfs-utils-Client
directfb gdbserver directfb mtd-utils
rsvg pango
"

Export IMAGE_BASENAME = "mini2440-image"
IMAGE_LINGUAS = ""

erben Bild

Dann alles, was Sie tun müssen, ist Quelle das Skript aus, wo immer Sie es ausdrückte:

Quelle Quelle-me.txt

und führen bitbake:

bitbake mini2440-image

aus der Datei ~ / OE / openembedded / Verzeichnis ..

Wenn Sie einen Fehler versucht, ein Paket zu bauen versuchen Sie es reinigen:

bitbake-c clean INSERTPACKAGENAME

Dann versuchen und bauen Sie das Bild erneut. Vielleicht werden Sie dieses Problem nicht haben. Ich denke, es ist entweder, weil die Prüfsumme Parser nicht zu bauen oder meine hdd ist fragwürdig. Es passiert nur einmal auf binutils sondern arbeitete nach der Reinigung gut.

Ein paar Stunden später, wenn alles gut geht, sollten Sie Bilder in haben:

oetmp / deploy / glibc / images / mini2440 / ~ / OE / oetmp / deploy / glibc / images / mini2440 /

Offensichtlich dieses Verzeichnis davon abhängt, was man in der local.conf Setup.

Viel Glück!

Konfigurieren Open Embedded zu backen Angstrom Bilder für die mini2440

14 comments 5. November 2009 14 Kommentare

Bitte beachten Sie: Ich bemerkte ein paar Leute hatten Probleme mit der Angstrom bauen mit Dougs Artikel , so dass ich dachte, ich würde die genaue Methode, die ich verwendet (was schien zu funktionieren!) post so andere können meine Schritte mit zurückzuverfolgen verwirrende jemand bearbeite vorherigen Artikel! Wenn Sie bereits erfolgreich eine Angstrom image gebacken haben, bitte ignorieren this post!

Zunächst einmal möchte ich darauf hinweisen, dass dieser Artikel im Wesentlichen ein Zusammenschluss der Open Embedded Wiki (Getting Started) und Angstrom ist 'Building Angstrom " Artikel, sondern im Kontext zur mini2440 Embedded PC. Wenn Sie eine detailliertere und wahrscheinlich besser schriftliche Erklärung möchten finden Sie in diesen beiden Artikeln.

Vergewissern Sie sich, die Pakete für Open Embedded (OE), indem Sie brauchte hier und suchen unter der Rubrik bezüglich Ihrer Distribution. Fedora 11 I tat:

"yum install python m4 make wget curl ftp cvs subversion tar bzip2 gzip unzip su-c "yum install python m4 machen wget curl ftp cvs subversion tar bzip2 gzip entpacken
python-psyco perl texinfo texi2html diffstat openjade docbook-style-dsssl
docbook-style-xsl docbook-DTDs docbook-utils sed Bison bc glibc-devel glibc-static
gcc binutils pcre pcre-devel git Quilt groff linuxdoc-Tools Patch linuxdoc-tools
gcc-c + + help2man perl-ExtUtils-MakeMaker "

Getting down to business ...

Öffnen Sie ein Terminal. Geben Sie diese Befehle:

su -
/ stuff2 / build / conf mkdir-p / stuff2 / build / conf
-Rf / stuff2 / chmod 777-Rf / stuff2 /
Ausfahrt
stuff2 / cd / stuff2 /

Download der aktuellen bitbake von hier und extrahieren Sie die bitbake Verzeichnis in das Archiv (zB bitbake-1.8.16) nach / stuff2 /

Noch ein paar Befehle ein:

bitbake mv bitbake-1.8.16 / bitbake
git.openembedded.org / openembedded git clone git: / / git.openembedded.org / openembedded
conf / local.conf.sample build / conf / local.conf cp openembedded / conf / local.conf.sample build / conf / local.conf

Bearbeiten Sie die config die Sie gerade kopiert haben mit Ihrem bevorzugten Text-Editor.

local.conf gedit build / conf / local.conf

Es ist wichtig, dass Sie die Konfiguration sorgfältig zu lesen, damit Sie verstehen, was alles tut ...

Nächstes bearbeiten, um in etwa so aussehen (das ist nur eine leicht modifizierte Version des openembedded / contrib / Angström / local.conf):

Hinweis: Nicht Copy & Paste aus diesem Artikel aufgrund der Formatierung Probleme. Sie können einen vorgefertigten local.conf Download hier. Nur um / stuff2/build/conf / extract ...

MACHINE = "mini2440"

# Wo die Quellen
DL_DIR = "/ stuff2/downloads"

INHERIT + = "rm_work"

# Achten Sie darauf, diese installiert
ASSUME_PROVIDED + = "gdk-pixbuf-csource-native imagemagick-native librsvg-native"

# Welche Dateien wollen wir zu analysieren:
BBFILES: = "/ stuff2/openembedded/recipes /*/*. bb"
BBMASK = ""

# Welche Bilder wollen wir?
IMAGE_FSTYPES + = "tar.bz2"

# Set TMPDIR statt säumigen auf $ pwd / tmp
TMPDIR = "/ stuff2 / $ {} DISTRO-dev"

# Nutzen Sie SMP und schnellen Festplatten
PARALLEL_MAKE = "-j2"
BB_NUMBER_THREADS = "2"

# Pulverfass
# INHERIT + = "oestats-client"
OESTATS_BUILDER = "myname"

DISTRO = "Angström-2008,1"

Speichern und schließen Sie den Editor. Laden Sie das Skript , und verschieben Sie das Verzeichnis / stuff2 /.

Check it ist ok:

source-me.txt gedit / stuff2 / source-me.txt

Es sollte so aussehen:

= "/stuff2" Export OETREE = "/ stuff2"
= / stuff2 / bitbake / bin: $PATH export PATH = / stuff2 / bitbake / bin: $ PATH
/ : ${OETREE} / build / : ${OETREE} / openembedded / BBPATH = $ {OETREE} / $ {} OETREE / build / $ {OETREE} / openembedded /
/ build / PKGDIR = $ {} OETREE / build /
/ downloads DL_DIR = $ {} OETREE / downloads
for Ångström echo Einrichten dev für Ångström env

-z ${ORG_PATH} ] ; then if [-z $ {ORG_PATH}], dann
ORG_PATH = $ {PATH}
Export ORG_PATH
fi

-z ${ORG_LD_LIBRARY_PATH} ] ; then if [-z $ {ORG_LD_LIBRARY_PATH}], dann
ORG_LD_LIBRARY_PATH = $ {LD_LIBRARY_PATH}
Export ORG_LD_LIBRARY_PATH
fi

/ openembedded / bitbake / bin: ${ORG_PATH} PATH = $ {OETREE} / openembedded / bitbake / bin: $ {} ORG_PATH

cd $ PKGDIR

LD_LIBRARY_PATH =
export PATH LD_LIBRARY_PATH BBPATH
=C export LANG = C
= "MACHINE DISTRO OETREE ANGSTROM_MODE ANGSTROMLIBC LIBC" Export BB_ENV_EXTRAWHITE = "MASCHINE DISTRO OETREE ANGSTROM_MODE ANGSTROMLIBC LIBC"

echo "Altered Umfeld für OE-Entwicklung"

zu speichern, und starten Sie das Skript:

stuff2 / cd / stuff2 /
Quelle Quelle-me.txt
openembedded cd .. / openembedded

ein letztes Update:

git pull

Ausgabe ein paar Befehle zu bauen Probleme zu beheben:

su
sysctl vm.mmap_min_addr = 0
Fixes an SELINUX problem during building ) setenforce 0 (Behebt ein Problem beim Bau SELINUX)
Ausfahrt

Thema Build-Befehle:

bitbake Basis-Image; bitbake Konsole-image; bitbake x11-image

Seien Sie bereit, Ihre Internet-Verbindung zu sättigen, lange warten und nehmen viel Speicherplatz!
Das Ergebnis landet in:

deploy / glibc / images / mini2440 stuff2 / Angström-dev / deploy / glibc / images / mini2440

Sie sollten das Bild (er) in. Jffs2 haben zu blinken, und. Tar.gz für die Montage mit Hilfe von NFS.

Neue Hardware!

4 comments 2. November 2009 4 Kommentare

Nach dem Bruch der z-Achse-Anschluss an meinem ersten Gerät Ich bestellte einen neuen KXPS5 Beschleunigungsmesser aus crodnet auf ebay. Ich empfehle dieses Verkäufers, er ist sehr billig und sendet die Dinge schnell.

Ich klopfte schnell zusammen einen Stromkreis auf veroboard und hakte die Basis eines Transistors, um den freien Fall / motion Interrupt-Pin zu prüfen, es funktioniert. Es ist bemerkenswert empfindlich, die LED-Flicks auf, wenn i drop meine Feder an einem Ende in meinem Schreibtisch, wenn das Gerät am anderen! Ich war ziemlich froh, dass alles gut funktioniert, damit ich es angeschlossen an den I2C-Bus mit dem Kabel-Kit mit freundlicher Unterstützung von www.andahammer.com geliefert. Mit I2C-Tools konnte ich Registern gesetzt und gelesen Beschleunigung Vektoren ohne Probleme und ich bin mir ziemlich sicher, dass alles gut funktioniert. Ich war ein wenig über die über die Bus-Kapazität auf den ersten Sorgen.

DSC_0069

DSC_0068

Es stellt sich heraus, dass ich immer noch den alten Gerät, wenn ich auf der internen Tiefpassfilter verlassen. Ich war, dies zu tun sowieso und mit einem Kalman-Filter, um die Ausgabe Prozessdenken. Zunächst muss ich einen Gerätetreiber zu schreiben, damit ich schnell bin versucht zu lernen, um C. Bisher habe ich eine sehr grundlegende Kernel-Modul und läuft auf dem mini2440 :)

Aufbauend Angstrom

27 comments 1. November 2009 27 Kommentare

Ich habe Sinn, diese für eine Weile setzen. Providing nichts schief geht der ganze Prozess ist eigentlich ganz einfach! Dies ist im Grunde eine Neuauflage der Angstrom Webseite , damit Sie es vorziehen könnte zu folgen, dass Notizen des geringen Abweichungen unter:

= "/home/doug/OE" Export OETREE = "/ home / doug / OE"
${OETREE} mkdir-p $ {} OETREE

cd $ {} OETREE
git.openembedded.org / openembedded.git openembedded git clone git: / / git.openembedded.org / openembedded.git openembedded
cd openembedded
stable / 2009 -b stable / 2009 git checkout origin / stable / 2009-b stabil / 2009

Um die OE-Metadaten aktualisieren Sie einfach:

/ openembedded cd $ {OETREE} / openembedded
git pull

Jetzt machen Sie die entsprechenden Skript-Source-me.txt wechselnden OETREE an Ihre Bedürfnisse anpassen:

= "/home/doug/OE" Export OETREE = "/ home / doug / OE"

/ : ${OETREE} / build / : ${OETREE} / openembedded / BBPATH = $ {OETREE} / $ {} OETREE / build / $ {OETREE} / openembedded /
/ build / PKGDIR = $ {} OETREE / build /
/ downloads DL_DIR = $ {} OETREE / downloads
for Ångström echo Einrichten dev für Ångström env

-z ${ORG_PATH} ] ; then if [-z $ {ORG_PATH}], dann
ORG_PATH = $ {PATH}
Export ORG_PATH
fi

-z ${ORG_LD_LIBRARY_PATH} ] ; then if [-z $ {ORG_LD_LIBRARY_PATH}], dann
ORG_LD_LIBRARY_PATH = $ {LD_LIBRARY_PATH}
Export ORG_LD_LIBRARY_PATH
fi

/ openembedded / bitbake / bin: ${ORG_PATH} PATH = $ {OETREE} / openembedded / bitbake / bin: $ {} ORG_PATH

cd $ PKGDIR

LD_LIBRARY_PATH =
export PATH LD_LIBRARY_PATH BBPATH
=C export LANG = C
= "MACHINE DISTRO OETREE ANGSTROM_MODE ANGSTROMLIBC LIBC" Export BB_ENV_EXTRAWHITE = "MASCHINE DISTRO OETREE ANGSTROM_MODE ANGSTROMLIBC LIBC"

echo "Altered Umfeld für OE-Entwicklung"

Ich hatte auch die Einstellung von:

sudo sysctl vm.mmap_min_addr = 0

Dann Setup local.conf:

${OETREE} / build / conf mkdir-p $ {} OETREE / build / conf
/ openembedded / contrib / angstrom / local.conf ${OETREE} / build / conf / cp $ {OETREE} / openembedded / contrib / Angström / local.conf $ {} OETREE / build / conf /

Bearbeiten Sie jetzt $ {} OETREE / build / conf / local.conf und stell 'das bis zum Ende:

MACHINE = "mini2440"

Laden Sie nun die mini2440 config-Datei aus openembedded. Setzen Sie diese in:

openembedded / conf / machine / $ {OETREE} / openembedded / conf / Maschine /

Jetzt Quelle der Quelle-me.txt, die OE-Baum gehen, überprüfen Sie es auf dem neuesten Stand

Quelle Quelle-me.txt

/ openembedded cd $ {OETREE} / openembedded

git pull --rebase

Jetzt bauen die Bilder können Sie bauen alle von ihnen oder auch nur eine. Früher habe ich das Basis-Image für die Ausführung von Qt aber i baute auch die gpe Bild, das schön war, wenn Sie es brauchen.

bitbake Basis-Image; bitbake Konsole-image; bitbake x11-Bild; bitbake gpe-image

Seien Sie bereit, Ihre Internet-Verbindung zu sättigen, lange warten und nehmen viel Speicherplatz!

Das Ergebnis landet in:

angstrom-dev / deploy / glibc / images / mini2440 $ {OETREE} / Angström-dev / deploy / glibc / images / mini2440

Sie sollten das Bild (er) in. Jffs2 haben zu blinken, und. Tar.gz für die Montage mit Hilfe von NFS.

Tags: , , , Kategorien: Allgemein Tags: , , ,