Komut
available()
Açıklama
Okunacak bayt (karakter) sayısını alın. Bu, önceden alınmış ve bir alma arabelleğinde (8 bayt tutar) saklanan verilerdir. available (), Stream yardımcı program sınıfından miras alır.
Sözdizimi
SigFox. Mevcut ()
Parametreler
Yok
İadeler
okunabilecek bayt sayısı
Misal
/ *
SigFox İlk Yapılandırma
Bu çizim MKRFox1200 SigFox modülünün kullanımını göstermektedir.
Kart düşük güç düşünülerek tasarlandığından, doğrudan ArduinoLowPower kütüphanesine bağlıdır
Bu örnek kod kamu malıdır.
* /
#include <SigFox.h>
#include <ArduinoLowPower.h>
void setup ( ) {
Seri . başlar ( 9600 ) ;
while ( ! Seri ) { } ;
// Özel bir kartla çalışıyorsanız bu satırı açıp yorum başlayacaktır ()
// if (! SigFox.begin (SPI1, 30, 31, 33, 28, LED_BUILTIN)) {
eğer ( ! SigFox. begin ( ) ) {
Seri . println ( "Kalkan hatası veya yok!" ) ;
dönüş ;
}
// Hata ayıklama ledini etkinleştir ve otomatik derin uyku özelliğini devre dışı bırak
// Projenizi gönderirken bu satırı yorumlayın :)
SigFox. debug ( ) ;
Dize sürümü = SigFox. SigVersion ( ) ;
Dize Kimliği = SigFox. ID ( ) ;
String PAC = SigFox. PAC ( ) ;
// Ekran modülü bilgileri
Seri . println ( "MKRFox1200 Sigfox ilk yapılandırması" ) ;
Seri . println ( "SigFox FW sürümü" + sürüm ) ;
Seri . println ( "Kimlik =" + Kimlik ) ;
Seri . println ( "PAC =" + PAC ) ;
Seri . println ( "" ) ;
Seri . baskı ( "Modül sıcaklığı:" ) ;
Seri . println ( SigFox. internalTemperature ( ) ) ;
Seri . println ( " Tahtanızı https://backend.sigfox.com/activate adresine verilen kimlik ve PAC ile kaydedin" ) ;
gecikme ( 100 ) ;
// Modülü en derin uyku moduna gönderin
SigFox. end ( ) ;
Seri . println ( "Gönderilecek mesajı yazın" ) ;
while ( ! Serial . available ( ) ) ;
Dize mesajı ;
while ( Seri . kullanılabilir ( ) ) {
mesaj + = ( karakter ) Seri . read ( ) ;
}
// Her SigFox paketi 12 baytı aşamaz
// Dize daha uzunsa, yalnızca ilk 12 bayt gönderilir
if ( mesaj. uzunluk ( ) > 12 ) {
Seri . println ( "Mesaj çok uzun, yalnızca ilk 12 bayt gönderilecek" ) ;
}
Seri . println ( "Gönderiliyor" + mesajı ) ;
// EOL'yi kaldır
İleti. trim ( ) ;
// Gönderilebilecek mesaj örneği
// sendString (mesaj);
Seri . println ( "Yanıtın alınması 50 saniye kadar sürer" ) ;
Seri . println ( "İşlem devam ederken LED yanıp söner" ) ;
// Gönderme ve okuma yanıtı örneği
sendStringAndGetResponse ( mesaj ) ;
}
void loop ( )
{
}
void sendString ( String str ) {
// Modülü başlat
SigFox. begin ( ) ;
// İlk yapılandırmadan sonra en az 30mS bekleyin (100mS önce)
gecikme ( 100 ) ;
// Bekleyen tüm kesintileri temizler
SigFox. durum ( ) ;
gecikme ( 1 ) ;
SigFox. beginPacket ( ) ;
SigFox. baskı ( str ) ;
int ret = SigFox. endPacket ( ) ; // SIGFOX ağına arabellek gönder
if ( ret > 0 ) {
Seri . println ( "İletim yok" ) ;
} başka {
Seri . println ( "İletim tamam" ) ;
}
Seri . println ( SigFox. durumu ( SIGFOX ) ) ;
Seri . println ( SigFox. durumu ( ATMEL ) ) ;
SigFox. end ( ) ;
}
void sendStringAndGetResponse ( String str ) {
// Modülü başlat
SigFox. begin ( ) ;
// İlk yapılandırmadan sonra en az 30mS bekleyin (100mS önce)
gecikme ( 100 ) ;
// Bekleyen tüm kesintileri temizler
SigFox. durum ( ) ;
gecikme ( 1 ) ;
SigFox. beginPacket ( ) ;
SigFox. baskı ( str ) ;
int ret = SigFox. endPacket ( gerçek ) ; // SIGFOX ağına arabellek gönder ve yanıt bekle
if ( ret > 0 ) {
Seri . println ( "İletim yok" ) ;
} başka {
Seri . println ( "İletim tamam" ) ;
}
Seri . println ( SigFox. durumu ( SIGFOX ) ) ;
Seri . println ( SigFox. durumu ( ATMEL ) ) ;
if ( SigFox. parsePacket ( ) ) {
Seri . println ( "Sunucudan yanıt:" ) ;
ise (SigFox. mevcuttur ()) {
Seri . yazdır ( "0x" ) ;
Seri . println ( SigFox. read ( ) , HEX ) ;
}
} başka {
Seri . println ( "Sunucudan yanıt alınamadı " ) ;
Seri . println ( "Bölgenizdeki SigFox kapsamını kontrol edin" ) ;
Seri . println ( "İç mekandaysanız, 20dB kapsama alanını kontrol edin veya bir pencerenin yanına gidin" ) ;
}
Seri . println ( ) ;
SigFox. end ( ) ;
}
SigFox İlk Yapılandırma
Bu çizim MKRFox1200 SigFox modülünün kullanımını göstermektedir.
Kart düşük güç düşünülerek tasarlandığından, doğrudan ArduinoLowPower kütüphanesine bağlıdır
Bu örnek kod kamu malıdır.
* /
#include <SigFox.h>
#include <ArduinoLowPower.h>
void setup ( ) {
Seri . başlar ( 9600 ) ;
while ( ! Seri ) { } ;
// Özel bir kartla çalışıyorsanız bu satırı açıp yorum başlayacaktır ()
// if (! SigFox.begin (SPI1, 30, 31, 33, 28, LED_BUILTIN)) {
eğer ( ! SigFox. begin ( ) ) {
Seri . println ( "Kalkan hatası veya yok!" ) ;
dönüş ;
}
// Hata ayıklama ledini etkinleştir ve otomatik derin uyku özelliğini devre dışı bırak
// Projenizi gönderirken bu satırı yorumlayın :)
SigFox. debug ( ) ;
Dize sürümü = SigFox. SigVersion ( ) ;
Dize Kimliği = SigFox. ID ( ) ;
String PAC = SigFox. PAC ( ) ;
// Ekran modülü bilgileri
Seri . println ( "MKRFox1200 Sigfox ilk yapılandırması" ) ;
Seri . println ( "SigFox FW sürümü" + sürüm ) ;
Seri . println ( "Kimlik =" + Kimlik ) ;
Seri . println ( "PAC =" + PAC ) ;
Seri . println ( "" ) ;
Seri . baskı ( "Modül sıcaklığı:" ) ;
Seri . println ( SigFox. internalTemperature ( ) ) ;
Seri . println ( " Tahtanızı https://backend.sigfox.com/activate adresine verilen kimlik ve PAC ile kaydedin" ) ;
gecikme ( 100 ) ;
// Modülü en derin uyku moduna gönderin
SigFox. end ( ) ;
Seri . println ( "Gönderilecek mesajı yazın" ) ;
while ( ! Serial . available ( ) ) ;
Dize mesajı ;
while ( Seri . kullanılabilir ( ) ) {
mesaj + = ( karakter ) Seri . read ( ) ;
}
// Her SigFox paketi 12 baytı aşamaz
// Dize daha uzunsa, yalnızca ilk 12 bayt gönderilir
if ( mesaj. uzunluk ( ) > 12 ) {
Seri . println ( "Mesaj çok uzun, yalnızca ilk 12 bayt gönderilecek" ) ;
}
Seri . println ( "Gönderiliyor" + mesajı ) ;
// EOL'yi kaldır
İleti. trim ( ) ;
// Gönderilebilecek mesaj örneği
// sendString (mesaj);
Seri . println ( "Yanıtın alınması 50 saniye kadar sürer" ) ;
Seri . println ( "İşlem devam ederken LED yanıp söner" ) ;
// Gönderme ve okuma yanıtı örneği
sendStringAndGetResponse ( mesaj ) ;
}
void loop ( )
{
}
void sendString ( String str ) {
// Modülü başlat
SigFox. begin ( ) ;
// İlk yapılandırmadan sonra en az 30mS bekleyin (100mS önce)
gecikme ( 100 ) ;
// Bekleyen tüm kesintileri temizler
SigFox. durum ( ) ;
gecikme ( 1 ) ;
SigFox. beginPacket ( ) ;
SigFox. baskı ( str ) ;
int ret = SigFox. endPacket ( ) ; // SIGFOX ağına arabellek gönder
if ( ret > 0 ) {
Seri . println ( "İletim yok" ) ;
} başka {
Seri . println ( "İletim tamam" ) ;
}
Seri . println ( SigFox. durumu ( SIGFOX ) ) ;
Seri . println ( SigFox. durumu ( ATMEL ) ) ;
SigFox. end ( ) ;
}
void sendStringAndGetResponse ( String str ) {
// Modülü başlat
SigFox. begin ( ) ;
// İlk yapılandırmadan sonra en az 30mS bekleyin (100mS önce)
gecikme ( 100 ) ;
// Bekleyen tüm kesintileri temizler
SigFox. durum ( ) ;
gecikme ( 1 ) ;
SigFox. beginPacket ( ) ;
SigFox. baskı ( str ) ;
int ret = SigFox. endPacket ( gerçek ) ; // SIGFOX ağına arabellek gönder ve yanıt bekle
if ( ret > 0 ) {
Seri . println ( "İletim yok" ) ;
} başka {
Seri . println ( "İletim tamam" ) ;
}
Seri . println ( SigFox. durumu ( SIGFOX ) ) ;
Seri . println ( SigFox. durumu ( ATMEL ) ) ;
if ( SigFox. parsePacket ( ) ) {
Seri . println ( "Sunucudan yanıt:" ) ;
ise (SigFox. mevcuttur ()) {
Seri . yazdır ( "0x" ) ;
Seri . println ( SigFox. read ( ) , HEX ) ;
}
} başka {
Seri . println ( "Sunucudan yanıt alınamadı " ) ;
Seri . println ( "Bölgenizdeki SigFox kapsamını kontrol edin" ) ;
Seri . println ( "İç mekandaysanız, 20dB kapsama alanını kontrol edin veya bir pencerenin yanına gidin" ) ;
}
Seri . println ( ) ;
SigFox. end ( ) ;
}
Ayrıca bakınız
- başla()
- beginPacket ()
- yazmak()
- Yazdır()
- endPacket ()
- parsePacket ()
- durum kodu()
- AtmVersion ()
- SigVersion ()
- İD()
- PAC ()
- Sıfırla()
- internalTemperature ()
- ayıklama ()
- hata yok()
- son()
- dikizlemek()
- ) (okuma