| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Custom baudrate за COM-овете...може ли? http://mcu-bg.com/mcu_site/viewtopic.php?f=16&t=5770 |
Страница 1 от 1 |
| Автор: | tolstolob [ Сря Май 07, 2008 9:10 pm ] |
| Заглавие: | Custom baudrate за COM-овете...може ли? |
Здравейте, Възможно ли е да работя с моя стойност за бодрейта при комуникация по КОМ? Като задам крива стойност в моя апликейшън и при опит да се вържа с РС-то, гръмва с exeption. Предложения? |
|
| Автор: | ¶ [ Сря Май 07, 2008 9:17 pm ] | |||||||||
| Заглавие: | Re: Custom baudrate за COM-овете...може ли? | |||||||||
Каква ОС използваш ? |
||||||||||
| Автор: | tolstolob [ Сря Май 07, 2008 9:38 pm ] |
| Заглавие: | |
Win XP |
|
| Автор: | gicho [ Сря Май 07, 2008 11:07 pm ] | |||||||||
| Заглавие: | ||||||||||
Много зор работата (под XP). Драйверът на виндоуса (serial.sys) не поддържа нестандартни бодове. За някаква диагностична програма за автомобили имаше пачнат този драйвер и поддържаше нещо повече, но не знам дали е било всякякъв бод рейт или просто са добавили и този, които им трябва на тях, мисля 41.6 kbps. Можеш просто да ползваш един външен микроконтролер с два uart-а или с USB и UART и той да прави конверсия на скоростите. Не знам как стои въпросът с УСБ към COM адаптерите - май FTDI чиповете (и техните драйвери) поддържаха повече скорости - някой дето ги е мъчил по-скоро да каже дали беше така. Можеш да пробваш да прекомпилираш serial.sys-a ( в DDK-то му има сорса) и да добавиш тази функционалност - ако се навиеш да го правиш, разчитай на съпорт и определено ще е полезно на доста хора. ЕДИТ: Цитат от сорса на \kernel\serial\ioctl.c: (интересното е в края)
Във файла initunlo.c са описани ( в кода на функцията SerialInitController() ) поддържаните бод рейтове, по-точно там се тестват дали са постижими и се маркират. Дефинирани са в ntddser.h. Сега не ми се рови повече, но ако мога да помогна и варианта с подмяна на serial.sys те устройва, пиши. |
||||||||||
| Автор: | Lupus [ Сря Май 07, 2008 11:19 pm ] |
| Заглавие: | |
какво налага ползване на нестандартни скорости? |
|
| Автор: | tolstolob [ Сря Май 07, 2008 11:35 pm ] |
| Заглавие: | |
MIDI комуникация (31250 bps). Значи по-конкретно защо: имам два комуникационни канала, единия е MIDI (вход през оптрон), другия си е RS232, на същата скорост. Лошото е, че тези два канала са на един UART (щото нямам друг в наличност). Освен това, искам RS232-то да може да си говори и с РС, а то явно се оказва трудна задача при тези условия... |
|
| Автор: | Zdrav [ Чет Май 08, 2008 7:17 am ] |
| Заглавие: | |
При виртуалния COM порт на FTDI, можеш да зададеш твоя стойност за baudrate. |
|
| Автор: | ps66 [ Чет Май 08, 2008 7:32 am ] |
| Заглавие: | |
в 99.9% от случайте COM-а е реализиран с нещо от рода на 8250/16cX50 - което ще рече че могат да се се поддържат 65535 възможни стойности: 1.8432Mhz/16/i bps или 115200/i bps където i = 1...65535 така че всичко зависи от кварца (обикновенно нещо като 1.8432 MHz) някои UART ползеат 4/8/16 пъти по-висок клок - но това са нестандартни решения ... мисля че е ясно че няма как да се поддържат други скорости освен физически възможните (с промени в serail.sys) що се отняся до USB->RS232 - то и там е въпрос на кварц - но просто производителя може да сложи какъвто си иска (може дори да го направи софтуерен (пази боже |
|
| Автор: | Реконструктор [ Чет Май 08, 2008 9:12 am ] | |||||||||
| Заглавие: | ||||||||||
Точно това си мислех и аз - май няма как да се направи универсален драйвер, който да работи на всякакъв хардуер... |
||||||||||
| Автор: | gicho [ Чет Май 08, 2008 3:24 pm ] |
| Заглавие: | |
То ясно, че хардуерно непостижимите няма да станат, въпроса е че има доста възможни бод рейтове, които просто не са позволени в драйвера. Отделно макс допустимата грешка в проверката е 1%, в някои случаи може да си позволиш повече. А за миди-то - ми то на на звуковите карти си има миди сериен порт, който обикновено е изведен на гейм (джойстик) конектора? Не може ли да се ползва той, сигурно поддържа тая скорост http://www.allpinouts.org/index.php/PC_MIDI_+_game_port - пинове 12 и 15 са TX и RX съответно. |
|
| Автор: | tolstolob [ Чет Май 08, 2008 4:15 pm ] |
| Заглавие: | |
^ Идеята за модване на драйвера най ми допада, но за мен тези занимания минават в графата "висш пилотаж":) Междувременно се сетих как ще си реша проблема без да се налага нито една от предложените гимнастики, но е силно "платка-specific" и няма да представлява интерес за никого... Благодаря за идеите и наздраве |
|
| Автор: | juzisound [ Пет Май 09, 2008 12:26 am ] |
| Заглавие: | |
Свържи се с мен на. Доста съм напред с мидито... Търси по името... |
|
| Страница 1 от 1 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|