Hallo!!
Ik heb een probleem en ik hoop dat jullie mij daar mij kunnen helpen. Ik ben zoals jullie al aan de titel kunnen zien een atmega32L aan het programmeren. De bedoeling van de atmel is dat ie wat sensoren in gaat lezen die vervolgens de waardes naar de computer door sturen (in vorm van letters).
Maar wat het programma of de atmel niet doet is het reageren op de ingangssignalen
Hij regageerd soms wel als ik met mn vingers over de pennen ga...:s
Suggestie's??
Het C programma:
-----------------------------------------------------------
#include <mega32.h>
#include <stdio.h>
#include <delay.h>
void main(void)
{
while (1)
{
delay_ms(100);
// Hier worden de ingangen voor de sensors benoemd en de bij behorende letters
if(PINA == 0x01) //Geeft letter m
putchar(0x6D);
else if(PINA == 0x02) //Geeft letter n
putchar(0x6E);
else if(PINA == 0x04) //Geeft letter o
putchar(0x6F);
else if(PINA == 0x08) //Geeft letter p
putchar(0x70);
// Hier wordt de uitgang voor de klep gedefinieerd
if (UDR !=0)
{
PORTA |= 0x80;
delay_ms(2000);
PORTA &= 0x7F; //0x80^0xFF;
UDR==0;
}
}
}
-----------------------------------------------------------
De communicatie is goed! (naar de computer en naar de programmer).En dat laatste gedeelte van het programma werk wel (het inlezen van een willekeurige karakter).
Alvast bedankt voor jullie reacties!!
edit: heb de code wat overzichtelijker gemaakt
Ik heb een probleem en ik hoop dat jullie mij daar mij kunnen helpen. Ik ben zoals jullie al aan de titel kunnen zien een atmega32L aan het programmeren. De bedoeling van de atmel is dat ie wat sensoren in gaat lezen die vervolgens de waardes naar de computer door sturen (in vorm van letters).
Maar wat het programma of de atmel niet doet is het reageren op de ingangssignalen
Suggestie's??
Het C programma:
-----------------------------------------------------------
#include <mega32.h>
#include <stdio.h>
#include <delay.h>
void main(void)
{
while (1)
{
delay_ms(100);
// Hier worden de ingangen voor de sensors benoemd en de bij behorende letters
if(PINA == 0x01) //Geeft letter m
putchar(0x6D);
else if(PINA == 0x02) //Geeft letter n
putchar(0x6E);
else if(PINA == 0x04) //Geeft letter o
putchar(0x6F);
else if(PINA == 0x08) //Geeft letter p
putchar(0x70);
// Hier wordt de uitgang voor de klep gedefinieerd
if (UDR !=0)
{
PORTA |= 0x80;
delay_ms(2000);
PORTA &= 0x7F; //0x80^0xFF;
UDR==0;
}
}
}
-----------------------------------------------------------
De communicatie is goed! (naar de computer en naar de programmer).En dat laatste gedeelte van het programma werk wel (het inlezen van een willekeurige karakter).
Alvast bedankt voor jullie reacties!!
edit: heb de code wat overzichtelijker gemaakt
[ Voor 46% gewijzigd door Verwijderd op 23-12-2005 19:26 ]