|
Виж темите без отговор | Виж активните теми
Дата и час: Пет Авг 21, 2026 1:53 pm
|
Страница 1 от 1
|
[ 6 мнения ] |
|
Проблем със програмиране на 89S52
| Автор |
Съобщение |
|
Ники
Ранг: Почетен член
Регистриран на: Съб Окт 30, 2004 11:19 pm Мнения: 609
|
 Проблем със програмиране на 89S52
Правя си вчера една проста платчица да програмирам 89S52 директно по LPT, нали се програмира серийно, лесно си повтарям аз, един ресет и 3 жички за програмирането, пускам всичко и то ужким тръгва, за теста на играчакта, за да не го счупя от презаписване, само чета байта за влизане в режим програмиране на процесора, или сигнатурата му, просто, ама не, въртя един непрекъснат цикъл на четене и успешните опити гравитират около 40%, т.е. нещо куца, гледам генератора, софта, не виждам никакви проблеми, хващам се че явно проблема идва от нивата на LPT те са около 3,5В, а процесора е на 5В, решавам и слагам един 74HCT14(в софта отчитам че е инвертиращ), да изпъне формата на сигналите и да вдигне нивата, нивата се оправят, но процесора спира да дава отговор, връщам старото положение без HCT14 всичко си е постаромо бачка понякога, слагам пак HCT14 спира, Гледах на осцилоскоп диаграмите на данните и клока и ресета, едно към едно си е м**а му стара, и убих няколко часа в ръчкане ..но пак нищо, свършиха ми идеите.
|
| Сря Фев 09, 2005 1:35 pm |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
Гаден проблем, и на мен ми се е случвало такова. Аз имах срабнително дълъг кабел - около 3 метра, и получавах отражения, които водеха до паразитно генериране на още един фрон в приемната страна. Това се оправя с малко клизма - 74HC14 се слага в капачката на кабела за LPT, захранване му подаваш от твоето устройство по кабела. ВСИЧКИ сигнални жици ги терминирай с по 560 ома към маса. Друг вариант е да ползваш това, което си направил до мемента с доработки - на всеки вход на 74HC14 по един кондензатор към маса. Опитай с 10 - 20 pF. Стандартният въпрос : блокираш кондензатор на захранването на 74HC14 и всички неизползвани входове на маса или Vcc. Направил ли си го?
|
| Сря Фев 09, 2005 2:07 pm |
|
 |
|
Ники
Ранг: Почетен член
Регистриран на: Съб Окт 30, 2004 11:19 pm Мнения: 609
|
Краткия ми отговор на твоите въпроси- Тц:)
сега ще се опитам да оправя пропуските по тази част...
кабела ми е дълъг не повече от 2м , може и по малко да е.
доколкото виждам на скопа с ХЦТ14 нямам никакви шумове около сигналите, а дори да ги има, но аз да не ги виджам, определено са по-малко отколкото при директното свързване с ЛПТ, там сигналите са ми доста по 'разнообразни', и още нещо, аз откачам крачето-изход на 89S52, да виси, няма резистор и какъвто и друг товар освен скопа, при 100000 итерации е странно дори и един случаен импулс да не излезе на него, е това ме разби...
|
| Сря Фев 09, 2005 2:36 pm |
|
 |
|
Ники
Ранг: Почетен член
Регистриран на: Съб Окт 30, 2004 11:19 pm Мнения: 609
|
Тръгна пущината му ниедна, само че на HC14 остана единствено РЕСЕТ сигнала, ако закача дори единия от другите два CLK и DATA, спира да работи. Вече бръмчи на 100%, но защо не харесва хубави 5 волтови сигнали ако има кой да ми каже..
|
| Пет Фев 11, 2005 12:32 am |
|
 |
|
bateAz
Ранг: Форумен бог
Регистриран на: Нед Сеп 26, 2004 4:11 pm Мнения: 3750 Местоположение: София
|
Виж си софта. Да не би да сменяш два бита с една команда или да имаш малко време между две смени? Има някои гадни южни мостове, дето комбинират два байтови записа в една дума, когато става въпрос на принт порт. Например - първо мишеш на базобия адрес, дето са осемте изходни бита. После пишеш с контролния регистър, а до куплунга двете събития идват едновременно. И ако ти е критична времедиаграмата към тези два сигнала, всичко зависи от това, кой от "едновременните" сигнали се възприема пръв. Workaround : повтаряй всички записи поне по три пъти!
Като млад го правих не само при записите....
|
| Пет Фев 11, 2005 12:57 pm |
|
 |
|
Ники
Ранг: Почетен член
Регистриран на: Съб Окт 30, 2004 11:19 pm Мнения: 609
|
bateAz Май само с теб правиме комуникацията
Значи тя ще остане на това ниво работата, достатъчно време убих за да набивам още, засега ще приема че работи (чете за 1,2 сек, и пише за 5 сек, 8кбайта) без да имам отговор защо не иска по другия начин, но на двулъчев осцилоскоп гледах две по две комбинация от сигналите, и са си точно както трябва , порта ми е на слаба машинка 500МХз Селерон, и дава команда от който и да е пин за 1 микросекунда, т.е. периода и на най-бързия сигнал в случая, CLOCK, е 2 микросек., 89S52 е със 12 МХз генератор, по дейташиит най-бързия сигнал не трябва да е по бърз от 1/16 от тази честота (12МХз), и това условие го изпълнявам, ще се нямери отговора някой ден, и то когато не го търся...и това пробвах не с единични а с двойни комманди към порта, не се получи по-добре....но благодаря за съветите
Ще преминавам на следващия етап..
|
| Пет Фев 11, 2005 1:23 pm |
|
|
|
Страница 1 от 1
|
[ 6 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 20 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|