Sida 1 av 1
nybörjare lr nåt
Postat: 10 november 2007, 20:56:06
av Elektro88
Hej!
Fick en picprogramerare för ett litet tag sen och har några pic12f675 sen tidigare. nu tänkte jag börja leka och prova mig fram inom denna fantastiska värld

.
men först vill jag prova att programeraren funkar. nån som har ett bra kopplingschema+kod till pic12f675 som man kan testa?
Postat: 10 november 2007, 21:03:58
av Greger!
Du kan börja med att prova detta först:
http://www.voti.nl/blink/index.html
Sedan kan du prova detta, vilket är lite roligare än att blinka en LED:
http://picprojects.org.uk/projects/rgb/
Lycka till!

Postat: 10 november 2007, 21:43:36
av Elektro88
hittade denna kod i mikroC:
Kod: Markera allt
/*
* Project name:
led_blinking (testing the I/O port)
* Copyright:
(c) MikroElektronika, 2005.
* Description:
This code demonstrates blinking of diodes connected on gpio. Diodes go on
and off each second.
* Test configuration:
MCU: PIC12F675
Dev.Board: EasyPic4
Oscillator: Internal, 08.000 MHz
Ext. Modules: -
SW: mikroC v5.0
* NOTES:
To achieve 1-second blinking interval, the project must be compiled for 4
MHz, allthough it uses chip's internal clock.
*/
void main() {
TRISIO = 0; // configure pins of gpio as output
do { // beginning of a repeat loop
GPIO = 0xFF; // turn ON diodes on gpio
Delay_ms(1000); // wait for 1 second
GPIO = 0; // turn OFF diodes on gpio
Delay_ms(1000); // wait for 1 second
} while(1); // endless loop (as this condition is always satisfied)
}
vilken port är det som Lysdioden blinkar på? har kollat datablad men hittar inget

Postat: 10 november 2007, 22:00:58
av Icecap
GP5 = General Port 5 = alla portpinnar "blinkar"
Antar att GP5 betyder "Den Generella Porten med 5 pinnar" fast då på utrikisk.
Postat: 10 november 2007, 22:06:55
av Elektro88
oj skicka fel Hex

ska vara IO ist för 5.. men om man vill att tex port 5 ska blinka vad ska man skriva då?
Postat: 10 november 2007, 23:35:13
av PHermansson
GPIO syftar på hela porten, enskilda pinnar refereras med typ 'GPIO.GP5'
Kod: Markera allt
/*Led PWM
PHermansson 2006
For mikroC compiler for PIC, www.mikroelektronika.co.yu
*/
char counter;
void interrupt(){
counter ++; // increment counter
TMR0 = 254;
INTCON = 0x20; // set T0IE, clear T0IF . h20=100000
}
void main() {
OPTION_REG = 0x84; // TMR0 prescaler
TRISIO = 0b00010000; //GP4 in, GP5 out.
GPIO = 0xFF; // initialize gpio
counter = 0; // set counter
TMR0 = 254; // set timer0
INTCON = 0xA0; // TMRO interrupt enabled A0 = 10100000, 80=10000000->T0IE off
ANSEL=0;
do{ // Loop
if (counter > 200) // Counts from 0 to 255 and then flips to 0
// Counter > x sets pwm period, lower value = brighter led.
{
if ( GPIO.GPIO4 == 1 )
{
GPIO.GPIO5 = 1;
}
else
{
GPIO.GPIO5 = 0;
}
}
else
{
GPIO.GPIO5 = 0;
}
} while(1);
}