Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Проблем със програмиране на 89S52
http://mcu-bg.com/mcu_site/viewtopic.php?f=4&t=375
Страница 1 от 1

Автор:  Ники [ Сря Фев 09, 2005 1:35 pm ]
Заглавие:  Проблем със програмиране на 89S52

Правя си вчера една проста платчица да програмирам 89S52 директно по LPT, нали се програмира серийно, лесно си повтарям аз, един ресет и 3 жички за програмирането, пускам всичко и то ужким тръгва, за теста на играчакта, за да не го счупя от презаписване, само чета байта за влизане в режим програмиране на процесора, или сигнатурата му, просто, ама не, въртя един непрекъснат цикъл на четене и успешните опити гравитират около 40%, т.е. нещо куца, гледам генератора, софта, не виждам никакви проблеми, хващам се че явно проблема идва от нивата на LPT те са около 3,5В, а процесора е на 5В, решавам и слагам един 74HCT14(в софта отчитам че е инвертиращ), да изпъне формата на сигналите и да вдигне нивата, нивата се оправят, но процесора спира да дава отговор, връщам старото положение без HCT14 всичко си е постаромо бачка понякога, слагам пак HCT14 спира, Гледах на осцилоскоп диаграмите на данните и клока и ресета, едно към едно си е м**а му стара, и убих няколко часа в ръчкане ..но пак нищо, свършиха ми идеите.

Автор:  bateAz [ Сря Фев 09, 2005 2:07 pm ]
Заглавие: 

Гаден проблем, и на мен ми се е случвало такова. Аз имах срабнително дълъг кабел - около 3 метра, и получавах отражения, които водеха до паразитно генериране на още един фрон в приемната страна. Това се оправя с малко клизма - 74HC14 се слага в капачката на кабела за LPT, захранване му подаваш от твоето устройство по кабела. ВСИЧКИ сигнални жици ги терминирай с по 560 ома към маса. Друг вариант е да ползваш това, което си направил до мемента с доработки - на всеки вход на 74HC14 по един кондензатор към маса. Опитай с 10 - 20 pF. Стандартният въпрос : блокираш кондензатор на захранването на 74HC14 и всички неизползвани входове на маса или Vcc. Направил ли си го?

Автор:  Ники [ Сря Фев 09, 2005 2:36 pm ]
Заглавие: 

Краткия ми отговор на твоите въпроси- Тц:)
сега ще се опитам да оправя пропуските по тази част...
кабела ми е дълъг не повече от 2м , може и по малко да е.
доколкото виждам на скопа с ХЦТ14 нямам никакви шумове около сигналите, а дори да ги има, но аз да не ги виджам, определено са по-малко отколкото при директното свързване с ЛПТ, там сигналите са ми доста по 'разнообразни', и още нещо, аз откачам крачето-изход на 89S52, да виси, няма резистор и какъвто и друг товар освен скопа, при 100000 итерации е странно дори и един случаен импулс да не излезе на него, е това ме разби...

Автор:  Ники [ Пет Фев 11, 2005 12:32 am ]
Заглавие: 

Тръгна пущината му ниедна, само че на HC14 остана единствено РЕСЕТ сигнала, ако закача дори единия от другите два CLK и DATA, спира да работи. Вече бръмчи на 100%, но защо не харесва хубави 5 волтови сигнали ако има кой да ми каже..

Автор:  bateAz [ Пет Фев 11, 2005 12:57 pm ]
Заглавие: 

Виж си софта. Да не би да сменяш два бита с една команда или да имаш малко време между две смени? Има някои гадни южни мостове, дето комбинират два байтови записа в една дума, когато става въпрос на принт порт. Например - първо мишеш на базобия адрес, дето са осемте изходни бита. После пишеш с контролния регистър, а до куплунга двете събития идват едновременно. И ако ти е критична времедиаграмата към тези два сигнала, всичко зависи от това, кой от "едновременните" сигнали се възприема пръв. Workaround : повтаряй всички записи поне по три пъти!
Като млад го правих не само при записите....

Автор:  Ники [ Пет Фев 11, 2005 1:23 pm ]
Заглавие: 

bateAz Май само с теб правиме комуникацията :)
Значи тя ще остане на това ниво работата, достатъчно време убих за да набивам още, засега ще приема че работи (чете за 1,2 сек, и пише за 5 сек, 8кбайта) без да имам отговор защо не иска по другия начин, но на двулъчев осцилоскоп гледах две по две комбинация от сигналите, и са си точно както трябва , порта ми е на слаба машинка 500МХз Селерон, и дава команда от който и да е пин за 1 микросекунда, т.е. периода и на най-бързия сигнал в случая, CLOCK, е 2 микросек., 89S52 е със 12 МХз генератор, по дейташиит най-бързия сигнал не трябва да е по бърз от 1/16 от тази честота (12МХз), и това условие го изпълнявам, ще се нямери отговора някой ден, и то когато не го търся...и това пробвах не с единични а с двойни комманди към порта, не се получи по-добре....но благодаря за съветите :)
Ще преминавам на следващия етап..

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/