PIC10f322 -> RA1 nur max 1V bei einem HIGH

OP #3949705
Lesenswert?
• ▲
▼
Hallo Leute,

Also ich habe folgendes Problem, bin gerade dabei mich mit dem PIC 
10f322 vertraut zu machen und hab ein ganz simples Programm geschrieben.

Wenn RA2 = 1 dann RA0 & RA 1 Toggeln
Wenn RA2 = 0 dann RA0 Toggeln

so das Programm funktioniert ABER der RA1 bin hat maximal eine 
High-Spannung von einem Volt... woran das liegt weiß ich nicht leider 
darum frage  ich euch kennt jemand das Problem?
Kann mir jemand helfen?

Ich bedanke mich schon mal im voraus!!! :)

Code -> MPLABX V.1.95 + XC8 V.1.21
1
/* 
2
 * File:   Test.c
3
 * Author: Martin
4
 *
5
 * Created on 23. Dezember 2014, 16:21
6
 */
7

8
#include <stdio.h>
9
#include <stdlib.h>
10
#include <xc.h>
11
#include <pic.h>
12

13
#define _XTAL_FREQ 8000000
14

15
//#pragma config MCLRE = OFF, CP = OFF, WDTE = OFF, FORC = INTRC
16

17
// CONFIG
18

19
#pragma config FOSC = INTOSC    // Oscillator Selection bits (INTOSC oscillator: CLKIN function disabled)
20
#pragma config BOREN = OFF      // Brown-out Reset Enable (Brown-out Reset disabled)
21
#pragma config WDTE = OFF       // Watchdog Timer Enable (WDT disabled)
22
#pragma config PWRTE = OFF      // Power-up Timer Enable bit (PWRT disabled)
23
#pragma config MCLRE = OFF      // MCLR Pin Function Select bit (MCLR pin function is digital input, MCLR internally tied to VDD)
24
#pragma config CP = OFF         // Code Protection bit (Program memory code protection is disabled)
25
#pragma config LVP = ON         // Low-Voltage Programming Enable (Low-voltage programming enabled)
26
#pragma config LPBOR = OFF      // Brown-out Reset Selection bits (BOR disabled)
27
#pragma config BORV = LO        // Brown-out Reset Voltage Selection (Brown-out Reset Voltage (Vbor), low trip point selected.)
28
#pragma config WRT = OFF        // Flash Memory Self-Write Protection (Write protection off)
29

30
/*           Pic10F322
31
 *               _______
32
 *       RA 0   |       | RA 3
33
 *     ground   |       | 2 - 5.5V
34
 *       RA 1   |_______| RA 2
35
 */
36

37

38
int main(int argc, char** argv) {
39
    ANSELA = 0b0000;
40
    TRISA = 0b1100;
41
    PORTA = 0b0000;
42

43
//    PORTA = 0b0000; // Blink 3mal
44
//    __delay_ms(10);
45
//    PORTA = 0b1111;
46
//    __delay_ms(500);
47
//    PORTA = 0b0000;
48
//    __delay_ms(500);
49
//    PORTA = 0b1111;
50
//    __delay_ms(500);
51
//    PORTA = 0b0000;
52
//    __delay_ms(500);
53
//    PORTA = 0b1111;
54
//    __delay_ms(500);
55

56
    while (1) {
57
        if (PORTAbits.RA2==1){
58
        PORTA = 0b0011;
59
        __delay_ms(100);
60
        PORTA = 0b0000;
61
        __delay_ms(100);
62
        }else{
63
        PORTA = 0b0001;
64
        __delay_ms(100);
65
        PORTA = 0b0000;
66
        __delay_ms(100);
67
        }
68
    }
Angehängte Dateien:
OP #3950906
Lesenswert?
• ▲
▼
Ok Programm hab ich geändert!
Versorgt hab ich Extern und nicht übers Pickit, aber das Problem hat 
sich nicht geändert ich hab nur noch komischere Sachen beobachtet! :(

Ich hab eh Oszillogramme angefügt CH1 hängt auf RA1, also ich hab keine 
Ahnung was bei dem Pic so spinnt, aber diese Komischen Spitzen am 
Highpegel treten nicht immer (eher selten vor allem die die bis 3,3V 
hinaufgehen...) auf die meiste Zeit ist er bei einem Volt und knapp 
darunter

Also falls noch jemand etwas einfällt bitte her damit und danke nochmal 
für die Hilfe bis jetzt!!!!
Angehängte Dateien:
OP #3952241
Lesenswert?
• ▲
▼
ok leute danke für eure Hilfe ich weiß nicht warum aber jz geht der PIC 
einwandfrei aber ich hab nix verändert ich versteh einfach nicht was 
schief grennt ist?

Aber das Programm lauft jetzt stabil und ich hab den PIN auch schon mit 
einer LED und einem Wiederstand mit 5mA belastet und die Spannung ist 
nicht eingegangen... auch nach mehrmaligen neu programmieren es funzt 
jetzt immer... Auch wenn ich einfach mal das PWM Modul aufdrehe immer 
3,3V Highpegel also das funktioniert mal wieder

Großes DANKE für euer Engagement!!!!!!

Falls ich wieder ein Problem hab melde ich mich ;)

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.