C# till Linux
-
- EF Sponsor
- Inlägg: 2109
- Blev medlem: 27 augusti 2005, 20:57:58
- Ort: Borlänge
C# till Linux
Jag har skrivit ett litet program som kommunicerar med comporten i C#. En del som använder programmet kör dock bara Linux.
Kan någon Linuxguru ge en fingervisning om var man ska börja om man vill göra ett litet program som kommunicerar med comporten i Linux. Eller ska man låta bli? Har aldrig jobbat med Linux men kan en del C-programmering.
Kan någon Linuxguru ge en fingervisning om var man ska börja om man vill göra ett litet program som kommunicerar med comporten i Linux. Eller ska man låta bli? Har aldrig jobbat med Linux men kan en del C-programmering.
Det finns lite om portar i Linux här:
http://www.ibiblio.org/pub/Linux/docs/H ... -se.txt.gz
Om du vill gå på djupet och skriva en egen kerneldriver, så är det inte så förfärligt svårt.
Serieporten är dock icke den allra enklaste. Googla på 'Linux Device drivers'.
Men som speakman säger, kolla först om det finns färdiga lösningar som fungerar.
http://www.ibiblio.org/pub/Linux/docs/H ... -se.txt.gz
Om du vill gå på djupet och skriva en egen kerneldriver, så är det inte så förfärligt svårt.
Serieporten är dock icke den allra enklaste. Googla på 'Linux Device drivers'.
Men som speakman säger, kolla först om det finns färdiga lösningar som fungerar.
Ska man bara kommunicera med serieporten via vanligt serieprotokoll så är det ju inget problem. Men i Linux har alltså inte programmen direkt åtkomst till hårdvaran utan snackar bara med kerneln (som i sin tur snackar med hårdvaran).
Vill man komma åt hårdvaran direkt måste man som sagt var skriva en kernelmodul som ersätter serial-modulen.
Vill man komma åt hårdvaran direkt måste man som sagt var skriva en kernelmodul som ersätter serial-modulen.
-
- EF Sponsor
- Inlägg: 2109
- Blev medlem: 27 augusti 2005, 20:57:58
- Ort: Borlänge
Tack för tipsen. Jag har inte helt förstått mono. Som jag förstår det motsvarar det .NET framework och kan köras på Linux. Så mitt C#-program skulle teoretiskt kunna köras på Linux OM användaren installerar Mono på sin Linux-PC? Måste jag även kompilera programmet på en Linux-PC?
Hursomhelst, steg 1 blir nog att dra igång nån PC med Linux här hemma så jag kan testa. En vanligt terminalprogram skulle kunna duga tills vidare, hittade nån här.
Hursomhelst, steg 1 blir nog att dra igång nån PC med Linux här hemma så jag kan testa. En vanligt terminalprogram skulle kunna duga tills vidare, hittade nån här.
Nej, mono är en Virtual Machine för .Net under Linux. Binärerna är, precis som hos Java, platformsoberoende. Bara att köra igång "mono filnamn.exe" så ska det fungera. Om du inte använt några specialbibliotek som bara finns för Windows än. MS slutade göra generiska bibliotek strax efter 1.0 eller nått. Så det där med plattformsoberoende går ju att diskutera... Men prova för all del!
> Jag har skrivit ett litet program som kommunicerar med comporten i C#.
Någon speciell anledning att inte bygga det i något mer standardiserat ?
Sen är det en sak jag inte förstår...
> En del som använder programmet kör dock bara Linux.
Men då så bör det som du frågar om väl redan vara löst !?
Eller hur gör dom när dom "använder programmet" annars ?
Någon speciell anledning att inte bygga det i något mer standardiserat ?
Sen är det en sak jag inte förstår...
> En del som använder programmet kör dock bara Linux.
Men då så bör det som du frågar om väl redan vara löst !?
Eller hur gör dom när dom "använder programmet" annars ?
-
- EF Sponsor
- Inlägg: 2109
- Blev medlem: 27 augusti 2005, 20:57:58
- Ort: Borlänge
thepirateboy
>Men för att kunna använda hårdvaran fullt ut
> behöver programmet "portas" till Linux.
Gå övrt till mera allmänt användbara programerings miljöer som:
GCC, the GNU Compiler Collection
http://gcc.gnu.org/
Det finns för det flest hårdvaror och operativsystem.
En "portnig" är i många fall endst omkompilering
av källkorden till annat målsystem.
>Men för att kunna använda hårdvaran fullt ut
> behöver programmet "portas" till Linux.
Gå övrt till mera allmänt användbara programerings miljöer som:
GCC, the GNU Compiler Collection
http://gcc.gnu.org/
Det finns för det flest hårdvaror och operativsystem.
En "portnig" är i många fall endst omkompilering
av källkorden till annat målsystem.
-
- Inlägg: 79
- Blev medlem: 22 juni 2006, 16:11:17
- Ort: Lund
- Kontakt:
Vill du skriva program som kan köras på många olika plattformar rekommenderar jag dig att ta en titt på Qt:
http://trolltech.com/
http://doc.trolltech.com/4.4/tutorials-tutorial.html
http://trolltech.com/
http://doc.trolltech.com/4.4/tutorials-tutorial.html
-
- EF Sponsor
- Inlägg: 2109
- Blev medlem: 27 augusti 2005, 20:57:58
- Ort: Borlänge
-
- EF Sponsor
- Inlägg: 2109
- Blev medlem: 27 augusti 2005, 20:57:58
- Ort: Borlänge
Jovisst, det är en fyrkantsvåg-generator som kan styras via PC:n. På hårdvaran finns en FTDI USB-UART krets (virtuell comport). För att ställa om frekvensen på fyrkantsvågen skickar jag några bytes i ett speciellt format.
Det jag vill göra i mjukvaran är att välja comport, välja frekvens (gärna via nåt grafiskt gränssnitt) och skicka iväg detta via USB-UART kretsen. Hårdvaran svarar med "OK" om den mottagit kommandot.
Det jag vill göra i mjukvaran är att välja comport, välja frekvens (gärna via nåt grafiskt gränssnitt) och skicka iväg detta via USB-UART kretsen. Hårdvaran svarar med "OK" om den mottagit kommandot.
-
- Inlägg: 79
- Blev medlem: 22 juni 2006, 16:11:17
- Ort: Lund
- Kontakt: