Hallo, hat jemand Ahnung wie ich einen SRF02/05 Sensor mit einem Microchip (18F4520, 16F887 oder 16F847) programmiere? Besitzen alle ein MSSP Modul. Ich finde nur irgendwo keine passende Literatur oder Informationsquellen. Bin schonirgendwie leicht verzweifelt. :/ mfg Sascha
Sascha Giesler schrieb: > Bin schonirgendwie leicht > verzweifelt. :/ Jetzt schon? Du hast ja noch gar nicht angefangen :)
Sascha Giesler schrieb: > hat jemand Ahnung.. Na klar doch. Ich zum Beispiel. Mein Tip wäre, bei Microchip die passenden Unterlagen zu den betreffenden µC's herunterzuladen und zu lesen. Dazu gibt es in jedem Falle auch besondere Unterlagen, wo drinsteht, wie die betreffenden Chips zu programmieren sind. Wen du das gelesen und verstanden hast, dann ist dein Problem gelöst. W.S.
Wenn du was passendes in C findest: lass dir das einfach vom XC8 nach Assembler übersetzen. Schon hast du deinen Code MfG Klaus
Erstmal danke für die vielen Antworten. W.S. schrieb: > Sascha Giesler schrieb: >> hat jemand Ahnung.. > > Na klar doch. Ich zum Beispiel. > > Mein Tip wäre, bei Microchip die passenden Unterlagen zu den > betreffenden µC's herunterzuladen und zu lesen. Dazu gibt es in jedem > Falle auch besondere Unterlagen, wo drinsteht, wie die betreffenden > Chips zu programmieren sind. > > Wen du das gelesen und verstanden hast, dann ist dein Problem gelöst. > > W.S. Ich kenne mich mit den µC's schon etwas aus. Hab damals mit Assembler Code aber keinen Sensor geregelt sondern nur LED's in gewisser Reihenfolge aufblinken oder Zahlen darstellen lassen und ein wenig mit Interrupts rumgespielt. Ich hab mir auch die Datenblätter von z.b. http://www.roboter-teile.de/datasheets/srf08.pdf ausgedruckt und durchgelesen aber wie man direkt mit Assembler einen SRF08 oder SRF02 regelt kam für mich nicht hervor.
Sascha Giesler schrieb: > ... mit einem Microchip > (18F4520, 16F887 oder 16F847) programmiere? > Besitzen alle ein MSSP Modul. Das heißt du willst den Sensor über I2C ansprechen ? Warum nicht RS232 ?
Volker SchK schrieb: > Sascha Giesler schrieb: >> ... mit einem Microchip >> (18F4520, 16F887 oder 16F847) programmiere? >> Besitzen alle ein MSSP Modul. > > Das heißt du willst den Sensor über I2C ansprechen ? > Warum nicht RS232 ? Hab nur gelesen das der I2C-Bus ein sehr häufiger und beliebter 2 Draht-Bus ist. Fande das Prinzip von der Datenleitung und Taktleitung auch relativ verständlich zudem habe ich auch nur diese 3 Mircrochips zur Verfügung. Hab zwar schon gelesen das es den RS232 gibt aber das war es auch schon. :/ Was ich suche sind eher Information wie ich mit dem MC den Sensor regel. Kann mir da keiner ein Buch empfehlen?
Sascha Giesler schrieb: > Was ich suche sind eher Information wie ich mit dem MC den Sensor regel. > Kann mir da keiner ein Buch empfehlen? Die Datenblätter würd ich vorschlagen. Da führt kein Weg dran vorbei. Am Anfang ist es hart, Du wirst stundenlang brauchen selbst für die kleinsten Schritte, bereite Dich auf verknotete Hirnwindungen vor und schlaflose Nächte. Wochenlang. Aber dann, wenn Du da durch bist wird es rapide einfacher und das was Du gelernt hast kann Dir keiner mehr wegnehmen. Irgendwann bist Du dann so weit daß Du solche Sachen nebenher beim Frühstück machst. Aber der Weg dorthin ist steinig und hart und es gibt keine Abkürzung.
Sascha Giesler schrieb: > Hab nur gelesen das der I2C-Bus ein sehr häufiger und beliebter 2 > Draht-Bus ist. Fande das Prinzip von der Datenleitung und Taktleitung > auch relativ verständlich zudem habe ich auch nur diese 3 Mircrochips > zur Verfügung. > > Hab zwar schon gelesen das es den RS232 gibt aber das war es auch schon. > :/ Also RS232 ist (wenn er erst mal konfiguriert ist) viel primitiver als I2C. Beim PIC nennt sich der RS232 (asynchron) USART ;-) > Kann mir da keiner ein Buch empfehlen? Äääähhhh ja, in den Datenblättern steht alles dirn was man wissen muss ...
Volker SchK schrieb: > Sascha Giesler schrieb: >> Hab nur gelesen das der I2C-Bus ein sehr häufiger und beliebter 2 >> Draht-Bus ist. Fande das Prinzip von der Datenleitung und Taktleitung >> auch relativ verständlich zudem habe ich auch nur diese 3 Mircrochips >> zur Verfügung. >> >> Hab zwar schon gelesen das es den RS232 gibt aber das war es auch schon. >> :/ > > Also RS232 ist (wenn er erst mal konfiguriert ist) viel primitiver als > I2C. Beim PIC nennt sich der RS232 (asynchron) USART ;-) > >> Kann mir da keiner ein Buch empfehlen? > Äääähhhh ja, in den Datenblättern steht alles dirn was man wissen muss > ... Was für Datenblätter wen ich fragen darf? :/
Sascha Giesler schrieb: > Was für Datenblätter wen ich fragen darf? :/ Schon bisschen blöde Frage, aber meinetwegen -> die von SRF02 und PICxxxx ;-) (findest du hoffentlich selber, oder brauchst du einen link zu google?)
Volker SchK schrieb: > Sascha Giesler schrieb: >> Was für Datenblätter wen ich fragen darf? :/ > Schon bisschen blöde Frage, aber meinetwegen > -> die von SRF02 und PICxxxx ;-) > (findest du hoffentlich selber, oder brauchst du einen link zu google?) Blöde Fragen gibt es nicht, nur Antworten. :) Ich dachte das eventuell unterschiedliche Datenblätter existieren. Ich hab nur die von Robotikhardware und dort sind leider keine Beispiele mit Assemblercode nur mit Bascom.
Sascha Giesler schrieb: > Blöde Fragen gibt es nicht Ähm, doch, gibt es. Du willst einen PIC programmieren. Wo meinst Du steht im Detail wie das geht ? a: Im Betriebshandbuch Deines Toasters b: Im Datenblatt zum PIC Mikrocontroller - Datenblatt des exakten Typs - Family Reference der PIC Familie - Programmers Reference - Dazu: Toolchain + Doku + Programmer Du willst wissen was ganz genau der PIC eigentlich an den Pins die zum SRF02/05 Sensor führen machen muss damit der überhaupt weis was Du gerade von ihm willst. Wo glaubst Du wird das stehen ? Du kannst natürlich auch den Bascom Code anschauen UND verstehen, dann weist Du was dem Mikrocontroller gesagt wird das er tun soll. Das kannst Du dann in einer Programmiersprache Deiner Wahl nachprogrammieren. Du bist Dir ganz sicher das Du PIC ASM schreiben kannst und willst ? Bare Metal auf einem Pic ist nicht immer lustig.
Michael Knoelke schrieb: > Sascha Giesler schrieb: >> Blöde Fragen gibt es nicht > > Ähm, doch, gibt es. > > Du willst einen PIC programmieren. > Wo meinst Du steht im Detail wie das geht ? > > a: Im Betriebshandbuch Deines Toasters > b: Im Datenblatt zum PIC Mikrocontroller > - Datenblatt des exakten Typs > - Family Reference der PIC Familie > - Programmers Reference > - Dazu: Toolchain + Doku + Programmer > > Du willst wissen was ganz genau der PIC eigentlich an den Pins die zum > SRF02/05 Sensor führen machen muss damit der überhaupt weis was Du > gerade von ihm willst. > > Wo glaubst Du wird das stehen ? > > Du kannst natürlich auch den Bascom Code anschauen UND verstehen, dann > weist Du was dem Mikrocontroller gesagt wird das er tun soll. > Das kannst Du dann in einer Programmiersprache Deiner Wahl > nachprogrammieren. > > Du bist Dir ganz sicher das Du PIC ASM schreiben kannst und willst ? > Bare Metal auf einem Pic ist nicht immer lustig. Ja, bin ich. :) Kann ich nicht davon ausgehen das es irgendwo gut zusammengefasst wurde? Es existieren ja schließlich für fast jede Programmiersprache unmengen an Literatur aber wie es aussieht ist es wohl nicht so. Trotzdem danke.
Sascha Giesler schrieb: > Kann ich nicht davon ausgehen das es irgendwo gut zusammengefasst wurde? Was soll man denn da groß zusammenfassen ? Angenommen du willst im RS232 Mode messen - Warten bis TXREG frei btfsc PIR-x,TXIF ... Schleife - Adresse schicken movlw 0x00 oder andere Adresse movwf TXREG - Wieder warten bis TXREG frei - Befehl zum Messen schicken movlw 0x54 wenn du das Ergebnis in cm automatisch geliefert ... - Warten bis das Ergebnis eintrudelt btfss PIR-x,RCIF ... Schleife - Ergebnis aus RCREG abholen movf RCREG, W
Danke Volker, für deine Mühe. Das hat mir weiter geholfen. :)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.