Anonymní profil Pat – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Pat – Programujte.comAnonymní profil Pat – Programujte.com

 

Příspěvky odeslané z IP adresy 89.103.90.–

TD
.NET › Řetězec nemá správný vstupní…
20. 3. 2016   #209363

Popripade prosim o radu jakym efektivnim spusobem pri c# nahradit Cečkovské scanf(); Dekuju ide o spracovani predem daneho řetezce a prideleni vnitřních dat napr do prograssbaru alebo Label. Dekuju

TD
.NET › Řetězec nemá správný vstupní…
20. 3. 2016   #209362

Dobrý večer, Mam takový dotaz. Mam v c#  form aplikaci a stale mi to při try
catch (ochytavani vynimek) vypisuje chybu : Řetězec nemá správný vstupní formát. Skoušel sem to debugovat ale stale nemožen najit tu chybu.Jak vstupný řetezec je posilany po serové komunikaci.  Dekuju moc za každou radu :)

        private void set_axis(string text)
        {
            try  //ošetreni chyb
            {

                if (this.X_progressBar.InvokeRequired)
                {
                    SetTextCallback d = new SetTextCallback(set_axis);
                    this.Invoke(d, new object[] { text });
                }
                else
                {
                    str += text;
                    int i1 = str.IndexOf("BEG");
                    int i2 = str.IndexOf("BEG", 1 + i1);
                    if ((-1 != i1) && (-1 != i2))
                    {
                        string current = str.Substring(0, i2);
                        current = current.Substring(current.IndexOf("BEG"));
                        str = str.Substring(i2);

                        int beg_index = current.IndexOf("BEG");
                        int x_index = current.IndexOf("X");
                        int y_index = current.IndexOf("Y");
                        int z_index = current.IndexOf("Z");

                        if ((0 != beg_index) || (3 != x_index) || (-1 == y_index) || (-1 == z_index))
                        {//Error XXX ,beg_index = XXX , x_index = XX , y_index = XX , z_index = XX
   MessageBox.Show("Error " + current + ", beg_index = " + beg_index.ToString() + ", x_index = " + x_index.ToString() + ", y_index = " + y_index.ToString() + ", z_index = " + z_index.ToString());
                            return;
                        }

                        int x = Convert.ToInt32(current.Substring(x_index + 1, y_index - x_index - 1));
                        int y = Convert.ToInt32(current.Substring(y_index + 1, z_index - y_index - 1));
                        int z = Convert.ToInt32(current.Substring(z_index + 1));

                        if (x > X_progressBar.Maximum) x = X_progressBar.Maximum;
                        if (y > Y_progressBar.Maximum) y = Y_progressBar.Maximum;
                        if (z > Z_progressBar.Maximum) z = Z_progressBar.Maximum;

                        if (x < X_progressBar.Minimum) x = X_progressBar.Minimum;
                        if (y < Y_progressBar.Minimum) y = Y_progressBar.Minimum;
                        if (z < Z_progressBar.Minimum) z = Z_progressBar.Minimum;

                        X_progressBar.Value = x;
                        Y_progressBar.Value = y;
                        Z_progressBar.Value = z;
                    }
                }

            }
            catch (Exception x)
            {
                MessageBox.Show(x.Message.ToString());
            }
        }
TD
.NET › c# tvorba dll z class
7. 3. 2016   #209163

Neporadi lebo už sem to tady daval vic krát a nidko nikdo s tym nevedel rady :( a daval sem to už na vicere fora a nikde nic

TD
.NET › c# tvorba dll z class
7. 3. 2016   #209159

Zdar,  Netuší nekdo jak s tehoto spravyt dll aby sa to pridalo do toolbogu alebo aspon každe jedno dat na zvlašt form pomoci pictureboxu aby to nejak fungovatlo? trtkám sa s tym asi 3 tydne a prd. DIk za každu radu

http://www.codeproject.com/Articles/27411/C-Avionic-Instrument-Controls
TD
.NET › zamzrani Serveru TCP/IP
28. 2. 2016   #208963

no prave že u tehotoi sa mi podarylo snad vychytat všetko okrem teho zamrzana a to je to cos napsal asi

TD
.NET › zamzrani Serveru TCP/IP
27. 2. 2016   #208925

 Zdravím :) diky za super rady preštudujem to ale tady postujem asi najlepší kod ktery sa mi podaryli :) neukamenujte ma ked to bude moc zle sem v c# total začatečnik. Diky za každu radu :)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

using System.Net;
using System.Net.Sockets;
using System.IO;

namespace Zeus
{
    public partial class Form4_TCP_SERVER : Form
    {
        private TcpClient client;
        public StreamReader STR;
        public StreamWriter STW;
        public string receive;
        public string text_to_send;


        public Form4_TCP_SERVER()
        {
            InitializeComponent();

            IPAddress[] localIP = Dns.GetHostAddresses(Dns.GetHostName());  //získat vlastní IP
            foreach (IPAddress addres in localIP)
            {
                if (addres.AddressFamily == AddressFamily.InterNetwork)
                {
                    textBox_IP.Text = addres.ToString();  //po načitani IP zapisani do textboxu
                }
            }
        }


        private void click_connect(object sender, EventArgs e)  // tlačitko na aktivovani serveru
        {
            try
            {
                if (textBox_Port.Text == "" || textBox_IP.Text == "") // ošetreni ked neni zadane jedna z dvoch veci bud IP alebo port
                {
                    MessageBox.Show(this, "Trotle zvol Port alebo IP adresu.", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);  //vypisani vyskakujuceho okna
                }
                else
                {

                    TcpListener listener = new TcpListener(IPAddress.Any, int.Parse(textBox_Port.Text));  // dva radky na zahajeni komunikace po TCP/IP naslouchani
                    listener.Start();
                   
                    
                    client = listener.AcceptTcpClient();

                    STR = new StreamReader(client.GetStream());
                    STW = new StreamWriter(client.GetStream());
                    STW.AutoFlush = true;


                    backgroundWorker1.RunWorkerAsync();                     //zahájení příjmu dat
                    backgroundWorker2.WorkerSupportsCancellation = true;    //Možnost zrušit toto vlákno
                }
            }
            catch (UnauthorizedAccessException)
            {
                MessageBox.Show(this, "Neautorizovany pristup.", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
    

        private void click_send(object sender, EventArgs e)
        {
            if (textBox_send.Text == "")
            {
                MessageBox.Show(this, "Nejsou zadané žadne parametry na poslaní.", "WARNING", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            }
            else
            {
                text_to_send = textBox_send.Text;
                backgroundWorker2.RunWorkerAsync();
            }

            textBox_send.Text = "";
        }

        private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
        {
            while (client.Connected)
            {
                try
                {
                    receive = STR.ReadLine();
                    this.textBox_message.Invoke(new MethodInvoker(delegate() { textBox_message.AppendText("You : " + receive + "\n"); }));
                    receive = "";
                }
                catch (Exception x)
                {
                    MessageBox.Show(x.Message.ToString());
                }
            }
        }

        private void backgroundWorker2_DoWork(object sender, DoWorkEventArgs e)
        {
            try
            {

                if (client.Connected)
                {
                    STW.WriteLine(text_to_send);
                    this.textBox_message.Invoke(new MethodInvoker(delegate() { textBox_message.AppendText("Me : " + text_to_send + "\n"); }));
                }
                else
                {
                    MessageBox.Show("send failed!");
                }
                backgroundWorker2.CancelAsync();
            }
            catch (Exception x)
            {
                MessageBox.Show(x.Message.ToString());
            }
        }

        private void Click_clear(object sender, EventArgs e)
        {
            textBox_message.Clear();
        }


      }
}
TD
.NET › zamzrani Serveru TCP/IP
25. 2. 2016   #208887

ešte take doplnujuce mam videro verzii programu a u každeho je nejaka vada na kteru nemožu dojit u jedneho pracuju cez backgroundworker .... a u dalšich cez Thread
 

TD
.NET › zamzrani Serveru TCP/IP
25. 2. 2016   #208886

Ahojte, stretel sa nekdo s tym že ked pisal server pro TCP/IP komunikaci se "soketama" tak mu to zamrzalo? dočital sem sa na nete že to je tym že ked čekam na klienta musim čekat v jinem vlakne. ale ni to mi nejak moc nepomohlo. nemate nekdo odkaz na nejaky dobry tutorial kde je to dost dobre vysvetlene? našel sem same nedokonale a nedotahnute dokonca. Keby sa mi podarylo spravit fungujuci program na Server aj Client rad bych na to napisal nejaky važne prehladny tutorial s najčastejšíma chybama. Diky

Pat
.NET › Avionics Instrument Control…
17. 2. 2016   #208724

Tak henten navod sem taky už mnel davno najity. ale jak to skomprimovat do dll v VS2013 s novyma frameworkama to je otazka...

Pat
.NET › Avionics Instrument Control…
17. 2. 2016   #208701

o to sa snažim už asi tyden :D nemožem dojit na spusob jak to dostat do toolboxu(asi) tu komponentu stalo to chce nejaku dll knižnicu kteru nedokažem najit a/alebo vytvorit sem total Lama na to asi. TO je na mna jiny level vždy sem robil len take lachšie programky.

Pat
.NET › Avionics Instrument Control…
16. 2. 2016   #208694

jo mam ked to otevrem ten projekt tak jak to je tak to ide .... ale ked to chcem použit v mojem vetšim projekte že tam chcem vložit len jeden z tychto všetkych tak mi to nejde. Vyhodi to taku škaredu tabulku.

Připojen obrázek.

Pat
.NET › Avionics Instrument Control…
16. 2. 2016   #208674

Nemate nekdo skusenosti s tym aby fungovalo s visual studio 2013 a na framework 4.0 alebo 4.5 ?

http://www.codeproject.com/Articles/27411/C-Avionic-Instrument-Controls .... Hadže to milion erroru a ani po dvoch dnoch googlena a experimentovana sem nedošel nato co s tym je. Diky za každu radu :) nejde mi o to mat presne toto ale neco na tento štyl len :)

jožkuuuu
.NET › Dva a vic formu
12. 2. 2016   #208561

Ahojte, mam dotaz že ked vytvram aplikaciu kde pracuju s vicero Formama. Ked vytvorim instanci noveho formu a zavolam form.show(); na novy tak nechcem cez hide ten stary skovaš ale totalne zrušit ale ked dam close(); tak totalne zmyznu obydva ... nevite jak to vyřešit?

jožkuuuu
C / C++ › generator kodu
8. 2. 2016   #208500

ide o sutaž s čoklady :D a len to z nudy skušam :D  ide mi o to skorej to skusit  naprogramovat a zlepšit svuj obzor než o tu sutaž :D vyhry su tam kraviny :D šetrič obrazovky a tak ... :D

jožkuuuu
C / C++ › generator kodu
8. 2. 2016   #208497

BKX9XLGWR3
ZD7X9JDHGX
JSZPNRT9ZH
RD797X4K7M

Mam napriklad taketo kody zadane :)

jožkuuuu
C / C++ › generator kodu
8. 2. 2016   #208495

Toš zduř :)

Mam dotaz dostal sem za ukol spravit generator kodu a absolutne netuším jak začat . Podminka je že mam zadane 4 kodove čisla a ja musim zistit jejich suvislost jak byly generovane a mam vygenerovat další s rovnaku posloupnosti. Za každy napadat velke dik :)

Jurko
Mikrokontroléry › Prevod pole char na int
8. 12. 2015   #207153

Dekuju Hu :) už to ide :) dobry napad to spravit cez ten znak :)

Jurko
Mikrokontroléry › Prevod pole char na int
7. 12. 2015   #207125

Dobry večer :) Prosim o pomoc trocha som sa zasekol a neviekm naist chybu a už do toho pozeram asi tri hodiny: 

int strida(char *str,int vstup)
{
 str += vstup;
  unsigned hodnota = 0;
  while (*str != ',') {
    hodnota = hodnota*10 + *(str++) - '0'; 
  }
  return hodnota;
}

Mam pole charu kde su čuzne dlha unsigned hodnotu ... pole bude naplnene random počtem hodnot ale ich rozsah je od 000 do 255 .... vždy ale v tvare 010,205,101,001,006,205.....

ide o to aby to načitalo vždy čisla do int vstupny parameter je ukazatel na pole a poradi začinajuceho prvku ... odelene su vždy čiarkou.Hadže to random hodnoty :/ a občas aj zaporne :D testoval sem to na  

unsigned a=0;
char txt[32];
char pom[32];
a=strida(pom,5);
b=strida(pom,9);
sprintf(txt,"%d,%d",a,b);

// pom obsahuje napr <X,Y,005,105> .... X a Y su jednoynakove pismenka proste char


Dakujem za každu radu ...

johny
Mikrokontroléry › MEGA8 UART prerušení
24. 11. 2015   #206687

Ked to robim v PC tak v pohode si spravim nejake enum s stavama a potom postupujem v stavoch a prepinam to ale nevím si to predstavit v procesore.

johny
Mikrokontroléry › MEGA8 UART prerušení
22. 11. 2015   #206615

nedalo by sa to spravit cez atoi() ??  Stavovy automat v main by byl celkem užitečny ale jak zapisal programovo ? cez switch?

johny
Mikrokontroléry › MEGA8 UART prerušení
22. 11. 2015   #206612


temp = temp*10 + ch - '0';
nac tam presne toto prosimta? a nebude to len čislo bude tam aj znaky kere určuju smer ide o ovladani motorku.

toust
Mikrokontroléry › Spracovani stringu poslaneho…
22. 11. 2015   #206611

uprimne povidane nidky sem pro uC neprogramoval anevim jak to vnutri nich presne funguje jak pracovat a pametama ked tam mam EEPROM, FLASH a RAM ... a ked sem programoval pro PC tak if byla moja jedina  volba společne s for..... switch sem nikdy v živote v žadnem projekte nepožil

johnny
Mikrokontroléry › MEGA8 UART prerušení
21. 11. 2015   #206585

čago belo :D Mam taky problem že sem nejaky zmateny s spracovana stringu pri primany.Jak by ste mi doporučili spravovata pomocou preušena prijem nejakeho retazca? potrebujem posilat z PC do uC  čislo od 0-255  jak střidu pro PWM. nech si ten uC jede svuj život a ked zrazu dojdu nejaky znak alebo čislo nech sa prispusoby a potom nech zas jede dal ?? Dekuju

toust
Mikrokontroléry › Spracovani stringu poslaneho…
14. 11. 2015   #206371

Takže bude vyhodnejšíe to spravit len cez unsigned char? a žadny efektivny cyklus mna nenapadel toto je naefektivnejí a fungujuce co mna napadlo.

toust
Mikrokontroléry › Spracovani stringu poslaneho…
14. 11. 2015   #206367

čaute borci :) potreboval bych poradit kde robím chybu prosim, C sem sa učil prevažne na PC takže netuším co všetko si možem dovolit pri programovaci pre AVR da to niekde naist? plus kde robím chybu v tomto programe?  

#include <avr/io.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#include <stdio.h>
#include <string.h>
#include <inttypes.h>
#include "find.h"


unsigned char zisti(char *str)
	{

	unsigned char stav;

	if(('A' == str[0]) & ('A' == str[1]))stav = 1;
	if(('A' == str[0]) & ('B' == str[1]))stav = 2;
	if(('B' == str[0]) & ('A' == str[1]))stav = 3;
	if(('B' == str[0]) & ('B' == str[1]))stav = 4;

	return stav;
}

int8_t strida(char *str)
	{

	int8_t a = 0, b = 0, c = 0, d = 0;
	
	if('1' == str[2])a = 100;
	if('2' == str[2])a = 200;
    else a = 0;

	//if('3' == str[2])a = 300;
	//if('4' == str[2])a = 400;
	//if('5' == str[2])a = 500;
	//if('6' == str[2])a = 600;
	//if('7' == str[2])a = 700;
	//if('8' == str[2])a = 800;
	//if('9' == str[2])a = 900;
	

	if('1' == str[3])b = 10;
	if('2' == str[3])b = 20;
	if('3' == str[3])b = 30;
	if('4' == str[3])b = 40;
	if('5' == str[3])b = 50;
	if('6' == str[3])b = 60;
	if('7' == str[3])b = 70;
	if('8' == str[3])b = 80;
	if('9' == str[3])b = 90;
	if('0' == str[3])b = 0;

	if('0' == str[4])c = 0;
	if('1' == str[4])c = 1;
	if('2' == str[4])c = 2;
	if('3' == str[4])c = 3;
	if('4' == str[4])c = 4;
	if('5' == str[4])c = 5;
	if('6' == str[4])c = 6;
	if('7' == str[4])c = 7;
	if('8' == str[4])c = 8;
	if('9' == str[4])c = 9;

	d = a + b + c;

	if(d > 255)d = 0;

	return d;
	}


Ty zakomentovane časti mi piše že preteka kedže vim že uint8_t ma max 255 ... takže bych mal použit uint16_t ??aj ked použivat procesot atmega8? osmibitovy? potrebujem pri poslani stringu znaku uloženych do pola :

Připojen obrázek.

potrebujem rozoznač či je zadane AA,AB,BA,BB ... a čislo od 0-255 . Dekuju

TD
Mikrokontroléry › Mega8 UART prijem string
23. 10. 2015   #205842

no ty RX mam takto  

#define RX_UKONCENE 1
#define RX_NEUKONCENE 2


a ked sem upravil main tak mi to funguje ...  

while(1){  
        
        if(uart_gets(pole)){  
        
       lcd_clrscr();
        lcd_gotoxy(0,0);
	   lcd_puts(pole);
       uart_puts(pole);
	   
        }     
    }  

Nejak nechapem vaše myšlenkove pochody kde tam mam neco zle

TD
Mikrokontroléry › Mega8 UART prijem string
23. 10. 2015   #205819

Zdravím, Mam menší problem s primem alebo s uloženim retazcem stringu do pole kere dalej možem v main využit a spracovavat. Ked primam jeden char tak to ide ale ked chcem prijat retazek už to nerobí nic. sem  koncoch :/ a sem začatečnik robil sem to pomocou datasheetu plus neco z netu tak ked to bude cele zle snad ma neukamunejete

    #include <avr/io.h>  
    #include <util/delay.h>
	#include <stdlib.h>
	#include <stdio.h>    
    #include <avr/interrupt.h>  
      
    #include "uart.h"
	#include "lcd.h"  
      
    int main(){  
          
		  char pole[16];
		  char text[32];
        
        uart_init(4800);
		lcd_init(LCD_DISP_ON);  
      
        lcd_clrscr();
	    lcd_gotoxy(0,1);
        lcd_puts(" Funguju a Ahoj");
	    _delay_ms(2000);
        lcd_clrscr();



        while(1){
		  
            uart_getc(pole);

            sprintf(text,"hodnota:%c",pole);  
            lcd_clrscr();  
            lcd_gotoxy(0,0);  
            lcd_puts(text);
			_delay_ms(2000);
			 
        }  
      
        return 0;  
    }  
ISR(USART_RXC_vect)
{

	
	if (rx_pos == BUF_SIZE) rx_pos = 0;

	if(rx_stav != RX_UKONCENE){
		
		rx_buff[rx_pos] = UDR;	
	
		//ak prisiel ukoncovaci znak
		if ((rx_buff[rx_pos] == '\r')|(rx_buff[rx_pos]=='\n')){	
			rx_buff[rx_pos+1] = '\0';	
			rx_stav = RX_UKONCENE;	
		}else{			
			rx_pos++;	 
		}
	}
}
unsigned char uart_gets(char* rx_pole){
	
	if(rx_stav == RX_UKONCENE) {
		strcpy(rx_pole, rx_buff);
		rx_stav = RX_NEUKONCENE;
		rx_pos = 0;
		
		return 1;	

	}else{
		rx_pole = 0;
		return 0;	
	}

}

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý