mIRCata Posted October 7, 2009 Share Posted October 7, 2009 Мой приятел ме моли да му помогна да напише програма, за един контролер (ARM9 арх), на който ще има линуксче и иска да управлявам ком портовете му. Навсякъде намирам примери изполващи POSIX стандарта, а аз все си мисля, че на това контролерче няма да върви. Смятам да използвам http://www.uclibc.org/ тази библиотека. Та да питам някой може ли да ми предложи подходящо четиво за идеята на програмиране на ком портове под линукс като цяло. Попадам на обяснения, че се гледа на тях като на файлове, с малко по-различна специфика в работа, но всичко е много повърхностно и набързо обяснено. А като по-начинаещ, ми трябва нещо с по-разширени обяснения. Link to comment Share on other sites More sharing options...
Ferante Posted October 8, 2009 Share Posted October 8, 2009 Не мога точно да разбера какво разбираш под програмиране на com? Това, което аз разбирам от написаното, е че искаш да сложиш цяла ОС, за да можеш да четеш и пишеш серийно.... което е меко казано безумно... - ако това ти е идеята - общо взето единственото което ти трябва е да напишеш точно 4 функции + 1 за инициализиране на контролера. Аз мога да е свърша тази работа, но съответно срещу заплащане . Link to comment Share on other sites More sharing options...
mIRCata Posted October 8, 2009 Author Share Posted October 8, 2009 Питам за работа с комове под Линукс, а не предлагам работа. Мен ми е интересно аз да го направя, пари тука не играят. Мислех да не се обяснявам излишно, но ще трябва. Устройството е с тъч скрийн, няколко USB и COM порта и е с инсталиран Линукс. (Може да върви и с Win- там е лесно, ама ми е интересно под Linux как става - това си е нов опит) Не е някое реле дето само ще ми щрака. Четенето и писането на комовете е само началото. на тия комове може да се вържат няколко различни устройства. В зависимост от устройството, ще се четат различни данни и ще се правят различни неща. Та така. Link to comment Share on other sites More sharing options...
iso14496 Posted October 8, 2009 Share Posted October 8, 2009 Пробвайте с това. Link to comment Share on other sites More sharing options...
бат Ицо Posted October 9, 2009 Share Posted October 9, 2009 По сложното е да ги открие като дивайси компортовете. Link to comment Share on other sites More sharing options...
бат Ицо Posted October 9, 2009 Share Posted October 9, 2009 Сетих се още нещо важно! Трябва да си в групата на ползватели на порта. Най добре виж как се казва групата със ls -l /dev/ttyS* едната е root, другата варира според дистрото, uucp, dialout... Link to comment Share on other sites More sharing options...
mIRCata Posted October 12, 2009 Author Share Posted October 12, 2009 Стана. За момента използвам POSIX структурата и функциите за настройка. Даже и прочетох от входа Обаче излезе, че едната команда връща низ с няколко реда, а май четенето ми спира до първия \n. В смисъл че използвам read функцията и или тя спира до първия \n, което ме съмнява - все пак си мисля че си чете до запълване на буфера, който съм подал. А той е по-голям от целия резултат. Или устройството чака няколко пъти да се прочете от него. Или пък не съм настроил нещата както трябва и ми липсва нещо, което да казва да праща данните до дупка без да спира. Понеже с една програмка през конзолата вади всички редове. Довечера ще пробвам с while цикъл да въртя докато read връща резултати, да видим. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.