• Cart0
    Ialt 0.00 DKK
    Your shopping cart is empty!
    Tax:
    Discount:
    Total:

Styr dit eget C-program på pure.box

Bedøm denne artikel
(0 bedømmelser)

Det følgende eksempel er beregnet til at give et overblik over, hvilke skridt der er nødvendige for at udarbejde en C kildetekst for målet platform pure.box, indlæse kompilere ind i feltet og køre det cyklisk. Funktionen af denne prøve er at vende skift tilstand af en udgang på en digital Web-IO gang i minuttet.

Den pure.box giver dit system til at køre skabt compilings ved opstart af systemet, time-drevet, eller når TCP eller UDP data modtages. Følgende biblioteker understøttes:

  • GNU C-Lib v2.1
  • SQLite v3.6
  • OpenSSL v0.9
  • zlib v1.2

Download og installation af Cross-Compiler

En BNU / Linux operativsystem kører i Coldfire processor, der anvendes i pure.box. Den cross-compiler (inkl. Dokumentation) er nødvendig for denne processor / operativsystem kombination kan downloades her uden beregning i Lite version til Windows og Linux. Der henvises til dokumentationen for oplysninger om installation på værten systemet.

Kompilering kildetekst under Windows

Kildeteksten for denne prøve Programmet kan downloades her . Arkivet indeholder C-filen samt den allerede fuldstændig pure.box kompilering ( output_toggle ).

Gem filen output_toggle.c på din harddisk og åbne Windows post prompten. Naviger til den mappe, hvor du tidligere har gemt kilde tekstfil. Følgende kommando skaber indsamling:

m68k-linux-gnu-gcc -mcpu = 54450 -o output_toggle output_toggle.c

Den compiler m68k-linux-gnu-gcc påberåber sig desuden specificere målet platform processortype ( -mcpu = 54450 ). Objektet fil, der skal oprettes specificeres af -o output_toggle . Så du angive C-fil ( output_toggle.c ). Hvis kommandoen held blev henrettet, vil du finde den oprettede programfil output_toggle i samme mappe som den oprindelige kildetekst.

Konfiguration af pure.box

Gem filen output_toggle ved hjælp af FTP eller SMB-signering i mappen med navnet programmer i pure.box. Så følgende konfigurationsmuligheder trin udføres:

Åbn hjemmeside af pure.box ved at indtaste IP-adressen i adresselinjen i din browser.
e-50510-00-pide-000
Vælg Log ind i menuen træet og logge på med dit password i den åbnede dialogboks.
Motherbox dialogboksen login box
Naviger til side Home >> Configuration >> Bruger filer . I filen oversigt klik på mappen med navnet programmer . Filen save_data.php vises.
Motherbox filbrowser
Ved at klikke på ikonet Rediger filegenskaber (venstre siden output_toggle ) åbner dialogen Rediger.
Rediger filegenskaber
Kontroller indstillingen Program . For parametre ind:
  • IP-adressen på Web-IO digital
  • Antal HTTP-porten
  • Kanal for at skifte cyklisk
  • Adgangskode, hvis indstillet

Hvis du ikke har tildelt en adgangskode, påberåber kunne se ud som følger: 10.40.27.10 80 5 ""

Strengefladen sammen af de parametre er identisk med den for direkte konsol påberåber af programmet.

Event kontrol

Check Tidsstyret og sikre, at i hvert af følgende tekst felter en * bemærkes. Som et resultat af denne CRON definition programmet output_toggle køres en gang i minuttet med værdierne angivet under Parametre .

Opbevar den nye indstilling ved at klikke på Gem ... du er færdig!

Event kontrol

Fra nu af Web-IO specificeret i at påberåbe parametre er adgang til ved at pure.box over netværket. Den skifter tilstand angivne output ændres hver gang.

Kildetekst

I de første linjer er angivet de nødvendige header-filer.

# include
 
#include 
#include
#include
#include
#include
#include
#include

Programmet består udelukkende af en hovedfunktion. I begyndelsen er angivet de lokale variable. De sendte ved at passere parametrene værdier er derefter output. Denne udgang er undertrykt af pure.box hver gang cyklus starter, som dog er meget nyttigt i udviklingsfasen, når programmet også køre lokalt på PC'en.

int main(int argc, char **argv) {
  int handle;
  char command[128];
  struct sockaddr_in remote;

  printf("address: %s\r\n",argv[1]);
  printf("port: %i\r\n",atoi(argv[2]));
  printf("channel: %i\r\n",atoi(argv[3]));
  printf("password: %s\r\n",argv[4]);

  ...

}

Så kommandoen for at skifte output er konstrueret og gemmes i variablen kommandoen .

sprintf(command, "GET /outputaccess%i?PW=%s&State=TOGGLE&\r\n", atoi(argv[3]), argv[4]);

håndtag holder soklen hvorigennem kommunikation med Web-IO finder sted. Hvis dette ikke kan oprettes, er programmet forlades.

handle = socket(PF_INET , SOCK_STREAM , 0);
if(socket 0) {
printf("Socket cannot be created\r\n");
exit(-1);
}

Oprettelse af forbindelse slutpunkt og oprettelse af forbindelsen. Hvis der opstår en fejl, er programmet forlades.

inet_aton(argv[1], &remote.sin_addr);
remote.sin_family = AF_INET;
remote.sin_port = htons(atoi(argv[2]));
if(connect(handle, (struct sockaddr *) &remote, sizeof(remote)) != 0) {
printf("Connection cannot be established\r\n");
exit(-1);
}

Den tidligere bygget kommandostreng sendes til Web-IO gennem den åbnede forbindelsen.

if(send(handle, (const void *)command, sizeof(command), 0) == 0) {
printf("Error at sending data\r\n");
}

Afbryde forbindelsen og korrekt afslutte programmet.

close(handle);

exit(0);

Programkørslen er gennemført og afsluttes. Den genstartes ved næste kørsel tidspunkt og kører igen rutinerne som beskrevet ovenfor.

Resumé

Ved hjælp af simple betyder pure.box kan bruges som en bærer af dine egne C og C ++ programmer. Meget komplekse opgaver kan styres ved at få adgang til netværket og det interne filsystem.

 

Læst 524 gange Senest ændret tirsdag, 23 april 2019 02:03

Skriv en kommentar

Vær sikker på, at du indtaster al krævet information, markeret med en stjerne (*). HTML kode tillades ikke.