Nieuws:

Nu in MSM 244 PRAKTIJK: Een kasteeltje uit Forex * Een diorama uit de mouw schudden: een tutorial door Evan Daes

Hoofdmenu

C-experten gezocht!

Gestart door conducteur, 10 juni 2013, 19:56:58 PM

Geert

Citaat van: conducteur op 11 juni 2013, 15:21:55 PM


De voorbeeldprogramma's komen uit de cursus elektronica van op school en hebben we effectief getest en daar zaten geen fouten in.

Daarom denk ik dat het iets is met de instellingen van MPLAB?

Je topic naam is bewust goed gekozen... Je hebt echt een expert nodig, en dat ben ik niet  :(

Geert
Schaal HO - digitaal zelfbouw - Favoriete Lok: V200 DB
Huidig project: LocoNet 16 poorten ingangen/uitgangen

conducteur

experten genoeg bij elkaar, dus door hen is mijn probleem nu min of meer opgelost.
http://www.circuitsonline.net/forum/view/message/1516583#1516583
Rian 2-Rail DCC NMBS TPIII
Grote Modeltreinruilbeurs Blankenberge Pasen 2016
Zaal Forum

Geert

Das wel straf dat de C-compiler na drie jaar belangrijke afkortingen wijzigt. Dus mijn oude code kan ik niet meer compileren op de nieuwste versie van MPLAB, goe dat ik dat weet ...   Of kan de versie ergens ingesteld worden ?


Geert
Schaal HO - digitaal zelfbouw - Favoriete Lok: V200 DB
Huidig project: LocoNet 16 poorten ingangen/uitgangen

Havoc

Kan zijn dat je compiler de include files niet vindt. Vervang eens <pic16F877.h> door het volledige pad waar die file staat dus <c:\etcetc\pic16f887.h> Het kan zijn dat je paths niet goed ingesteld staan.

Bij windows moet je naar "my computer" gaan, rechts klikken, "properties", dan "advanced..." en dan "environment variables". Vergelijk eens wat je op school hebt met wat jij hebt. volgens mij ga je daar iets verschillend vinden.

Waar staat bij jou trouwens die pic16f887.h file? Kan je ook de inhoud van je make file eens posten?
Met vakantie voor onbepaalde duur.

Sattrickske

Je CONFIG directieven voor de 16F877 zijn verkeerd.  Voor de 16F877 moet het zijn:

__CONFIG(FOSC_HS & WDTE_OFF & LVP_OFF);


Da's het rotte aan de PICs, er zitten veel verschillen op de defines per type µC, maar ik heb er een truucje voor.  Ga op zoek waar je de HI-TECH compiler hebt geïnstalleerd en ga een eens kijken in de include directory (op mijn PC: D:\Program Files (x86)\HI-TECH Software\PICC\9.83\include).  Je zal daar een pak .h bestanden terugvinden waaronder eentje pic16f877.h, deze bevat alle info die je nodig hebt...

conducteur

Haha missie al voor 80% geslaagd, de bedoeling van dit eenvoudige programma was om m'n pickit2 eens te testen door wat met de ledjes te spelen die op het bijgeleverde demobordje zitten.


-->na het programmeren gaan de ledjes heel even aan, maar zoeken waarom ze niet aanblijven zal voor morgen zijn.
Rian 2-Rail DCC NMBS TPIII
Grote Modeltreinruilbeurs Blankenberge Pasen 2016
Zaal Forum

Steam.N

Prachtig, Rian !
De eerste horde is gezet.
De rest is gewoon programmeerwerk, met wat logisch nadenken.

De hardware onder controle krijgen is soms een harde knobbel, maar zover ben je al !  Tof.
Knutselgroeten !  Jean       TP-I (B) & TP-II (DR) - N - DC - Handbediening - Zelfbouw  { Sedelocus - De Feniks - Pira-N's Crossing - Turnhout NEEB - Scrap Yard }

Sattrickske

Citaat van: conducteur op 11 juni 2013, 23:07:49 PM
-->na het programmeren gaan de ledjes heel even aan, maar zoeken waarom ze niet aanblijven zal voor morgen zijn.
Zorg dat je de watchdog disabled in het config register.

froelants

Beste,

Je probleem is misschien al opgelost, maar ik zag je vraag nu maar pas.
Probeer eens het volgende:

#include <16f887.h>
// Config: HS ext Xtal- Watchdogtimer disabled - LVP Disabled;
__CONFIG(HS & WDTDIS & LVPDIS)
#IRCF=0X07.

void main()
{
   for (;TRISC=0x00;PORTC=0x37);
}

Ik heb de lus "gerepareerd", de lus bestaat uit 3 delen die van elkaar gescheiden zijn met een komma-punt. Het eerste deel is de initialisatie deze code wordt één maal uitgevoerd bij de start van de lus, maar die heb je niet dus komt na het open rond haakje een komma-punt. Het tweede deel is de test waarin bepaald wordt of de lus nog een keer moet worden uitgevoerd, dit is hier TRISC=0x00. Het derde deel wordt telkens op het einde van de lus uitgevoerd en dat is hier het bevel PORTC=0x37. Doordat de volledige lus opgenomen is in het for statement moet dit worden afgesloten met een komma-punt.
mvg,
Frank
AC modulebaan naar fremo B96 (hoogte,connectors = eigen norm) - loconet HDL - Intellibox Originele - Loc's mix van merken.https://www.lmtc.be/drupal/?q=blogs/froelants