Ini adalah perintah owcapi yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
owcapi - Antarmuka 1-kawat bahasa C yang mudah
RINGKASAN
libowcapi perpustakaan untuk ditautkan dengan program Anda
Inisialisasi
ukuran_t OW_init( alat nama or penuh parameter tali )
ukuran_t OW_init_args( int argumen, tangki ** args )
Set lengkap opsi inisialisasi sangat luas. Mereka berkorespondensi secara kasar dengan
opsi baris perintah dari owfs (1) sendiri (1) dan owftpd (1)
Dapatkan data
int OW_sekarang( const tangki * path )
int OW_dapatkan( const tangki * jalan, tangki ** penyangga, ukuran_t * buffer_panjang )
ukuran_t OW_lread( const tangki * jalan, unsigned tangki * penyangga, const ukuran_t ukuran, const
mati_t mengimbangi )
set data
ukuran_t OW_put( const tangki * jalan, const tangki * penyangga, ukuran_t * buffer_panjang )
ukuran_t OW_ltulis( const tangki * jalan, const unsigned tangki * penyangga, const ukuran_t ukuran,
const mati_t mengimbangi )
Debug
membatalkan OW_set_tingkat_kesalahan( const tangki * parameter )
membatalkan OW_set_error_print( const tangki * parameter )
Penyelesaian
membatalkan OW_selesai( membatalkan )
FUNGSI
OW_init
OW_init_string menawarkan fleksibilitas penuh dari owfs (1) dan sendiri (1) garis komando.
kasus
Dapat sesederhana seperti nama perangkat, spesifikasi parameter lengkap. Satu atau
lebih banyak nama perangkat (termasuk tcp, serial, usb...) dan sakelar baris perintah. Lihat
owfs (1) untuk sintaks lengkap.
Pengembalian
0 untuk sukses. -1 pada kesalahan dan salah akan diatur. OW_selesai tidak perlu
disebut jika OW_init gagal
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
OW_init_args
OW_init_args menawarkan fleksibilitas penuh dari owfs (1) dan sendiri (1) garis komando.
kasus
Satu atau beberapa nama perangkat (termasuk tcp, serial, usb...) dan sakelar baris perintah.
Lihat owfs (1) untuk sintaks lengkap. Tidak seperti OW_init_string argumennya ada di argv/argc
Format.
Pengembalian
0 untuk sukses. -1 pada kesalahan dan salah akan diatur. OW_selesai tidak perlu
disebut jika OW_init gagal
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
OW_sekarang
OW_sekarang digunakan untuk memeriksa keberadaan perangkat 1-kawat.
kasus
path adalah path ke direktori atau file (properti).
Pengembalian
0 pada kesuksesan. -1 pada kesalahan (dan salah diatur).
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
OW_dapatkan
OW_dapatkan digunakan untuk mendapatkan daftar direktori dan isi file. Hasilnya dimasukkan ke dalam
buffer yang dialokasikan secara dinamis.
kasus
path adalah path ke direktori atau file (properti). *penyangga mengembalikan pointer ke
buffer yang berisi direktori (dipisahkan koma) atau nilai. buffer_panjang
mengembalikan panjang nilai/string di penyangga
Pengembalian
jumlah byte pada keberhasilan. -1 pada kesalahan (dan salah diatur).
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
penting mencatat
penyangga dialokasikan ( dengan malloc ) oleh OW_dapatkan tetapi harus dibebaskan dalam program Anda.
Lihat malloc (3) dan gratis (3)
OW_baca
OW_baca digunakan untuk membaca chip memori 1-kawat. Anggap saja sebagai kombinasi dari mencari dan
Baca baca Ini memungkinkan akses acak ke memori, menentukan lokasi dan panjangnya. Tidak seperti OW_dapatkan
direktori tidak dapat diperoleh dan buffer harus dialokasikan terlebih dahulu daripada dialokasikan
oleh rutinitas. penyangga setidaknya harus ukuran panjangnya.
kasus
path adalah jalur ke file (properti). penyangga adalah area memori (pra-dialokasikan)
dimana nilai akan ditempatkan. ukuran adalah panjang byte yang diminta. mengimbangi is
posisi dalam file untuk mulai membaca.
Pengembalian
jumlah byte pada keberhasilan. -1 pada kesalahan (dan salah diatur).
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
OW_put
OW_put adalah cara mudah untuk menulis ke chip 1-kawat.
kasus
path adalah jalur ke file (properti). penyangga adalah nilai yang akan ditulis.
buffer_panjang adalah panjang nilai penyangga. Pengembalian jumlah byte aktif
kesuksesan. -1 pada kesalahan (dan salah diatur).
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
OW_ltulis
OW_ltulis adalah pendamping dari OW_baca. Ini memungkinkan penulisan ke posisi sewenang-wenang di
memori 1 kabel. Anggap saja sebagai kombinasi dari mencari dan menulis. penyangga setidaknya harus
ukuran panjangnya.
kasus
path adalah jalur ke file (properti). penyangga adalah data yang akan ditulis. ukuran
adalah panjang byte yang akan ditulis. mengimbangi adalah posisi dalam file untuk memulai
penulisan.
Pengembalian
jumlah byte pada keberhasilan. -1 pada kesalahan (dan salah diatur).
Urutan
Salah satu init fungsi harus dipanggil sebelum mengakses bus 1-kawat.
OW_selesai bersifat opsional.
OW_set_error_level
OW_set_error_level mengatur output debug ke tingkat tertentu. 0 adalah default, dan lebih tinggi
nilai memberikan lebih banyak output.
(0=default, 1=err_connect, 2=err_call, 3=err_data, 4=err_detail, 5=err_debug,
6=err_beyond)
kasus
params adalah tingkat. Harus berupa bilangan bulat.
Pengembalian
None
Urutan
Salah satu init fungsi harus dipanggil sebelum mengatur level, karena init
default ke tingkat 0.
OW_set_error_print
OW_set_error_print set di mana output debug harus diarahkan. 0 = keluaran campuran,
1=sistem log, 2=konsol.
kasus
params adalah tingkat. Harus berupa bilangan bulat antara 0 dan 2.
Pengembalian
None
Urutan
Salah satu init fungsi harus dipanggil sebelum mengatur level, karena init
default ke 0 (output campuran).
OW_selesai
OW_selesai membersihkan OWFS Rutinitas 1-kawat, melepaskan perangkat dan memori.
kasus
Tidak ada.
Pengembalian
None
Urutan
OW_selesai adalah opsional karena pembersihan otomatis saat keluar dari program.
DESKRIPSI
1-Kawat
1-kawat adalah protokol pengkabelan dan serangkaian perangkat yang dirancang dan diproduksi oleh Dallas
Semiconductor, Inc. Bus adalah skema konektor rendah berkecepatan rendah berdaya rendah di mana data
garis juga dapat memberikan daya.
Setiap perangkat diberi nomor unik dan tidak dapat diubah selama pembuatan. Ada yang luas
berbagai perangkat, termasuk memori, sensor (kelembaban, suhu, tegangan, kontak,
arus), sakelar, pengatur waktu, dan pencatat data. Perangkat yang lebih kompleks (seperti termokopel
sensor) dapat dibangun dengan perangkat dasar ini. Ada juga perangkat 1-kawat yang memiliki
enkripsi disertakan.
Skema 1-kawat menggunakan satu bis menguasai dan banyak budak pada kawat yang sama. Bus
master memulai semua komunikasi. Budak dapat ditemukan secara individual dan
ditangani menggunakan ID unik mereka.
Master bus datang dalam berbagai konfigurasi termasuk serial, paralel, i2c, jaringan
atau adaptor USB.
OWFS disain
OWFS adalah rangkaian program yang dirancang untuk membuat bus 1-kawat dan perangkatnya dengan mudah
dapat diakses. Prinsip dasarnya adalah membuat sistem file virtual, dengan ID unik
menjadi direktori, dan properti individu perangkat direpresentasikan sebagai sederhana
file yang dapat dibaca dan ditulis.
Detail dari masing-masing slave atau master design tersembunyi di balik antarmuka yang konsisten.
Tujuannya adalah untuk menyediakan seperangkat alat yang mudah bagi perancang perangkat lunak untuk membuat pemantauan
atau aplikasi kontrol. Ada beberapa peningkatan kinerja dalam implementasinya,
termasuk caching data, akses paralel ke master bus, dan agregasi perangkat
komunikasi. Tetap saja tujuan mendasarnya adalah kemudahan penggunaan, fleksibilitas dan
kebenaran daripada kecepatan.
libowcapi
libowcapi (1) adalah enkapsulasi penuh membungkuk perpustakaan untuk program C.
libowcapi (1) memungkinkan program C untuk digunakan OWFS prinsip (skema penamaan yang konsisten,
beberapa adaptor, perangkat, dan kompatibilitas) langsung dari program C. Ada
modul analog untuk bahasa pemrograman lain:
C libowcapi
perl burung hantu
php owphp
ular sanca com.owpython
tcl owtcl
CONTOH
/* Daftar direktori sederhana -- tidak ada pemeriksaan kesalahan */
#termasuk
char yang tidak ditandatangani * buf;
ukuran_t s ;
OW_init("/dev/ttyS0");
OW_set_error_print("2");
OW_set_error_level("6");
OW_get("/",&buf,&s);
printf("Direktori %s0,buf);
gratis (buf);
OW_selesai() ;
Gunakan owcapi online menggunakan layanan onworks.net