1 Wire communication

Ten eerste bedankt voor alle feedback! Denk dat ik er bijna ben

Heb nu als test een programmatje geschreven die met het Freqout commando 1,5 seconde lang 25Khz op de lijn zet.

In plaats van alleen maar nullen krijg ik nu een logisch resultaat!

Volgende stap word om uit te zoeken hoe ik het beste een 1.8432Mhz signaal op de lijn krijg voor 12ms.

Heb een aantal datasheets van PIC controllers doorgelezen en de sheets van de 18F1220 staat bijvoorbeeld dat als je een EC (external clock) gebruikt dat de Fosc/4 vrijkomt op de Clock out pin van de microcontroller.

Iemand hier ervaring mee?

Dat klopt, dat hebben de meeste pics. Sommige kunnen zelfs (binnen grenzen) een clock met een instelbaar deeltal genereren...
Als die sensor fantom voeding gebruikt, is die clockpuls trein nodig om 'wakker te worden' en op te starten...

Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com

Maar als ik het goed lees kan ik er dan geen kristal meer over zetten toch?
Ik zal een extern klok circuit op de Clock in pin moeten zetten.
Of zie ik dit verkeerd?

Arco - "Simplicity is a prerequisite for reliability" - www.arcovox.com
EricP

mét CE

Zo'n oscillator... Hmz.. Ja, het kan. Maar als je het netjes wilt doen, dan moet je (denk ik) ook op het juiste moment schakelen.

Met een AVR zou ik denk ik een stukje inline assembly maken. Iets met een toggle pin, decrease var, jump-non-zero weer naar het begin. Dat moet je met een handje vol cycles rond krijgen. Evt. een NOP erbij. En dan een handige clock kiezen. Enige nadeel is dat je in die tijd geen interrupt moet krijgen, dus je code moet het wel toelaten.

Verder kun je je nog ff afvragen of die frequentie belangrijk is - dat is dus erg afhankelijk van je ASIC design. Het kan heel goed zo zijn dat ze oorspronkelijk een ander iets als interface-hardware hadden, waarbij die frequentie heel logisch was, maar dat het enige doel is dat er wat aan die poot gerammeld wordt. Ik weet niet of je er meer over te weten kunt komen, danwel door meer documentatie, danwel door reverse engineering (of omdat je die ASIC aardig door begint te krijgen en een goede slag kunt slaan naar hoe het zou moeten zitten en dat gaan controleren).

Mooi dat het werkt. Succes!

Heren,

Met dank aan jullie hulp lukt het me nu om de sensor uit te lezen!

Stuur een constant HPWM signaal naar een line driver/buffer die ik kan enabelen om de frequentie een bepaalde tijd op de data lijn te zetten.
Heb gemerkt dat het voor het resultaat niet uitmaakt hoelang ik dit doe als het maar langer dan 12 ms is.

Nu moet ik de waardes die ik krijg nog om kunnen rekenen.
Als ik een bepaalde sensor uitlees via een extern systeem zie ik dat de Z waarde waar ik naar opzoek ben 88 moet zijn.

Op de fotos Kun je de resultaten zien die ik terugkrijg van de sensor.
Het lukt me niet om op de 88 uit te komen. Kan iemand mij hier veder mee helpen?

Het is gelukt!

Ik hebt het voor elkaar om mijn sensoren netjes uit te lezen :)
Dank voor alle hulp.

Krijg nu een bijvoorbeeld een waarde die schommelt tussen de 98 en 102.

Als laatste stap wil ik nu dat het display in stappen van 5 waardes afbeeld.

Zodat er bijvoorbeeld bij alle waarden tussen de 97,5 en 102,5 gewoon 100 wordt afgebeeld.
Is de waarde 103 dan springt het display naar 105 etc.

Is dit mogelijk in de proton compiler?