är detta en skoluppgift???? det verkar iaf så... och därför kommer jag inte ge dig något färdigt schema men jag kommer förklara lite kort hur det funkar så får du göra resten själv.
koppla upp PIC:en enligt vilken grundkoppling som helst + lysdioder kopplade (med strömbegrännsningsmotstånd) till varje pinne till PORTB. När du kör in programmet kommer du se att lysdiod #1 (på pinne PORTB.0) tänds därefter #2 (på pinne PORTB.1) och så håller det på till #8 (PORTB.7) för att sedan börja om med #1. Dock kommer det gå så snabbt så du ser det nog som om alla tänds samtidigt...
Jag har gjort ett större projekt som jag vill testa på en breadboard, men måste först lite snabbt ta reda på hur ett enkelt program kan testas. Inget fusk alltså..
Med kondensatorer borde det gå att sakta ner förloppet så att det går att följa enklare väl?
"Med kondensatorer borde det gå att sakta ner förloppet så att det går att följa enklare väl?"
Hur??? Om du kan sänka klockans hastighet nog kan du se de enkla stegen men om du ska göra det med en konding (om du använder RC-oscillator) eller hur beror ju på inställning, datablad osv. Jag har för mig att kondensatorn i en RC-klovka inte får vara för stor, alltså kan man öka motståndet istället.
Ett ganska stort program i c som funkar bra och som jag ska lägga över på en microcontroller (som jag inte varit i kontakt med tidigare). Har inte koll på portar etc.. Konstig inställning här ifrån vissa..
Jag har programmerat en simulator för ett trafik-system i c som fungerar. Som utsignaler har jag vektorer som skrivs ut på skärmen. Nu ska jag överföra detta till en microcontroller och få utsignalerna som lysdioder istället. Därför la jag in ett litet exempel för att komma igång.
Själv skriver jag aldrig särskilt många rader kod utan att deltesta imellan så att man inte gjort någon liten tabbe som sedan fortplantar sig i koden,
Och hur kan du skriva ett *större* program utan att veta hur portarna fungerar?
Vad är det annars för fel på förklaringarna som har kommit i tråden? Seven11 förklarade hur du skall koppla, och jag skrev en fortsättning som sade att det enklaste för att se vad som händer är att skta ner "koden".
Vad är det du inte förstår?
BennyOrm skrev:Jag har programmerat en simulator för ett trafik-system i c som fungerar. Som utsignaler har jag vektorer som skrivs ut på skärmen. Nu ska jag överföra detta till en microcontroller och få utsignalerna som lysdioder istället. Därför la jag in ett litet exempel för att komma igång.
Alltså har du _inte_ programmerat microcontroller i C ännu? Ok, tur att du har fått svar på dina frågor änsålänge här då. Då är det bara till att fortsätta kämpa på.
Tänk på att C för PC och C för mikrokontroller skiljer extremt mycket, det enda som är likt är syntaxen.
EDIT: Syntaxen inte sydtaxen
Senast redigerad av björn 24 oktober 2006, 17:12:36, redigerad totalt 1 gång.
Läs databladet för PIC16F873 (speciellt sidorna om PORT och Device Overview.) Kika sedan på andra halvan i Seven11's inlägg igen. Har det inte blivit klarare då så är det bara att fråga.
Det är jag med på. Men betyder det att PORTB kommer vara först 0000 0001, sen 0000 0010 osv, och betyder det i sin tur att PORTB:s olika pins kommer ändras i enlighet med det (0000 0001 ger RB0=1 etc)??? Och kan jag då ha en lampa för varje pin så att ljuset kan "vandra"?? Eller är jag helt ute och cyklar?