提供树莓派和Jetson nano示例程序
功能引脚 | 树莓派接口(BCM) | 树莓派接口(WiringPi) | 描述 |
DRDY | P17 | P0 | ADS1256数据就绪输出,低电平有效 |
RESET | P18 | P1 | ADS1256复位输入 |
PDWN | P27 | P2 | ADS1256 同步/关闭电源输入,低电平有效 |
CS0 | P22 | P3 | ADS1256片选,低电平有效 |
C1 | P23 | P4 | DAC8532片选,低电平有效 |
DIN | P10 | P12 | SPI数据输入 |
DOUT | P9 | P13 | SPI数据输出 |
SCK | P11 | P14 | SPI时钟信号 |
提供C语言与python例程
- sudo raspi-config
- 选择Interfacing Options -> SPI -> Yes 开启SPI接口
然后重启树莓派:
- sudo reboot
请确保SPI没有被其他的设备占用,你可以在/boot/config.txt中间检查
- wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz
- tar zxvf bcm2835-1.60.tar.gz
- cd bcm2835-1.60/
- sudo ./configure && sudo make && sudo make check && sudo make install
- # 更多的可以参考官网:http://www.airspayce.com/mikem/bcm2835/
- sudo apt-get install wiringpi
- #对于树莓派2019年5月之后的系统(早于之前的可不用执行),可能需要进行升级:
- wget https://project-downloads.drogon.net/wiringpi-latest.deb
- sudo dpkg -i wiringpi-latest.deb
- gpio -v
- # 运行gpio -v会出现2.52版本,如果没有出现说明安装出错
- sudo apt-get update
- sudo apt-get install ttf-wqy-zenhei
- sudo apt-get install python-pip
- sudo pip install RPi.GPIO
- sudo pip install spidev
在树莓派终端运行:
- sudo apt-get install p7zip-full
- wget http://www.waveshare.net/w/upload/5/5e/High-Precision-AD-DA-Board-Code.7z
- 7z x High-Precision-AD-DA-Board-Code.7z -r -o./High-Precision-AD-DA-Board-Code
- cd High-Precision-AD-DA-Board-Code/RaspberryPI/
- cd ADS1256
提供4个例程,分别是:bcm2835、python2、python3、wiringpi
工作电压设置为5V:连接5V到VCC。
参考电压设置为5V:连接5V到VREF。
设置电位器输出为模拟量输入:连接ADJ到AD0。确保板子左侧的传感器接口AD0断开。
设置光敏电阻输出为模拟量输入:连接LDR到AD1。确保板子左侧的传感器接口AD1断开。连接AINCOM到AGND,AD差分输入时可以不连接。
1.bcm2835
- cd bcm2835/
- make
- sudo ./ads1256_test
注意,运行了BCM2835库需要重启树莓派才能正常运行其余库。
2.wiringpi
- cd wiringpi/
- make
- sudo ./ads1256_test
3.python2
- cd python2/
- sudo python main.py
4.python3
- cd python3/
- sudo python3 main.py
转动电位器,AD0通道电压有相应的变化。
遮挡光敏电阻,AD1通道电压有相应的变化。
由于其他的通道没有接到负载上,他是悬空的,所以在1.17V左右浮动
- cd DAC8532/
提供4个例程,分别是:bcm2835、python2、python3、wiringpi
工作电压设置为5V:连接5V到VCC。
参考电压设置为5V:连接5V到VREF。
连接DA0到LEDA,连接DA1到LEDB。则指示灯LEDA的亮度将会根据DA0输出电压而变化。指示灯LEDB的亮度将会根据DA1输出电压而变化。
1.bcm2835
- cd bcm2835/
- make
- sudo ./dac8532_test
注意,运行了BCM2835库需要重启树莓派才能正常运行其余库。
2.wiringpi
- cd wiringpi/
- make
- sudo ./dac8532_test
3.python2
- cd python2/
- sudo python main.py
4.python3
- cd python3/
- sudo python3 main.py
LEDA,LEDB会有呼吸灯效果
- cd AD-DA/
提供2个例程,分别是:bcm2835、python
1.bcm2835
- cd bcm2835/
- make
- sudo ./dac8532_test
注意,运行了BCM2835库需要重启树莓派才能正常运行其余库。
2.python
- cd python/
- sudo python main.py
旋转电位器两个LED灯交替亮
Jetson nano程序使用的是模拟SPI,所以刷新速度会相对较慢一些
- sudo apt-get update
- sudo apt-get install python3-pip
- sudo pip3 install Jetson.GPIO
- sudo groupadd -f -r gpio
- sudo usermod -a -G gpio your_user_name
- sudo cp /opt/nvidia/jetson-gpio/etc/99-gpio.rules /etc/udev/rules.d/
- sudo udevadm control --reload-rules && sudo udevadm trigger
【注意】your_user_name 是你使用的用户名,比如说 waveshare
- sudo apt-get install python-smbus
- sudo apt-get install python3-pil
- sudo apt-get install python3-numpy
打开linux终端,执行:
- sudo apt-get install p7zip-full
- wget http://www.waveshare.net/w/upload/5/5e/High-Precision-AD-DA-Board-Code.7z
- 7z x High-Precision-AD-DA-Board-Code.7z -r -o./High-Precision-AD-DA-Board-Code
- cd High-Precision-AD-DA-Board-Code/Jetsonnano/
- cd ADS1256
提供3个例程,分别是:c、python2、python3
工作电压设置为5V:连接5V到VCC。
参考电压设置为5V:连接5V到VREF。
设置电位器输出为模拟量输入:连接ADJ到AD0。确保板子左侧的传感器接口AD0断开。
设置光敏电阻输出为模拟量输入:连接LDR到AD1。确保板子左侧的传感器接口AD1断开。连接AINCOM到AGND,AD差分输入时可以不连接。
1.C
- cd C/
- make
- sudo ./main
2.python2
- cd python2/
- sudo python main.py
3.python3
- cd python3/
- sudo python3 main.py
转动电位器,AD0通道电压有相应的变化。
遮挡光敏电阻,AD1通道电压有相应的变化。
由于其他的通道没有接到负载上,他是悬空的,所以在1.17V左右浮动
- cd DAC8532/
提供3个例程,分别是:c、python2、python3
工作电压设置为5V:连接5V到VCC。
参考电压设置为5V:连接5V到VREF。
连接DA0到LEDA,连接DA1到LEDB。则指示灯LEDA的亮度将会根据DA0输出电压而变化。指示灯LEDB的亮度将会根据DA1输出电压而变化。
1.C
- cd C/
- make
- sudo ./main
2.python2
- cd python2/
- sudo python main.py
3.python3
- cd python3/
- sudo python3 main.py
LEDA,LEDB会有呼吸灯效果
- cd AD-DA/
提供3个例程,分别是:c、python2、python3
1.C
- cd C/
- make
- sudo ./main
2.python2
- cd python2/
- sudo python main.py
3.python3
- cd python3/
- sudo python3 main.py
旋转电位器两个LED灯交替亮