Raspberry-Pi-OS-Logo
21/02/2022 nga Joer.al 0 Komente

Raspberry Pi OS është i disponueshëm në versionin 64-bit

Fondacioni Raspberry Pi njoftoi (përmes një postimi në blogun zyrtar të Gordon) ditët e fundit lëshimin e sistemit operativ Raspberry Pi OS (Raspbian) në versionin (stabil) me arkitekturë 64-bit.

Deri më tani, vetëm versioni 32-bit ishte i disponueshëm, i pajtueshëm me lloje të ndryshme të harduerit dhe softuerit.

Me këtë version të ri ne mund të përdorim dhe të shfrytëzojmë në maksimum potencialin e harduerit me më shumë se 4 GB RAM (pasi një OS 32-bit nuk mund të aksesojë më shumë se 4 GB). Që nga Raspberry Pi 3 e tutje (dhe një model Raspberry Pi 2 i bazuar në një SoC Pi 3 të reduktuar) modelet e ndryshme Raspberry Pi kanë qenë të pajtueshme me softuerin 64-bit. Zhvillimi i SoC-ve shkon drejt rrugës së mbështetjes 64-bit dhe për këtë arsye ishte gjithashtu e nevojshme të krijohej një sistem operativ adekuat.

Sigurisht që ju nevojitet një procesor 64-bit për ta instaluar, që do të thotë se përputhshmëria është e kufizuar në:

Raspberry Pi 4B
Raspberry Pi 400
Raspberry Pi 3B
Raspberry Pi 3B +
Raspberry Pi 3A +
Raspberry Pi Zero 2 W
Raspberry Pi CM3
Raspberry Pi CM3 +
Raspberry Pi CM4

Në ditët e sotme, shumë softuer, madje edhe në një mjedis Linux, janë zhvilluar vetëm për arkitekturat 64-bit, të cilat tani janë më të njohurat.

Nëse jeni të interesuar të provoni Raspberry Pi 64-bit, thjesht shkoni te faqja e shkarkimit të tij.

Arduino_Serial_1
19/02/2022 nga Joer.al 0 Komente

Komunikimi serial midis dy bordeve Arduino (pjesa 1)

Arduino ka mënyra të ndryshme komunikimi përmes portës seriale. Të shohim konceptet pas këtij mekanizmi.

Le të fillojmë me këtë artikull një seri mësimesh të shkurtra mbi përdorimin e protokollit të komunikimit serial Arduino. Do të shohim komunikimin me dy tela, përdorimin e protokollit RS232, lidhjen me boost dhe në fund do të paraqesim shënime shpjeguese për komunikimin përmes BlueTooth.

 

Komunikimi serial dhe paralel

Në elektronikë ne në thelb mund të transmetojmë informacionin tonë në dy mënyra: në grupe bitesh ose t’i dërgojmë ato një nga një me të njëjtën orë CPU. Vetëkuptohet që transmetimi paralel i të dhënave duket më efikas, pasi më shumë informacion transmetohet për cikël orësh. Megjithatë, transmetimi serial është shumë më i thjeshtë për t’u zbatuar, më pak i ndjeshëm ndaj zhurmës elektrike dhe në përgjithësi nuk kërkon karakteristika të veçanta kontrolli.

Sinjalet e të dhënave dhe menaxhimi i një porti seriale kontrollohen nga UART (transmetuesi Universal Asynchronous Receiver), një çip i pranishëm në Arduino-n tonë.

Në kundërshtim me besimin popullor, UART mund të përdoret edhe pa portën serike RS232, siç do ta shohim në shembullin vijues.

Komunikimi përmes drejtimit UART

Siç nënkupton edhe emri, një UART përfaqëson një sistem transmetues që ju lejon të dërgoni të dhëna nga një kartë në tjetrën. Truku i vetëm është vendosja e të dy pllakave në një terren të përbashkët, në mënyrë që sinjalet e LARTË dhe të ULËT të jenë në përputhje me njëri-tjetrin.

Në shembujt tanë, UART do të përdorë ASCII për të transmetuar informacion: ai do të transformojë kodet e dërguara duke i serializuar ato në sekuenca bitash. Le të shohim një shembull.

Duhet të transmetojmë shkronjën ‘A’: siç e dimë, kodi ASCII i A është 65, dhe vlera e tij binare korrespondon me 01000001. Kodi ASCII ofron kodim 7 bit, kështu që (për të mos humbur saktësinë) do të na duhet të transmetoni ‘1000001’. Numri më pas do të futet brenda një zarfi që ofron një bit fillestar, një bit të mundshëm të barazisë, një ose dy bit ndalimi. Le të shohim se si funksionon.

Protokolli i komunikimit

Niveli logjik i sinjalit është LARTË, në nivelin logjik 1, dhe do të vendoset në LOW (niveli logjik 0) nga biti START. në këtë pikë pjesët e karakterit tonë ‘A’ do të transmetohen, nga biti më pak i rëndësishëm (LSB) në bitin më domethënës (MSB). Në fund të transmetimit, mund të shtohet i ashtuquajturi bit i paritetit, për të siguruar siguri minimale në saktësinë e të dhënave të transmetuara. Së fundi, për të deklaruar se bitet që do të transmetohen kanë përfunduar, dërgohen një (ose dy) bit ndalimi.

Nëse shpjegimi ngatërroi idetë tuaja, mos u shqetësoni: Arduino ka një bibliotekë të shkëlqyer për menaxhimin e komunikimeve seriale në një mënyrë transparente për përdoruesin përfundimtar.

Arduino: lidhjet seriale

Megjithatë, përpara se të futemi në kod, ne ende duhet të përcaktojmë disa informacione të nevojshme. Ne pamë në ilustrimin e hapjes se është e nevojshme të lidhni kunjat GND të dy pllakave që do të lidhen së bashku, më pas lidhni kunjin e transmisionit (TX) të njërës me pinin marrës (RX) të tjetrit. Konfigurimi i “trenit të biteve” do të lejojë komunikim dydrejtues, ose full-duplex, ndërmjet burimit dhe marrësit, falë karakteristikave të brendshme të UART. Por cilat janë “nivelet e tensionit” të mbështetur nga Arduino? Me fjalë të tjera, si do të jemi në gjendje të dallojmë një sinjal MARK nga një sinjal SPACE, një nivel të lartë nga një nivel i ulët?

Siç e dimë, logjika dixhitale Arduino UNO siguron komunikim TTL me nivele të tensionit midis 0 dhe + 5 V. Fatkeqësisht kjo nuk është gjithmonë e vërtetë për kartat e tjera, të cilat mund të funksionojnë për shembull midis 0V dhe + 3.3V. Arduino do të jetë në gjendje të marrë në mënyrë të sigurt një zhvendosje të impulseve nga një sistem që punon në 3.3V (më i lartë se 2V minimale e nevojshme për t’u njohur si LARTË nga Arduino), por do të jetë e nevojshme t’i kushtohet vëmendje maksimale kur transmetoni të dhëna në një marrës që punon në + 3.3V. Për të parandaluar dëmtimin e pariparueshëm të këtij sistemi nga tensioni i tepërt, duhet të sigurohet një ndarës i tensionit.

Dhe tani pak Kod

Për shembullin e parë, ne do të krijojmë një kornizë të dobishme për të përshkruar sistemin tonë të pritjes: ne i lidhim kunjat si në figurën hapëse (dhe të raportuar në komentin fillestar të burimit). Përcaktojmë formatin e të dhënave që do të transmetohen (byte), më pas inicializojmë serialin dhe lexojmë të dhënat nëse janë transmetuar.

 

Në artikujt e ardhshëm  do të analizojmë një sistem të plotë, harduer dhe softuer, për transmetimin dhe marrjen e të dhënave përmes një lidhjeje seriale.