Basic + PIC 12F629?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Basic + PIC 12F629?

Inlägg av Logan »

Hej finns det någon bra tutorial på hur man programerar dessa komponenter i Basic. Försökte lära mig den koden som man fick med men det gick inte så bra... :P
Användarvisningsbild
Hedis
Inlägg: 2492
Blev medlem: 8 december 2003, 15:10:44
Ort: Vänersborg
Kontakt:

Inlägg av Hedis »

Språket är ju samma oavsett vilken krets du arbetar med.
Så läs du instruktionerna till Bicbasic lr vad du nu programmerar i.
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Inlägg av Logan »

Mikro Basic - Tyckte det värkade vara bra...
Men har inte fattat något.
Någon här som har dmz proj och har programerat i Mikro Basic får gärna skriva hur han gjorde och en liten kod för att tända en lysdiod :)
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

har du kollat i manualen på s. 9?
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Inlägg av Logan »

Okej så det räcker med att skriva den koden och välja rätt PIC och sedan är det klart?

program My_LED
main:
TRISB = 0 ' configure pins of PORTB as output
eloop:
PORTB = $FF ' turn on diodes on PORTB
delay_ms(1000) ' wait 1 second
PORTB = 0 ' turn of diodes on PORTB
delay_ms(1000) ' wait 1 second
goto eloop ' stay in a loop
end.

Men något säger mig att det inte kommer funka....
Samt hur gör man så vissa pinnar blir ingångar, eftersom man måste göra så på detta kortet...

Är TRISB pinne 2 så TRISA är pinne1?
Användarvisningsbild
$tiff
Inlägg: 4941
Blev medlem: 31 maj 2003, 19:47:52
Ort: Göteborg
Kontakt:

Inlägg av $tiff »

Jag vet inte hur dendär DMZ-grejen ser ut. Om du ger mig en länk eller ritning/förklaring så kan svara på fårgorna.
FriXteR
Inlägg: 93
Blev medlem: 26 oktober 2003, 15:02:37

Inlägg av FriXteR »

$tiff: http://www.ctrldesign.com/microcoder/pr ... meter.html
det är där dmz har fått den i från :)
Användarvisningsbild
grapetonix
Inlägg: 293
Blev medlem: 14 juli 2004, 17:20:50
Skype: grapetonix
Ort: Hägersten, Stockholm

Inlägg av grapetonix »

Logan skrev:Okej så det räcker med att skriva den koden och välja rätt PIC och sedan är det klart?

Note: JAG HAR HÄR ÄNDRAT PROGRAMMET såsom det vore se ut för en 12F629.

program My_LED
main:
TRISIO = 0 ' configure pins of GPIO as output
eloop:
GPIO = $FF ' turn on diodes on GPIO
delay_ms(1000) ' wait 1 second
GPIO = 0 ' turn of diodes on GPIO
delay_ms(1000) ' wait 1 second
goto eloop ' stay in a loop
end.

Men något säger mig att det inte kommer funka....
Samt hur gör man så vissa pinnar blir ingångar, eftersom man måste göra så på detta kortet...

Är TRISB pinne 2 så TRISA är pinne1?
En port är en uppsättning av pinnar.
12F629 har ingen port som benämns PORTA.

På dessa åttapinnarschip kallas den istället GPIO.
Registret du ställer in inputs/outputs med kallas TRISIO.

Alltså: GPIO,X likamed pinne X på porten GPIO.


Tänk på att oscillatorn måste vara rättinställd i mikrobasic också. Du vill förmodligen använda den interna 4MHz-aren.

Sätt även en kondensator på ett tiotal nF paralellt med och nära picen för säkerhets skull. Sen vore det fungera.
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Inlägg av Logan »

okej, men man måste ju öppna en I och en O så det blir en sluten krets. hur blir det då?
Användarvisningsbild
grapetonix
Inlägg: 293
Blev medlem: 14 juli 2004, 17:20:50
Skype: grapetonix
Ort: Hägersten, Stockholm

Inlägg av grapetonix »

Nu hänger jag faktiskt inte med på vad du menar.

Det finns inga förhinder med att göra alla pinnar till outputs.
Koppla en diod mellan någon av utpinnarna (inte #4, den är reserverad som input), och jord. Dioden bör då blinka
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Inlägg av Logan »

Jo för det är ju uppbygd som "matrix" eller vad det nu heter.

*--*--*------ 1
| | |
*--*--*------ 2
| | |
3 4 5

Man sätter pinne 3 som utgång och pinne 1 som ingång så lyser ju en diod.
maxxflow
Inlägg: 1150
Blev medlem: 17 mars 2004, 16:11:14

Inlägg av maxxflow »

Ne, du kopplar ju lysdioden mellan ut-pinnen och jord... En in-pinne blir knappast nån bra jord... Och onödigt vore det också...
Användarvisningsbild
AndLi
Inlägg: 18109
Blev medlem: 11 februari 2004, 18:17:59
Ort: Knivsta
Kontakt:

Inlägg av AndLi »

Lösningen i Datromagazin har lagt lysdioderna i en array/matris för att kunna multiplexa antalet tillgängliga utgångar på ett effektivt sätt.

De har 12 lysdioder till 5 utgångar!

Nu har jag inte artikeln här, men är det inte så att man sätter tex pinne 1 hög pinne 3 låg och 4,5,6 som ingång för att tända lysdioden uppe till höger i Logans ascii bild? Denna position består förövrigt av två lysdioder vända mot varandra. Så om man lägger pinne 1 låg, och 3 hög kommer den andra att tändas.
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Inlägg av Logan »

Japp det är så jag menade, samt det är så den funkar.
Användarvisningsbild
Logan
Inlägg: 630
Blev medlem: 5 januari 2005, 21:31:53
Ort: Jönköping
Kontakt:

Inlägg av Logan »

Någon som har någon bra kod för det?
Skriv svar