Hoe kan ik dit board met een Atmel AT89S52 programmeren?

Pagina: 1
Acties:

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Hallo,

al een tijdje ben ik op zoek naar een klein stukje elektronica dat stand alone kan werken en twee kleine DC motoren individueel kan aan aansturen. Nu kwam ik het volgende driver board tegen op Ebay en dit is denk wat ik kan gebruiken:

Afbeeldingslocatie: http://ourhc.cn/cptj/zhudacp/djkzq/ALIM3862.JPG

Ik ben al flink aan het zoeken geweest en een mail naar de mensen die deze onderdelen aanbieden bood ook geen goed antwoord. Dus wil ik mij vraag hier stellen, wie weet hoe ik deze chip kan programmeren? Welke interface heb ik hier voor nodig?

Dank je wel alvast.

Grt,
Wilfred

Acties:
  • 0 Henk 'm!

  • AlexanderB
  • Registratie: Maart 2007
  • Laatst online: 09-05 19:05

AlexanderB

7800 rpm

Stekker rechts-boven lijkt me verdacht veel op de Atmel ISP stekker, de oudere 10-pins.

Om te programmeren moet je een AVR programmer hebben, die kosten tegenwoordig echt niks meer:
http://dx.com/p/usbasp-us...grammer-for-51-avr-157167
http://dx.com/s/avr+programmer

Als je een parallelle poort hebt kan je ook programmeren met 4 draadjes en 3 weerstandjes, maar waarschijnlijk kost dat aan parts al meer dan een USB programmer uit Hong Kong.. :)

Acties:
  • 0 Henk 'm!

  • Sphere-
  • Registratie: November 2003
  • Laatst online: 28-08 19:53
AlexanderB schreef op vrijdag 15 november 2013 @ 00:00:
Stekker rechts-boven lijkt me verdacht veel op de Atmel ISP stekker, de oudere 10-pins.

Om te programmeren moet je een AVR programmer hebben, die kosten tegenwoordig echt niks meer:
http://dx.com/p/usbasp-us...grammer-for-51-avr-157167
http://dx.com/s/avr+programmer

Als je een parallelle poort hebt kan je ook programmeren met 4 draadjes en 3 weerstandjes, maar waarschijnlijk kost dat aan parts al meer dan een USB programmer uit Hong Kong.. :)
Dit is geen AVR maar een Intel 8052 kloon.
Zo geen idee of een AVR ISP programmer compatible is.

@ TS: Er is redelijk wat te vinden op internet als je zoekt op AT89S52 programmer.
Bijvoorbeeld: http://www.edaboard.com/thread256922.html Het lijkt erop dat in ieder geval de USBasp hem ondersteunt.

[ Voor 16% gewijzigd door Sphere- op 15-11-2013 00:14 ]


Acties:
  • 0 Henk 'm!

  • craio
  • Registratie: November 2002
  • Laatst online: 09-06 15:16
Sphere- schreef op vrijdag 15 november 2013 @ 00:09:
[...]

Dit is geen AVR maar een Intel 8052 kloon.
Zo geen idee of een AVR ISP programmer compatible is.
Bij deze (en andere op de dx site) staat het in de productnaam, dus ik veronderstel van wel.

[ Voor 8% gewijzigd door craio op 15-11-2013 00:41 ]


Acties:
  • 0 Henk 'm!

  • AlexanderB
  • Registratie: Maart 2007
  • Laatst online: 09-05 19:05

AlexanderB

7800 rpm

Sphere- schreef op vrijdag 15 november 2013 @ 00:09:
Dit is geen AVR maar een Intel 8052 kloon.
Sorry, dat had ik ff over het hoofd gezien. Desondanks:
Sphere- schreef op vrijdag 15 november 2013 @ 00:09:
Het lijkt erop dat in ieder geval de USBasp hem ondersteunt.
En die cheape programertjes zijn gewoon clones van de USBasp, dus was m'n antwoord verder niet verkeerd.. :)

Acties:
  • 0 Henk 'm!

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

Als je zo 1,2,3 niet kan zien wat voor spullen je nodig hebt omdat bord te laten doen wat je wilt, raad ik niet aan om dat bord te gaan gebruiken. Wil je dat toch dan kan je hier op pagina 22 terecht.

Misschien is dit een betere oplossing voor je:
http://www.ebay.com/itm/1...ain_0&hash=item3f2aff3edc
http://arduino.cc

Met de normale Arduino (USB, serieel, etc) kan je hem dan programmeren.

[ Voor 19% gewijzigd door Oyster op 15-11-2013 01:47 ]


Acties:
  • 0 Henk 'm!

  • Cassettebandje
  • Registratie: Juli 2002
  • Laatst online: 09:08

Cassettebandje

SA-C90 TDK

Als ik het zo lees zou het met Avrdude en usbasp moeten kunnen als je een gewijzigde config voor avrdude gebruikt.

Aangezien je de electronica nog niet hebt zou ik niet dit bordje kopen, maar bijvoorbeeld een arduino met een motorshield nemen, dat is tenminste fatsoenlijk gedocumenteerd en wordt veel breder gebruikt.

Wat wil je precies doen? Hoe klein zijn die kleine dc motoren? Je weet dat je met 4 transistoren een h-brug kunt maken en die betrekkelijk eenvoudig aan kunt sturen met een microcontroller?

Acties:
  • 0 Henk 'm!

  • memphis
  • Registratie: Oktober 2000
  • Laatst online: 22:40

memphis

48k was toen meer dan genoeg.

Voor de Arduino zijn ook H-brug motor controlers te koop:
http://www.conrad.nl/ce/n...uwpakket?ref=searchDetail

Er zijn mensen die mij een GOD vinden


Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 07:16

Damic

Tijd voor Jasmijn thee

Kun je gewoon programmeren met elke recente avr programmeur die avr_ISP ondersteund.

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Ook bij DX http://dx.com/s/stepper%2bmotor?Sort=ReviewsCount


Overigens best een leuk bordje als er alles op zit wat je nodig hebt. De 8051 architectuur is al tientallen jaren een bewezen industrie standaard die door vele fabrikanten in vele produkten gebruikt wordt.
http://www.atmel.com/devices/at89s52.aspx

Het Arduino platform is tegenwoordig meer gangbaar en iets eenvoudiger voor de hobbyist, maar verder zie ik geen reden om dit niet te gebruiken.

Programmeren schijnt te kunnen met winavr/avrdude.
Zelf heb ik de SDCC compiler gebruikt voor een 8051 compatibele nRF9E5. Voor compileren en programmeren maak je gewoon een batch file die je aanroept via je favoriete C code editor, bv notepad++.

[ Voor 50% gewijzigd door Ploink op 15-11-2013 14:32 ]


Acties:
  • 0 Henk 'm!

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Allen dank voor de antwoorden. Er zitten een aantal links bij waar ik wat mee kan.
Via een ander forum kreeg ik de volgende link:

http://www.pololu.com/category/64/programmable-controllers

Wellicht ook interessant voor mensen die ook op zoek zijn naar zoiets als ik.

Acties:
  • 0 Henk 'm!

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Ik heb 'm ff opgezocht, dit is geen AVR dus ook AVRISP is geen optie (Damic). Dit ding laat zich _ongeveer_ programmeren als een EEPROM. Staat ook bij de ISP optie op de page van Atmel dat dit via SPI moet gebeuren. Atmel's tool is de AT89ISP. Je kan 'm ook parallel programmeren maar dan moet je een programmer hebben die Vpp omhoog kan meppen tot 12V, lijkt me niet erg praktisch. In principe kun je dit ding programmeren met een USB naar SPI adapter. Er zullen vast kant en klare opties te koop zijn, maar als je het met een generieke adapter doet heb je kans dat je die zelf moet aansturen met een klein stukje code om de correcte SPI commando's voor deze uC te sturen. Heb daar hier een best aardig documentje over gevonden.

Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 07:16

Damic

Tijd voor Jasmijn thee

Nu je het zegt, ik kan er wel voor programmeren maar kan hem niet programmeren :(

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Flake schreef op dinsdag 19 november 2013 @ 17:18:
Ik heb 'm ff opgezocht, dit is geen AVR dus ook AVRISP is geen optie (Damic).
Net even zitten googelen en ik lees overal dat je gewoon AVRISP kan gebruiken. Beide controllers zijn van Atmel en beiden kun je programmeren via ISP. Dat de architectuur verder verschillend is maakt niet uit.

Koop anders deze
USBasp ISP Programmer Adapter for AT89S Series MCU - Black
Als het in de titel staat moet het goed zijn zou je denken ;) De 10-pin connector kan je zo inpluggen.
Dit is geen AVRISP, maar een kloon van http://www.fischl.de/usbasp/
Programmeren kan met AVRDUDE.
WinAVR schijnt hem ook te ondersteunen als ik dat youtube filmpje mag geloven, maar anders pak je gewoon SDCC.

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Allen dank voor de moeite om zaken op te zoeken op internet. Dat waardeer ik zeer. Het helpt me echt verder.
Verdiepende in de materie zie ik dat het programmeren van de chip als mechanical engineer niet mijn expertise is. Is er iets simpels in een Windows of Apple omgeving waarmee ik met een soort van bouwstenen een programma op kan bouwen? Zo met de tekst wordt dat niet wat vrees ik als ik dat alleen moet doen.

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

In dit topic wordt er 6 keer naar Arduino gerefereerd. Kijk daar eens naar zou ik zeggen. ;)

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Ik wil van dit apparaat niet 1 exemplaar maken. Wat mij betreft worden dat er een hele serie. En dan zoek ik iets wat bijna off-the-shelf toegepast kan worden zonder dat ik daar veel werk mee heb. Ik heb de indruk dat Arduino meer een bouwpakket is.
Het apparaat wordt geassembleerd, kabeltje op het board, programma inladen en dan moet het klaar zijn. Dat is het idee nu.

  • Ploink
  • Registratie: April 2002
  • Laatst online: 21-08 13:05
Arduino is eenvoudiger om mee te beginnen vanwege de simpele programmeer omgeving en de voorgebakken libraries, maar je programmeert in beide gevallen in C.
Je zal het zelf moeten leren of iemand wat geld toe stoppen die er meer verstand van heeft en kan beoordelen welke hardware het best geschikt is voor jouw toepassing.

Voor bruikbare Arduino hardware met H-brug zijn hierboven al een paar links gegeven.

Edit: De Atmega microcontrollers op de Arduino bordjes hebben hardwarematige PWM, wat bij uitstek geschikt is voor motor sturing. De AT89S52 heeft dat niet en dan zal je elk pulsje softwarematig moeten genereren.

[ Voor 20% gewijzigd door Ploink op 21-11-2013 20:39 ]


  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

BoraTDI schreef op donderdag 21 november 2013 @ 20:00:
Ik wil van dit apparaat niet 1 exemplaar maken. Wat mij betreft worden dat er een hele serie. En dan zoek ik iets wat bijna off-the-shelf toegepast kan worden zonder dat ik daar veel werk mee heb. Ik heb de indruk dat Arduino meer een bouwpakket is.
Het apparaat wordt geassembleerd, kabeltje op het board, programma inladen en dan moet het klaar zijn. Dat is het idee nu.
Ik snap je voorgaande post na deze post nu ook wat beter. Wat jij wilt kan niet. Het is hetzelfde principe als een wafer stepper met knex en meccano in elkaar proberen te gooien en verwachten dat er iets bruikbaars uitkomt, om maar in wtb-termen te spreken. Microcontroller producten fabriceren is maatwerk. Als je de details van het maatwerk wilt verminderen, dan neem je een platform zoals bijvoorbeeld Arduino. Als je dat beide niet wilt dan koop je een kant en klaar product wat aan jouw eisen voldoet. Maar was het niet juist de bedoeling een product te ontwikkelen specifiek voor deze taak? Dat spreekt elkaar tegen.

"Blokken" in een UI aan elkaar knopen en naar een uC taak compileren gaat niet werken. Wat daar nog het meeste in de buurt komt is oa. Arduino. PCB's met functionaliteit kan je kopen en aan elkaar knopen, net als de software libraries. De kerncomponenten en software kan je dan kopiëren naar een specifiek ontwikkeld PCB en eventueel herschrijven. Wil je wel knopen dan kan je naar een laptop met bijvoorbeeld Labview G en een interface kaart van National Instruments kijken ofzo. Als het wel specifiek low-level microcontroller werk moet zijn kan je altijd bij me informeren via DM.

Acties:
  • 0 Henk 'm!

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Ik heb een kleine opzet om te laten zien hoe het in elkaar gaat zitten. Misschien dat het dan duidelijker wordt wat ik bedoel:

http://imagizer.imageshack.us/v2/xq90/39/icyn.jpg

Het lijkt me een relatief simpele handeling die het board moet uitvoeren. Gezien het feit dat ik meerdere wil gaan maken, wil ik het volgende:
Het apparaat wordt volledig geassembleerd en dan wordt er een computer via USB (of zoiets dergelijks) aangesloten op het board. Het vooraf tijdens het testen gemaakte programma wordt in het board geladen. Stekker weer los en de verpakking in.
Misschien is dit wat simplistisch voorgesteld maar dit is wel hoe het uiteindelijk moet worden.

Als het zo moet worden, kan het dan met het board waarmee ik het topic gestart ben? Of kan dat ook met de Pololu Baby Orangutan B-48 Robot Controller?

Dank je wel alvast voor het antwoord.

Acties:
  • 0 Henk 'm!

  • Oyster
  • Registratie: Januari 2003
  • Niet online

Oyster

Prince

Jahoor, dat kan met beide uitstekend.

Acties:
  • 0 Henk 'm!

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Ploink schreef op dinsdag 19 november 2013 @ 21:19:
[...]

Net even zitten googelen en ik lees overal dat je gewoon AVRISP kan gebruiken. Beide controllers zijn van Atmel en beiden kun je programmeren via ISP. Dat de architectuur verder verschillend is maakt niet uit.
Misschien dat ik me inderdaad heb vergist. AVRISP is ook een SPI protocol, maar ik dacht dat de instructieset anders was. Maar als ik ze naast mekaar leg dan lijkt het er wel erg op.
BoraTDI schreef op zaterdag 23 november 2013 @ 00:57:
Het apparaat wordt volledig geassembleerd en dan wordt er een computer via USB (of zoiets dergelijks) aangesloten op het board. Het vooraf tijdens het testen gemaakte programma wordt in het board geladen. Stekker weer los en de verpakking in.
Misschien is dit wat simplistisch voorgesteld maar dit is wel hoe het uiteindelijk moet worden.
Ik zou je aanraden om twee versies te maken: Een testversie en een liveversie. Met die testversie loop je snel alle functies af zodat je kunt verifiëren dat er geen fouten in zitten. Daarna schiet je de liveversie erin, kastje dicht en opsturen maar.
Als het zo moet worden, kan het dan met het board waarmee ik het topic gestart ben? Of kan dat ook met de Pololu Baby Orangutan B-48 Robot Controller?

Dank je wel alvast voor het antwoord.
Ik zie een batterij staan. Kan ik daaruit opmaken dat het apparaat niet op netspanning werkt maar op een batterij? Dan zou ik de 8051 links laten liggen. AVR's hebben prima power save features en ook die h-brug heeft een low power standby. Die powercontroller in die Pololu is ook niet slecht voor batterijtoepassingen (er zijn betere, maar deze is geschikt). Met een Arduino en een motorshield kun je dit ook wel bouwen, maar als het op een batterij moet draaien dan is klassieke Arduino ongeschikt. Op netspanning met adapter zou dat geen probleem zijn.

Wat moet die switch doen? Wil je die gebruiken om de microcontroller in sleepmode te zetten of verbreek je daarmee de voedingsspanning?

Acties:
  • 0 Henk 'm!

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Het is inderdaad zo dat het apparaat op een batterij gaat werken. Waarom valt de 8051 (het plaatje van het board waarmee ik dit topic ben gestart?) dan af? Welke zou wel (erg) goed zijn voor deze mobiele toepassing?

De switch is om het apparaat aan te zetten. Dan wordt het programma zoals getoond in de tekening en dan gaat het apparaat weer uit. Dus het zal erop neerkomen dat de voedingsspanning onderbroken wordt.

Ik wil een prototype kijken of alles gaat werken zoals ik denk dat het moet gaan en dan bij de productiemodellen het programma in het board schieten.

Acties:
  • 0 Henk 'm!

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Omdat de 8051 wel erg verouderd is voor batterijtoepassingen. Ook die H-brug die erop zit is erg primitief, evenals andere componenten, als je ziet hoeveel koeling dat ding heeft kun je ook wel bedenken dat die dingen veel verstoken. Voor batterijtoepassingen wil je juist zo min mogelijk verstoken. Des te langer gaat je batterij mee.

Dus: pushbutton indrukken, ding voert een programma uit voor iets van 60 seconden en stopt daarna totdat de knop weer wordt ingedrukt? Dan kun je het beste die Pololu gebruiken. Zet die H-brug in standby en die microcontroller in sleepmode, word wakker van een externe interrupt van je schakelaar, voer het programma uit, h-brug weer in standby en terug in sleep en wachten op de volgende interrupt van die schakelaar. Die opzet lijkt mij het beste.

Acties:
  • 0 Henk 'm!

  • BoraTDI
  • Registratie: Oktober 2008
  • Laatst online: 16-12-2024
Je omschrijft het goed wat het idee is hoe het apparaat moet gaan werken.
Ik zoek inderdaad een board wat zo min mogelijk energie verbruikt. Je spreekt over een erg verouderd board wat veel energie zal verbruiken. Wat zijn de modernste boardjes die weinig energie verbruiken?

  • Flake
  • Registratie: Februari 2001
  • Laatst online: 01-11-2024
Ik zei al, ik zou die Pololu pakken. Dan heb je hardware die best netjes op batterijen presteert, de rest moet je in software doen. Er zijn veel voorbeeldontwerpen voor een low power AVR code met sleepmode beschikbaar online

Acties:
  • 0 Henk 'm!

  • Vuikie
  • Registratie: December 2003
  • Laatst online: 07:39
Hoi BoraTDI

Als ik even mag in haken, de AT89s52 is een 8051 kloon die heel veel ingezet is in de industie, omdat hij zo veelzijdig is.
Als je de datasheet van Atmel download zal je zien dat deze mC verschillende powerdown en idle modes heeft waar je gebuik van kan maken, die door middel van interrupts weer wakker kan worden gemaakt, ideaal voor batterij-toepassingen.

Wat IDE betreft:
Als je in C wil programmeren dan raad ik echt 8051IDE http://mcu8051ide.sourceforge.net aan. Deze IDE werkt als schil bovenop SDCC(Moet je nog wel appart installeren, howto staat in de WIKI dacht ik en anders in de help.) en ondersteund de AT89s52 ' out-of-the-box' Heeft een simulator met verschillende hardware zoals een HD44780 LCD. Hij is ook nog open-source, wat wil je nog meer :P

Als je liever in basic programeerd kan ik BASCOM8051 aanbevelen van MCS electronics. De gratis versie kan tot 4K compileren, die mag alleen niet commercieel gebruikt worden, maar anders kan je voor nog geen 9 tientjes de onbeperkte versie kopen.

De 8051 mag misschien een bijna 40 jaar oud ontwerp zijn, maar word nog heel actief gebruikt en ontwikkeld door verschillende fabrikanten, inclusief Atmel. Er zijn zelfs varianten die hardware PWM hebben of ADC, DAC's er is zelfs een 8051 mC die een ingebouwde ethernet controller heeft.

De AT89s52 heeft dan misschien geen hardware PWM, maar door middel van 1 van de 3 timers te gebruiken die een 8052 heeft, kan je heel goed PWM signalen genereren op de uitgangen. Dit is mij zelfs gelukt op een AT89c2051 dus zo heel moeilijk is dat niet.

Als je goed Googled op '8051 projects' of op 'AT89s52 projects' dan kom je echt hele leuke dingen tegen.

Veel succes en veel plezier met je boardje ;)

[ Voor 0% gewijzigd door Vuikie op 02-12-2013 22:34 . Reden: typo's ]

Pagina: 1