|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 11:01 am
|
Страница 1 от 1
|
[ 15 мнения ] |
|
| Автор |
Съобщение |
|
bigboy
Ранг: Минаващ
Регистриран на: Чет Май 19, 2005 12:43 pm Мнения: 27 Местоположение: София
|
 Пращане на byte?
Здравейте,
Искам малко помощ как да предам един байт серийно от един на друг пик ( например между две 12-ки) без да използвам някакъв протокал от сорта на I2C, RS232 и др. Просто да прехвърля байта по един проводник. В "CCS C" има разни примери, ама само за протоколите.
За да съм точен ме интересува не само как да го пратя, но и как да го приема.
Последна промяна bigboy на Съб Ное 05, 2005 8:09 pm, променена общо 1 път
|
| Съб Ное 05, 2005 7:33 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30684 Местоположение: София
|
Е ... то не ползваш протокол няма как да сатне, каквото и д анаравиш то ще е протокол щом предаваш данни. Ползвай софтуерен RS232 ако има време за това, друг вариант по един проводник е 1-wire протокола, ама то с RS голяма разлика нема.
Ако имаш два пина вече си отиваш на SPI ....щото SPI си е точно подаване на клок и дата.
ако искаш максимално бързо предавай го паралелно  , то няма как все някак тия нули и единицки от единиа трябва да отидат до другия.
Естествено има и други методи, но те са сходни с горните, примерно нулата ти е импулс х а единицата импулс 2х ....ама не знам струва ли си да се мориш с такива упражнения в твоя случай, това се ползва ако няма как да синхронизираш с клок и не може да си сигурен че двтата ще имат стабилна честота за да ползваш RS232. Мначестър също е само синхронизиращ се код .....
|
| Съб Ное 05, 2005 8:03 pm |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
RS232, ako ти е свободен модулът. По-лесно няма.
|
| Съб Ное 05, 2005 8:06 pm |
|
 |
|
bigboy
Ранг: Минаващ
Регистриран на: Чет Май 19, 2005 12:43 pm Мнения: 27 Местоположение: София
|
Абе момчета, не може да не става, защото съм виждал устройства ( едното предавател, а другото приемник-например за аларма за кола), невиждам разлика дали сигнала ще мине по жица или не, ще то във втория случай само са добавени модулатор и демодулатор(ВРЪЗКАТА Е ЕДНОПОСОЧНА ! КАКЪВ ПРОТОКОЛ ВИЖДАТЕ ТУК! НЯМА И ТАКТОВ СИГНАЛ!
|
| Съб Ное 05, 2005 8:34 pm |
|
 |
|
Gogo
Ранг: Форумен бог
Регистриран на: Чет Фев 24, 2005 11:41 pm Мнения: 1049 Местоположение: Pz
|
Ами ако някой китаец ти каже нещо на китайски, дали ще го разбереш? Да не говорим, че има и няколко вида китайски. За да го разбереш, трябва да ти го каже на език, който разбираш. Е тва е протокол... без значение дали връзката е еднопосочна или трипосочна  Протокол винаги има (някакъв).
|
| Съб Ное 05, 2005 8:51 pm |
|
 |
|
vasil
Ранг: Новодошъл
Регистриран на: Пет Ное 26, 2004 7:35 pm Мнения: 108 Местоположение: София
|
Най добре да дефинираш какво за теб означава " протокол ".Лично аз за такива нужди ползвам UART ( всеки контролер го има )
|
| Съб Ное 05, 2005 8:52 pm |
|
 |
|
bigboy
Ранг: Минаващ
Регистриран на: Чет Май 19, 2005 12:43 pm Мнения: 27 Местоположение: София
|
Ами, доколкото съм учил, протокол е набор от правила по които се предават данните, за да нестане "каша", но не съм наясно как да го направя в тоя случай, а и това което го гледах беше 12c509- не виждам UART
Аре светнете ме как да стане!!!
|
| Съб Ное 05, 2005 9:11 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30684 Местоположение: София
|
Ама нали това ти казвам бре, няма начин за предаване на данни без протокол, самия факт че поредаваш данни обуславя протокол, защото трябва д аима правила на предаване. Не ти говоря за пакети или структури на данните, а за най-елементарното, предаване на бит или байт. Значи при паралелно предаване когато вдигаш строб за валидни данни също е протокол , защото имаш праивло кога данните са валидни.
Дистанционните за коли, много често изпозлват манчестър кодиране, изобщо в много RF устройства се изпозлва този тип кодиране.
За твоя случай, RS софтуерен или хардуерен какво е значението имаш :
putc(byte);
и това е, байта ти е предаден, от другата страна ще получиш прекъсване че имаш нови данни
byte=getc();
и другия процесор е получилбайта, какъв е тук проблема не виждам, 12-ка, 15-ка, 23-ка .... и 181-ца да е все тая .....
Друг вариант SPI, предимство имаш такт гълта още един кабел, но пък може да го рзтягаш във времето ак имаш по спешни задачи, ако е софтуерна поддръжката му де, ако е хардуерно няма ниаква разлика, той процесора си го мисли.
spi_write(byte);
от другата страна ...
byte=spi_read();
p.s. та не рабзирам какво те притеснява,нужно ли е да имаш хардуерна поддържка за д аимаш протокол, не не е нужно ..... вземи разучи различните протоколи за да ти светне малко, тук не знам дали е удачно д аседнем да пишем страници обеснения при условие че отдавна ги има.
|
| Съб Ное 05, 2005 9:29 pm |
|
 |
|
bigboy
Ранг: Минаващ
Регистриран на: Чет Май 19, 2005 12:43 pm Мнения: 27 Местоположение: София
|
Ами за пръв път ми се налага да правя такова нещо. От това което съм видял за протоколите, е че имат tx, rx, а някои и clock -(най общо казано). Никой не спори, че наборът от правила е задължителен! Ако го напиша както е дадено стандартно " и баба знае". Тогава да питал в реда
#use rs232(baud=9600, float_high, bits=9, xmit=PIN_B0, rcv=PIN_B0)
не мога ли да задам само tx за предавателя и rx за приемника? Искам да направя възмажно най-простия вариант без обратна връзка между двете устройства. И наиститна жиците са кът, повече от една не мога да отпусна. Понеже не съм правил такоз нещо незная дали може да се реализира със стандартен протокол. За мен това е нещо като частен случай. 
|
| Нед Ное 06, 2005 10:29 am |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30684 Местоположение: София
|
Кой ти е казал че не можеш, можеш, не съм гледал какво прави CCS-а но мисля че има начин ... щех да кажа можеш да моднеш библиотеката ама ... то нема таква май за тия функции, може обаче да си го напишеш сам ....
|
| Нед Ное 06, 2005 11:05 am |
|
 |
|
VSU
Ранг: Напреднал
Регистриран на: Нед Авг 14, 2005 1:08 pm Мнения: 433 Местоположение: Казанлък
|
Мале мале колко много приказки а накрая нищо ето ти линк за IR протокол http://www.ustr.net/infrared/infrared1.shtml а сигурно и някаде по примерите ще намериш нещо за RC5 ili RC6 протокол тъкмо като го направиш ще можеш после и дистанционно да си спретнеш ако ти потрябва някой ден 
|
| Нед Ное 06, 2005 10:04 pm |
|
 |
|
ToHu
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 9:21 pm Мнения: 30684 Местоположение: София
|
Ами това на пръв бегъл поглед си е баш манчестър ... ама не е лошо хората д се поразтърсват малко, а не всичко наготово да вземат. А м-у два процесора на фисксирана честота може да мине само с най-обикновенно предаване, стига да не с далче един от друг, на фиксиран интервал от време предава бит 0/1 ....
|
| Нед Ное 06, 2005 10:22 pm |
|
 |
|
VSU
Ранг: Напреднал
Регистриран на: Нед Авг 14, 2005 1:08 pm Мнения: 433 Местоположение: Казанлък
|
еее другия нали трябва да знае кога какво приема ами ако загуби интервала по някаква причина ама и нали 12ц509 е там май няма много място за писане 
|
| Пон Ное 07, 2005 2:38 am |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
30 реда код - аз ли да ги напиша
Колелото на ново едва ли ще можеш да откриеш...Kakвото и да напишеш по 1 жица трябва да разгънеш тия 8 бита в сериен вид, т.е. трябва да ги подаваш последователно във времето. Това си е протокол, също както в дистанционните управления за модели, аларми, телевизори и пр. RS232 се пише с 30-ина реда код на ASM, едва ли ще ти отнеме и кой знае колко време, не можах да разбера каква е целта да бягаш от лесното, опитваш се да скриеш данните които ще текат ли? Щото ако е така пусни някакъв нестандартен baudrate или криптирай с просто XOR-ване (1 допълнителна инструкция).
|
| Пон Ное 07, 2005 3:27 am |
|
 |
|
bigboy
Ранг: Минаващ
Регистриран на: Чет Май 19, 2005 12:43 pm Мнения: 27 Местоположение: София
|
Аре нема нужда! Сам си го написах !!! Само да стане раздумка за протоколи, да не съм пропуснал нещо ново из тях. 
|
| Пон Ное 07, 2005 12:22 pm |
|
|
|
Страница 1 от 1
|
[ 15 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|