A20 CAN bus kullanımı (can4linux)
Banana Pi BPI-M1+ · Bananian 15-01 üzerinde can4linux sürücüsünü derleyip A20'nin CAN denetleyicisini kullanın.
Bu topluluk örneği (selqcir) Bananian 15-01 ile hazırlanmıştır. A20 CAN modülü hakkında ayrıntı: https://dl.linux-sunxi.org/A20/CAN%20Bus1.pdf.
- bananian-1501.img'yi 8 GB SD karta yazın,
bananian-configile kök dosya sistemini genişletin ve paketleri güncelleyin:apt-get install git apt-get update apt-get upgrade reboot - Kernel kaynağını ve derleme araçlarını indirin:
git clone https://github.com/Bananian/linux-bananapi apt-get install build-essential u-boot-tools uboot-mkimage apt-get install libusb-1.0-0 libusb-1.0-0-dev git wget fakeroot kernel-package zlib1g-dev libncurses5-dev apt-get install subversion - Kerneli derleyin (menuconfig açılınca kaydetmeden çıkın):
cd linux-bananapi make menuconfigzcat /proc/config.gz > /root/linux-bananapi/.config make uImage modules make INSTALL_MOD_PATH=output modules_install - Mevcut modül/firmware ve uImage dosyalarını yedekleyip yenileriyle değiştirin:
mv /lib/modules /lib/modules.old mv /lib/firmware /lib/firmware.old mv /root/linux-bananapi/output/lib/modules /lib/modules mv /root/linux-bananapi/output/lib/firmware /lib/firmwaremount /dev/mmcblk0p1 /mnt cd /mnt mv uImage uImage.old mv /root/linux-bananapi/arch/arm/boot/uImage /mnt reboot - Derleme bağlantısını oluşturun, can4linux'u indirip derleyin:
cd /lib/modules/3.4.104/ ln -s /root/linux-bananapi build cd ~svn checkout https://svn.code.sf.net/p/can4linux/code/trunk can4linux-code cd /root/can4linux-code/can4linux/ make TARGET=BANANAPI - Modülü kurup her açılışta yüklenmesini sağlayın:
insmod can4linux.ko cp can4linux.ko /lib/modules/3.4.104/kernel/net/can/ depmod -A -v modprobe -v can4linux echo "" >> /etc/modules ; echo "can4linux" >> /etc/modules reboot - Python örneğini hazırlayın,
pyCan-example.pyiçinde cihaz numarasını ve hızı ayarlayın, CAN alıcı-vericiyi bağlayıp test edin:apt-get install swig apt-get install python-dev cd can4linux-code/can4linux-examples/# setting the device number device = 0 defaultBaudrate = '250'python pyCan-example.py