第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Raspberry Pi MAX31865 Python 到 Java 的轉(zhuǎn)換

Raspberry Pi MAX31865 Python 到 Java 的轉(zhuǎn)換

翻閱古今 2024-01-05 14:59:19
我正在嘗試將讀取 MAX13865 傳感器的一段 Python 代碼轉(zhuǎn)換為 Java。Python 代碼運(yùn)行良好并返回預(yù)期的數(shù)字 (1238),而 Java 版本始終返回 32767。為了簡(jiǎn)化閱讀,我將 Python 代碼和 Java 代碼減少到最小。下面的 Python 代碼仍然運(yùn)行得很好。我缺少什么?看起來(lái)很簡(jiǎn)單,但是還是不行……#!/usr/bin/python -ttimport RPi.GPIO as GPIOimport timeimport datetimeimport mathclass MAX31865(object):    def __init__(self, cs_pin, clock_pin, data_in_pin, data_out_pin, board = GPIO.BCM):        self.cs_pin = cs_pin        self.clock_pin = clock_pin        self.data_in_pin = data_in_pin        self.data_out_pin = data_out_pin        self.board = board        # Initialize needed GPIO        GPIO.setmode(self.board)        GPIO.setup(self.cs_pin, GPIO.OUT)        GPIO.setup(self.clock_pin, GPIO.OUT)        GPIO.setup(self.data_in_pin, GPIO.IN)        GPIO.setup(self.data_out_pin, GPIO.OUT)        # Pull chip select high to make chip inactive        GPIO.output(self.cs_pin, GPIO.HIGH)    def get_data(self):        '''Acqures raw RDT data.'''        self.address = int(0x01)    #RTD MSBs        MSB = self.read()        self.address = int(0x02)    #RTD LSBs        LSB = self.read()        MSB = MSB<<8        raw = MSB+LSB        raw = raw>>1        return raw    def read(self):        '''Reads 16 bits of the SPI bus from a self.address register & stores as an integer in self.data.'''        bytesin = 0        # Select the chip        GPIO.output(self.cs_pin, GPIO.LOW)        # Assert clock bit        GPIO.output(self.clock_pin, GPIO.LOW)        # Write to address        for i in range(8):            bit  = self.address>>(7 - i)            bit = bit & 1            GPIO.output(self.data_out_pin, bit)            GPIO.output(self.clock_pin, GPIO.HIGH)            GPIO.output(self.clock_pin, GPIO.LOW)        # Read in 8 bits        for i in range(8):            GPIO.output(self.clock_pin, GPIO.HIGH)            bytesin = bytesin << 1            if (GPIO.input(self.data_in_pin)):                bytesin = bytesin | 1            GPIO.output(self.clock_pin, GPIO.LOW)
查看完整描述

1 回答

?
天涯盡頭無(wú)女友

TA貢獻(xiàn)1831條經(jīng)驗(yàn) 獲得超9個(gè)贊

問(wèn)題與 Pi4J 映射 GPIO 引腳號(hào)與 Python 版本的方式有關(guān)。

https://www.pi4j.com/1.2/pins/model-3b-rev1.html

Python版本:

MAX31865(8, 11, 9, 10)

以及 java 的等價(jià)物:

MAX31865 max = new MAX31865(RaspiPin.GPIO_10, RaspiPin.GPIO_14, RaspiPin.GPIO_13, RaspiPin.GPIO_12);

請(qǐng)注意,引腳編號(hào)不同。但現(xiàn)在兩者給出了完全相同的結(jié)果。其他一切都很好。

實(shí)時(shí)調(diào)頻:(


查看完整回答
反對(duì) 回復(fù) 2024-01-05
  • 1 回答
  • 0 關(guān)注
  • 146 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)