Witam
Chciałem zrobić układ z edw 1/2005 str. 56 – radiowe zdalne sterowanie na pasmo 433 mhz, ale mam problem z zaprogramowaniem mikrokontrolerów. Programy, które pobrałem z sieci z działu dawnload nie chcą działać, więc postanowiłem napisać własny w c.
Poniżej jest zamieszczony program, który ma działać na 89c2051, program został napisany kompilatorem ride-51 (wzorowałem się na programie z książki: Programowanie mikrokontrolerów 8051 w języku c). Mikroprocesor ma za zadanie odczytać stan wejść portu P3(P3.0, P3.1, P3.4, P3.5), przy czym tutaj ważne są zera, następnie powinien odpowiednio wystawić na wyjściu P1(P1.7, P1.6, P1.5, P1.4) jedynki.
Mój problem polega na tym, że o ile mikrokontroler odczyta stan wejścia P3 to w żaden sposób nie mogę zmusić go do tego aby wystawił na wyjście to co ja chce. Możliwe jest kilka kombinacji np. 0111 -> 1000, 1011 -> 0100, 0101 -> 1010 itd. Najlepiej jakby były ustawiane na raz wszystkie bity portu P1.
Jeżeli ktoś mi będzie w stanie pomóc to będę wdzięczny.
2xP
#include<reg51.h>
#include<stdio.h>
unsigned char buf;
void Delay(unsigned int time)
{
unsigned int j;
while (time>=1)
{
for(j=0;j<65;j++);
time--;
}
}
char KbdRead() // odczyt stanu bitów portu P3
{
unsigned char b;
b = PortKey;
return (b);
}
void main(void)
{
P1=0x00;
P3=0x00;
while(1)
{
buf = KbdRead();
if(buf)
{
Delay(20);
if (buf == KbdRead())
{
tutaj trzeba wpisać coś co spowoduje ustawienie bitów portu P1 (P1.7, P1.6, P1.5, P1.4) . Ja próbowałem następująco:
Delay(20);
if(P3 == 0xFE) // P3.0 -> 1111 1110
{
P1 = 0x80; //P1.7 -> 1
}
Delay(20);
if(P3 == 0xFF)
{
P1 =0x00;
}
//itd. Ale mi nie wychodzi (w symulatorze jeszcze by działało a po zaprogramowaniu 89c2051 nie chce)
}
}
}
}
Jak ustawić port P1 89c2051?
To forum jest dla wszystkich pasjonatów wiecznie młodych mikrokontrolerów '51. Wymiana doświadczeń i pomoc dla początkujących w pisaniu programów zarówno w C, Asemblerze jak i BASCOM. Zapraszam znawców tematu, aby pomogli wszystkim początkującym!
ODPOWIEDZ
Posty: 1
• Strona 1 z 1
Przejdź do
- Forum EdW - regulamin, wskazówki i opinie
- ↳ Regulamin forum oraz wskazówki dla początkujących
- ↳ Opinie o Forum "EdW" i stronie Elportal.pl
- Czasopismo "Elektronika dla Wszystkich" - opinie i uwagi
- ↳ Uwagi do bieżącego i archiwalnych numerów EdW
- Elektronika
- ↳ Podstawy elektroniki - teoria i praktyka
- ↳ Elektronika - dyskusje ogólne
- ↳ DIY - projekty użytkowników forum
- ↳ Warsztat
- ↳ Układy audio
- ↳ Serwis urządzeń elektronicznych
- ↳ Programy wspomagające projektowanie
- ↳ Robotyka i modelarstwo
- ↳ Kącik lampowy / elektronika retro
- ↳ Szkoła konstruktorów
- ↳ Poszukiwania
- ↳ Dane katalogowe
- ↳ Szukam schematu/PCB
- ↳ Gdzie kupić?
- ↳ Kity AVT
- Komputery, mikroprocesory i technika cyfrowa
- ↳ Mikroprocesory i technika cyfrowa
- ↳ Technika cyfrowa
- ↳ 8051
- ↳ AVR/AVR32
- ↳ PIC
- ↳ ARM
- ↳ MSP430
- ↳ PSoC
- ↳ Komputery
- ↳ Komputery - dyskusje ogólne
- ↳ Programowanie komputerów
- Warto zajrzeć
- ↳ Książki i czasopisma oraz interesujące linki
- ↳ Szkoły i uczelnie
- Inne
- ↳ Hyde Park
- ↳ Prace domowe - sprawozdania, projekty, zaliczenia itp.
- ↳ Śmietnik
- Kramik
- ↳ Sprzedam
- ↳ Kupię
- ↳ Zamienię
- ↳ Praca