forum.mcontrollers.com - hlavní stránka forum.mcontrollers.com - fórum

 

.: fórum - hlavní stránka :.
Technology Stronghold by Rudolf Vesely
How to build Microsoft System Center hosted cloud series
FAQFAQ HledatHledat Seznam uživatelůSeznam uživatelů Uživatelské skupinyUživatelské skupiny RegistraceRegistrace
ProfilProfil StatistikaStatistika Soukromé zprávySoukromé zprávy PřihlášeníPřihlášení

 
Převod byte na bin pro mikroC PRO for PIC

 
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip
 
Meloun1
Přispěvatel
Přispěvatel


Založen: 24.12.2015
Příspěvky: 20
Bydliště: Poblíž Zlína

PříspěvekZaslal: 20 únor 2017, 17:35    Předmět: Převod byte na bin pro mikroC PRO for PIC Citovat

Zdravím
Jeden dobrodinec na podobném fóru jako je tento, poskytl tento převod byte - 8 bitů na bin ale já bych potřeboval aby to převedlo 16 bitů.
kód:

void byte_to_bin(unsigned char a, char *str)
{
   char b;

   for (b = 0b10000000; b > 0; b >>= 1) {
      *str++ = a & b ? '1' : '0';
   }
   str = '\0';
}

void main(void)
{

   unsigned char a;
   char str[9];

   a = 253;
   byte_to_bin(a, str);
   printf(str);
}

Zkoušel jsem vše co mě napadlo
kód:

char str[16];
(b = 0b100000000000000

a nic můžete mi poradit jak to upravit?
díky

_________________
Čím víc se učím tak tým víc si uvědomuji že nic nevím meloun a Meloun1 je tatáž osoba
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Balů
Profesionál
Profesionál


Založen: 29.10.2012
Příspěvky: 708

PříspěvekZaslal: 20 únor 2017, 18:47    Předmět: Citovat

To jsi se asi moc nesnažil, co ? Tohle bych řekl, že je celkem dost triviální záležitost.

3 malé nápovědy :
1) z char nikdy 16 bitů nedostaneš ...
2) Ve funkci byte_to_bin stačí upravit 3 místa. Přejmenování funkce na word_to_bin do toho nepočítám.
3) 16 znaků dlouhý řetězec se Ti do char str[16]; nevejde.

Jen nevím, na co Ti bude teplota z čidla v textu v binárním tvaru ...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Mahoney
Profesionál
Profesionál


Založen: 26.12.2013
Příspěvky: 92

PříspěvekZaslal: 20 únor 2017, 19:00    Předmět: Citovat

Jenže on zde vůbec neuvedl co a proč dělá, takže je taky možný že to potřebuje např. do BCD a ani o tom neví. V minulém vlákně to chtěl odesílat přes COM port (takže nejspíš do ASCII) a ani tam si s tím neporadil, notabene když na to stačí úplně jednoduchý cyklus, tady píše že zkusil všechno co ho napadlo - někdy je lepší zkusit Google a / nebo to, co už napadlo někoho jiného. Navíc mám takovej pocit (třeba se pletu), že si v tom čidle ani neumí správně spustit převod, tahle otázka zůstala v minulém vlákně jaksi nakousnutá a ne úplně dořešená - takže co přesně a odkud chce vlastně načítat, převádět a kde na čem to chce zobrazovat?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Meloun1
Přispěvatel
Přispěvatel


Založen: 24.12.2015
Příspěvky: 20
Bydliště: Poblíž Zlína

PříspěvekZaslal: 20 únor 2017, 20:27    Předmět: Citovat

Balů napsal:
To jsi se asi moc nesnažil, co ? Tohle bych řekl, že je celkem dost triviální záležitost.

2) Ve funkci byte_to_bin stačí upravit 3 místa. Přejmenování funkce na word_to_bin do toho nepočítám.

Já vím že se strapnuji která to jsou? díky Embarassed
na Cečku jsem nebyl vychován

_________________
Čím víc se učím tak tým víc si uvědomuji že nic nevím meloun a Meloun1 je tatáž osoba
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Radius
Profesionál
Profesionál


Založen: 22.2.2013
Příspěvky: 450

PříspěvekZaslal: 20 únor 2017, 20:44    Předmět: Citovat

Na céčku jsi nebyl vychován ? Sorry, ale vidím to tak, že si nebyl vychován myslet Wink
_________________
x51 , ARM , XILINX
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu Odeslat e-mail Zobrazit autorovy WWW stránky
 

 
Balů
Profesionál
Profesionál


Založen: 29.10.2012
Příspěvky: 708

PříspěvekZaslal: 21 únor 2017, 0:01    Předmět: Citovat

Meloun1 napsal:
Balů napsal:
To jsi se asi moc nesnažil, co ? Tohle bych řekl, že je celkem dost triviální záležitost.

2) Ve funkci byte_to_bin stačí upravit 3 místa. Přejmenování funkce na word_to_bin do toho nepočítám.

Já vím že se strapnuji která to jsou? díky Embarassed
na Cečku jsem nebyl vychován


V tom by Ti mohl poradit tenhle bod :
1) z char nikdy 16 bitů nedostaneš ...
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Meloun1
Přispěvatel
Přispěvatel


Založen: 24.12.2015
Příspěvky: 20
Bydliště: Poblíž Zlína

PříspěvekZaslal: 21 únor 2017, 8:42    Předmět: Citovat

Smozřejmĕ vím že typ char má jen 8 bitů ale nĕco jako typ word který má 16 bitů tam není ? nebo typ word je s jiného programovacího jazyku to se mi už plete .Tak jaký typ je potřeba ? Dík
_________________
Čím víc se učím tak tým víc si uvědomuji že nic nevím meloun a Meloun1 je tatáž osoba
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Balů
Profesionál
Profesionál


Založen: 29.10.2012
Příspěvky: 708

PříspěvekZaslal: 21 únor 2017, 9:43    Předmět: Citovat

Tuhle otázku jako myslíš vážně ? Co takhle ukázat snahu a vlastní píli a něco si o Cčku nastudovat, když už v něm začneš něco dělat ? Nebo aspoň použít strejdu Googla a něco o Cčku a typech si najít ? Když jsem zadal strejdovi Googlovi dotaz, tak mi vysypal hned v prvních třech odkazech spoustu užitečných informací (víc jsem toho neprohlížel...). Něco jako typ word tam samozřejmě je. A jestli se chceš Cčko naučit, doporučuju "Učebnice jazyka C" od Pavla Herouta.
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

 
Mahoney
Profesionál
Profesionál


Založen: 26.12.2013
Příspěvky: 92

PříspěvekZaslal: 21 únor 2017, 20:03    Předmět: Citovat

No já nevycházím z úžasu. Když někomu, kdo chce poradit někdo napíše, že onen tazatel nedostatečně specifikoval řešený problém a zeptá se ho, co vlastně přesně řeší a za jakých podmínek, tak tvoje odpověď na to je „Já vím že se strapnuji která to jsou?” ?? My tu snad píšeme svahilsky, nebo co...?

S takovýmhle myšlením běž dělat třeba politoligii, a ne technický obor.

A to ještě ani nemluvím o tom, co ti tu psali ostatní. Už snad všichni z vlákna ti slušně sdělili že v podstatě řešíš pitomost a jádro problému jako takového ti uniká, já osobně jsem byl ještě přímější, protože si na zdvořilostní kličkování při řešení technických problémů nepotrpím, protože to spíš škodí - a nic. Jak moc upřímně bys to ještě potřeboval, abys to pochopil? Nebo snad děláš nějaký supertajný teploměr s DS18B20, PICem a LCD a detaily jsou též supertajné a na veřejnost prostě nesmí??

Na co konkrétně potřebuješ šestnáctibitový char? A i kdyby k tomu byl nějaký skutečný důvod - už ti někdo někdy řekl, že word se skládá ze dvou bajtů?

Apropos, už víš co a u čeho je TXREG a jak se přesně chová?
Návrat nahoru
Zobrazit informace o autorovi Odeslat soukromou zprávu
 

Zobrazit příspěvky z předchozích:   
Zobrazit předchozí téma :: Zobrazit následující téma  
Přidat nové téma   Zaslat odpověď    Obsah fóra mcontrollers.com -> Microchip Časy uváděny v GMT + 2 hodiny
 
Strana 1 z 1
Přejdi na:  
Můžete přidat nové téma do tohoto fóra.
Můžete odpovídat na témata v tomto fóru.
Nemůžete upravovat své příspěvky v tomto fóru.
Nemůžete mazat své příspěvky v tomto fóru.
Nemůžete hlasovat v tomto fóru.
Můžete k příspěvkům připojovat soubory
Můžete stahovat a prohlížet přiložené soubory
 



Num Lock Holder - app to hold Numlock
Copyright © 2017 Rudolf Veselý, mcontrollers.com.
Je zakázáno používat části tohoto webu bez souhlasu autora. || Powered by phpBB © 2001, 2002 phpBB Group - with RedSquare DoubleJ(Jan Jaap)