Hirdetés
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Micro Four Thirds
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Milyen notebookot vegyek?
- Melyik hordozható audiolejátszót (DAP, MP3, stb.) vegyem?
- Vezeték nélküli fejhallgatók
- AMD Navi Radeon™ RX 9xxx sorozat
- Bambu Lab 3D nyomtatók
- Windows 11: miért nem vált mindenki?
- Autóhifi
Új hozzászólás Aktív témák
-
atesss
addikt
Üdv !
Raspberry Pi-n használok egy AD átalakítót, és az eddig Píthon kódomat most megpróbáltam kicsit úgy átalakítani - a jobb átláthatóság érdekében - hogy minden változó csak a szükséges függvényben legyen érvényes.
Illetve a hardverhez kapcsoló adat (jelen esetben pl. a csatornáknak a címe) is csak az adott hardver-kezelő függvényben legyen megadva.
Viszont így eléggé "körülményes" lett a kód végére:
Main függvény releváns részei:I2C_address = 0x48ADCCh0_sum_1s = ADCCh0_sum_1s + adc_measure("A0")ADCCh1_sum_1s = ADCCh1_sum_1s + adc_measure("A1")ADCCh2_sum_1s = ADCCh2_sum_1s + adc_measure("A2")ADCCh3_sum_1s = ADCCh3_sum_1s + adc_measure("A3")
És a két releváns függvényem:def adc_measure(channel_name):global I2C_addresschannel = get_channel_from_name(channel_name)try:bus.write_byte(I2C_address,channel)except IOError:passtry:adc_dummyread = bus.read_byte(I2C_address)except IOError:passtime.sleep(0.001)try:adc_value = bus.read_byte(I2C_address)except IOError:pass# print("ADC readed value on Channel Name",channel_name, "(Hexa-ID: ", hex(channel),"): ",adc_value)# print('------')time.sleep(0.001)return adc_valuedef get_channel_from_name(channel_name):A0 = 0x40A1 = 0x41A2 = 0x42A3 = 0x43if channel_name == "A0":channel = A0if channel_name == "A1":channel = A1if channel_name == "A2":channel = A2if channel_name == "A3":channel = A3# print("Non-converted channel name: ",channel)return channel
A kikommentezett print-eket csak debug célra használtam.A "névkonvertáló" függvényt hogyan tudnám elhagyni ?
(Ha viszont direkt feltétel, hogy nem akarom a main-ben megadni az A0, A1, A2, A3 -at.)
Mert én hiába kerestem, nem találtam olyan függvényt, amivel ezt a funkciót egyszerűbben végre tudnám hajtani. Hogyan lehetne kiváltani az " = A0" ... " = A3" értékadó sorokat ?
Új hozzászólás Aktív témák
- Lenovo Legion Go Z1 Extreme 512/16GB
- ASRock P4i65PE Socket 478 Retro alaplap
- Lenovo ThinkPad T14 Gen 2, i5-1145G7 CPU, 16GB DDR4, 512GB SSD, AAM SZÁMLA, 1ÉV GARANCIA!
- Dell Latitude 5490 FHD, i5-8350U, 8GB DDR4,256GB SSD, AAM SZÁMLA(Vállalkozásoknak is!), 1ÉV GARANCIA
- Dell Latitude 7490 FHD, TOUCH, i5-8350U, 8GB DDR4, 256GB SSD, AAM SZÁMLA, 1ÉV GARANCIA!
- HIBÁTLAN iPhone 13 128GB Midnight-1 ÉV GARANCIA - Kártyafüggetlen, MS4397
- 27% - ÚJ Samsung Odyssey G5 S27FG506SU QD-OLED Monitor! 2560x1440 / 180Hz / G-Sync / FreeSync
- Vásárlunk iPhone 12/12 Mini/12 Pro/12 Pro Max
- Beszámítás! Intel Core i7 4770K 4 mag 8 szál processzor garanciával hibátlan működéssel
- Bomba ár! Lenovo ThinkPad T480s - i5-8G I 16GB I 256SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

