| Автор |
Съобщение |
|
sukhoi
Ранг: Напреднал
Регистриран на: Чет Авг 21, 2008 2:52 pm Мнения: 476 Местоположение: Пловдив
|
 Изобразяване на '.' на терминала
Здравейте и за много години,
сътворих една програмка на МикроС за АЦП и искам да изкарам напрежението на терминала.Добре.. всичко става но не мога да намеря начин да изобразя точка и тя да се появи когато отметката е на decimal а не на ASCII.Помогнете моля, как става това кодиране или по принцип как става. Тъп въпрос ама..
|
| Пон Яну 05, 2009 9:31 pm |
|
 |
|
kiiid
Ранг: Почетен член
Регистриран на: Съб Сеп 24, 2005 2:00 pm Мнения: 787
|
Не знам за другите, ама за мен въпроса не е тъп а неясно формулиран... 
|
| Вто Яну 06, 2009 1:30 am |
|
 |
|
sukhoi
Ранг: Напреднал
Регистриран на: Чет Авг 21, 2008 2:52 pm Мнения: 476 Местоположение: Пловдив
|
ситуацията е следната
примерно имам напрежение 3.125V. Когато отметката в терминала е сложена на decimal ще излизат само числата но не и ASCII кодовете. Как да направя така че терминала да отчете въпросната точка като decimal кодирана а не ASCII
|
| Вто Яну 06, 2009 6:08 pm |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Я не пиши глупости ами като бял човек си прати каквото искаш да излиза във вид на стринг.
|
| Вто Яну 06, 2009 6:42 pm |
|
 |
|
RM
Ранг: Почетен член
Регистриран на: Нед Окт 19, 2008 7:26 pm Мнения: 673
|
Точката се кодира така.
hex=2E
dec=46
ACCII=.
Всичко това е едно и също.
Ако пратиш 0x2Е и настроиш терминала да изобразява ASCII ще се появи точка.
Ако настройш терминала да приема HEX ще се появи 2E.
Ако настройш терминала да изобразява десетични знаци ще се появи 46.
Ако пратиш към терминала 26,5 (dec) тогава трябва да преобразуваш int към ASCII
най грубо казано добавяш 0x30(hex) към всяка цифра от числото, и получаваш ASCII знаците
нещо от сорта 0x32,0x36,0x2E,0x35.
Тъпо ама е някак така.
|
| Вто Яну 06, 2009 10:02 pm |
|
 |
|
sukhoi
Ранг: Напреднал
Регистриран на: Чет Авг 21, 2008 2:52 pm Мнения: 476 Местоположение: Пловдив
|
Това което искам е когато съм настроил терминала да изобразява десетични стойности (decimal) да може да изобрази точка. Това е което искам . Нищо повече.  . Кода го изтрих за съжаление , на негово място записах друга програма
|
| Сря Яну 07, 2009 8:34 am |
|
 |
|
ps66
Ранг: Форумен бог
Регистриран на: Пет Яну 19, 2007 9:16 am Мнения: 1063 Местоположение: путинофили: "иди н***й"
|
мъъъъъка, .... мъка 
|
| Сря Яну 07, 2009 10:31 am |
|
 |
|
RM
Ранг: Почетен член
Регистриран на: Нед Окт 19, 2008 7:26 pm Мнения: 673
|
Според мен трябва да напишеш нова терминална програма.
|
| Сря Яну 07, 2009 11:04 am |
|
 |
|
Cekins
Ранг: Форумен бог
Регистриран на: Сря Апр 20, 2005 12:02 pm Мнения: 9119 Местоположение: Разград
|
Ми той терминала от къде пък ще знае че пращаш именно Float и трябва да си слага и точката сам даже  А и по какъв начин е кодиран флоата - щото има различни. Виж ако сам си напишеш терминал ще ти се получи.
|
| Сря Яну 07, 2009 2:15 pm |
|
 |
|
RM
Ранг: Почетен член
Регистриран на: Нед Окт 19, 2008 7:26 pm Мнения: 673
|
sukhoi
Мисля че трябва да си припомниш някой основни понятия.... (що е цифра, число, буква)
Без лоши мисли!!!!
|
| Сря Яну 07, 2009 2:42 pm |
|
 |
|
sukhoi
Ранг: Напреднал
Регистриран на: Чет Авг 21, 2008 2:52 pm Мнения: 476 Местоположение: Пловдив
|
разбира се че не съм навътре в тези работи ...
това число не го пращам като float, а като отделни цифри. 3.125
Искам точката да се изобразява на decimal без да се налага да минавам на ASCII
Брей толкова сложен въпрос ли зададох?
Май не ме разбрахте
|
| Сря Яну 07, 2009 7:02 pm |
|
 |
|
ji4ka
Ранг: Форумен бог
Регистриран на: Чет Фев 01, 2007 4:04 am Мнения: 1539
|
И какъв ти е проблема преди да ги пратиш цифрите да ги преобразуваш в ASCII? Питаш "как се прави" - ми така се прави, казаха ти го вече няколко пъти. Иначе си ги смяташ в миливолти без точки, все тая.
|
| Сря Яну 07, 2009 7:16 pm |
|
|