Hallo zusammen! Ich bin ein Anfänger... Mit dem Pic 12F628A und mit dem 16F629 komme ich zurecht und kann auch kleinere Programme schreiben. Nun habe ich mich mal an den PIC16F1518 gewagt, mit dem Hintergrund diesen später mit C zu programmieren. Aber zuerst wollte ich den mit Assembler in Betrieb nehmen. Nur dieses Teil will einfach nicht starten. Ich habe diesen auf einer kleinen SMD Platine mit einem 20MHz Quarz verbaut. Die SMD Kondensatoren am Quarz haben 22pF. Nun dachte ich, vielleicht klappts ja mit dem internen Oszillator, allerdings bin ich auch da gescheitert. Der PIC wird über eine ICSP-Leitung von dem Brenner 8 r5 von Sprut beschrieben. Wird ordnungsgemäß erkannt und gebrannt. Aber startet nicht. Nun muss ich dazusagen, dass der PIC kurzzeitig einmal eine Versorgungsspannung von 7,49 Volt hatte, weil ich den Spannungsregler dummerweise überbrückt hatte. Kann man einen defekten PIC noch brennen? Vielleicht kann ja einer mal über meinen Source-Code schauen, ob ich einen grundlegenden Denkfehler gemacht habe. Ich weiß nicht mehr weiter... Dafür schonmal vielen Dank im voraus!
1 | ;##### Processor - Listing ######### |
2 | list p=16f1518 |
3 | |
4 | ;##### File Include ################ |
5 | #include <p16f1518.inc> |
6 | |
7 | ERRORLEVEL -302 |
8 | |
9 | ;##### Configuration ############### |
10 | |
11 | ; __CONFIG _CONFIG1, _FOSC_INTOSC & _WDTE_OFF & _PWRTE_ON & _MCLRE_OFF & _BOREN_OFF & _CLKOUTEN_OFF |
12 | __CONFIG _CONFIG1, _FOSC_HS & _WDTE_OFF & _PWRTE_ON & _MCLRE_OFF & _BOREN_OFF |
13 | __CONFIG _CONFIG2, _LVP_OFF |
14 | |
15 | ;################################### |
16 | |
17 | ;##### Init ######################## |
18 | org 0x00 ;die Startadresse nach Reset ist 0, hier startet der PIC |
19 | goto main |
20 | |
21 | init |
22 | BANKSEL PORTC ; |
23 | CLRF PORTC ;Init PORTA |
24 | BANKSEL LATC ;Data Latch |
25 | CLRF LATC ; |
26 | BANKSEL ANSELC ; |
27 | CLRF ANSELC ;digital I/O |
28 | BANKSEL TRISC ; |
29 | MOVLW B'00000000' |
30 | MOVWF TRISC |
31 | ; BANKSEL OSCCON |
32 | ; BSF OSCCON, 0 ;Internal Oscillator Block |
33 | ; BSF OSCCON, 1 |
34 | ; BSF OSCCON, 3 ;16MHz |
35 | ; BSF OSCCON, 4 |
36 | ; BSF OSCCON, 5 |
37 | ; BSF OSCCON, 6 |
38 | ; BANKSEL OSCSTAT |
39 | ; BSF OSCSTAT, 0 |
40 | ; BCF OSCSTAT, 1 |
41 | ; BSF OSCSTAT, 4 |
42 | ; BCF OSCSTAT, 5 |
43 | ; BCF OSCSTAT, 7 |
44 | |
45 | return |
46 | |
47 | ;################################### |
48 | |
49 | ;##### Main ######################## |
50 | |
51 | main |
52 | goto init |
53 | |
54 | mainloop |
55 | |
56 | BANKSEL PORTC |
57 | bsf PORTC,0 ;RC5 |
58 | bsf PORTC,1 ;RC6 |
59 | bsf PORTC,2 ;RC5 |
60 | bsf PORTC,3 ;RC5 |
61 | bsf PORTC,4 ;RC5 |
62 | bsf PORTC,5 ;RC5 |
63 | bsf PORTC,6 ;RC5 |
64 | bsf PORTC,7 ;RC5 |
65 | |
66 | GOTO mainloop |
67 | |
68 | |
69 | ;################################### |
70 | |
71 | end |