一般情況下,beaglebone black預設啟動兩個cape:
1、bb-bone-emmc-2g
2、bb-bonelt-hdmi
我們可以通過編輯uenv.txt的檔案來決定是否啟動hdmi,步驟如下
1、載入啟動分割槽:
mkdir /mnt/sdcard
mount /dev/mmcblk0p1 /mnt/card
2、編輯uenv.txt
vim /mnt/card/uenv.txt
檔案內容如下
##these are needed to be compliant with angstrom's 2013.06.20 u-boot.
loadaddr=0x82000000
fdtaddr=0x88000000
rdaddr=0x88080000
initrd_high=0xffffffff
fdt_high=0xffffffff
##these are needed to be compliant with debian 2014-05-14 u-boot.
loadximage=load mmc 0:2 $ /boot/vmlinuz-$
loadxfdt=load mmc 0:2 $ /boot/dtbs/$/$
loadxrd=load mmc 0:2 $ /boot/initrd.img-$; setenv rdsize $
loaduenvtxt=load mmc 0:2 $ /boot/uenv.txt ; env import -t $ $;
check_dtb=if test -n $; then setenv fdtfile $;fi;
loadall=run loaduenvtxt; run check_dtb; run loadximage; run loadxrd; run loadxfdt;
mmcargs=setenv bootargs console=tty0 console=$ $ $ $ root=/dev/
mmcblk0p2 rootfstype=$ $
uenvcmd=run loadall; run mmcargs; bootz $ $:$ $;
在」mmcargs=setenv…」一行插入以下語句
optargs=quiet capemgr.disable_partno=bb-bonelt-hdmi,bb-bonelt-hdmin
儲存,退出
3、重啟
4、開機檢視slots已經變成了這樣:
root@beaglebone:~# cat $slots
0: 54:pf---
1: 55:pf---
2: 56:pf---
3: 57:pf---
4: ff:p-o-l bone-lt-emmc-2g,00a0,texas instrument,bb-bone-emmc-2g
5: ff:p-o-- bone-black-hdmi,00a0,texas instrument,bb-bonelt-hdmi
6: ff:p-o-- bone-black-hdmin,00a0,texas instrument,bb-bonelt-hdmin
eqep 全稱enhanced quadrature encoder pulse 增強型正交編碼脈衝,也具有輸入的特性,設定gpio引腳模式為eqep1a_in或eqep1b_in,a和b是正交編碼的訊號輸入,或者是脈衝(a)和方向(b)的訊號輸入。
i是index,也就是零位訊號輸入,s是strobe,當這個引腳接受到上一級傳過來的正(或負)脈衝時,該器件開始工作,叫做選通脈衝。
eqep功能模組的輸入涉及4個gpio
am335x的pwmss分三個部分:
enhanced pwm module(epwm);
enhanced capture module(ecap);
enhanced quadrature encoder pulse module(eqep).
先載入pwm功能的裝置樹 echo am33xx_pwm > /sys/devices/bone_capemgr.9/slots
echo bone_eqep1 > /sys/devices/bone_capemgr.9/slots
然後載入eqep:beaglebone上sysfs條目的路徑是
/sys/devices/ocp.*/.epwmss/.eqep/
對於eqep 0,epwmss位址為48300000,eqep位址為48300180。
對於eqep 1,epwmss位址為48302000,eqep位址為48302180。
對於eqep 2,epwmss位址為48304000,eqep位址為48304180。
需要注意的是,beaglebone上只有eqep 1和eqep 2可用,而beaglebone black上提供了所有這三個版本。這是因為在原始beaglebone上,沒有為eqep0斷開編碼器時鐘輸入引腳之一。
如果使用eqep 1和/或2,則必須在beaglebone和beaglebone black上禁用hdmi,因為它們與lcd_資料線共享引腳。1、測試的編碼器為rotary增量式編碼器,共4根線(vcc、gnd、a相、b相);
2、選擇p8_35 eqep1a 和p8_33 eqep1b引腳,分別作為a、b相,vcc接p9_08的sys_5v,gnd接p9_02的gnd;
3、編寫程式讀取position的資料即可
#include #include#include#include#define encoderdata0 "/sys/devices/ocp.3/48302000.epwmss/48300180.eqep/"
#define encoderdata1 "/sys/devices/ocp.3/48302000.epwmss/48302180.eqep/"
#define encoderdata2 "/sys/devices/ocp.3/48304000.epwmss/48304180.eqep/"
#define max_line 100
struct encoderdata;
main(int argc, char **ar**)
stream1 = fopen(encoderdata1"position","r+");
if(!stream1)
stream2 = fopen(encoderdata2"position","r+");
if(!stream2)
fgets(p1.encoder1, max_line, stream);
fgets(p1.encoder2, max_line, stream1);
fgets(p1.encoder3, max_line, stream2);
fclose(stream);
fclose(stream1);
fclose(stream2);
usleep(100000);
printf("\nthe current encoder data is: %s, %s, %s\n",p1.encoder1,p1.encoder2,p1.encoder3);
}}
index編碼器 編碼器測量工具 主軸編碼器
德國vs sensorik編碼器為index車銑復合工具機標配編碼器 並可完全相容西門子 l b 海德漢等編碼器。dcmu 24p cnbo box 應用於工具機主軸編碼器訊號診斷 資料記錄及訊號校準的測量工具 僅使用一台膝上型電腦連線我們的編碼器測量工具裝置 dcmu box 就可以輕鬆對編碼器訊...
連線編碼器 編碼器原理及測量
編碼器及其應用概述 編碼器 encoder 是將訊號 如位元流 或資料進行編制 轉換為可用以通訊 傳輸和儲存的訊號形式的裝置。編碼器把角位移或直線位移轉換成電訊號,前者成為碼盤,後者稱碼尺。按照讀出方式編碼器可以分為接觸式和非接觸式兩種。接觸式採用電刷輸出,一電刷接觸導電區或絕緣區來表示 的狀態是 ...
正交編碼器
正交編碼器通過兩個脈衝訊號進行位置測量。該訊號可稱為訊號a 通道a 和訊號b 通道b 訊號a和訊號b的偏移量為90 用於確定編碼器移動的方向。例如,在角度正交編碼器中,如訊號a位於訊號b之前,則編碼器按順時針方向旋轉。反之,編碼器按逆時針方向旋轉。m系列 c系列和ni tio裝置上的計數器支援對x1...