Forum: Mikrocontroller und Digitale Elektronik PIC16f628 programmieren


von Sebastian (Gast)


Lesenswert?

Welches ist das kostengünstigste Programmiergerät, um einen PIC16F628A 
zu programmieren?
Gibt es einen freien Assembler dazu?

: Gesperrt durch Moderator
von Mampf F. (mampf) Benutzerseite


Lesenswert?

Sebastian schrieb:
> Gibt es einen freien Assembler dazu?

Das ist ja an Google-Faulheit kaum zu überbieten ...

Microchip hat einen ... wer hätte es gedacht ;-)

: Bearbeitet durch User
von Sebastian (Gast)


Lesenswert?

Ich will aber einen Open-Source Assembler. Die Frage ist auch, ob es 
schon jemand geschafft hat, einen Arduino als Programmieradapter zu 
nutzen.

von neuer PIC Freund (Gast)


Lesenswert?


von Sebastian (Gast)


Lesenswert?

Pic Freund schrieb:
>http://sdcc.sourceforge.net/

Das hört sich sehr gut an. Gibt es ein wenig Beispielcode für den PIC16?

RS232 ist nur noch schwer verfügbar, deshalb ist ein Arduino als Adapter 
wahrscheinlich besser:

https://makerprojekte.de/2017/10/arduino-pic-programmer/

von Michael K. (Gast)


Lesenswert?

Sebastian schrieb:
> Ich will aber einen Open-Source Assembler.

Im jeden Preis?
Auch wenn die Microchip IDE + Compiler + Programmer / Debugger top sind?

PIC in Assembler zu vergewaltigen ist so lustig wie eine
Zahlwurzelbehandlung.
Du verzichtest auf den Debugger nur um das irgendwie von hinten durch 
die Brust ins Auge mit einem Arduino zu programmieren?

Jeder wie er mag, aber mein einziger Tip dazu ist, Dir einen PICkit 4 zu 
holen und Dir das MPlab X + kostenlosem C Compiler zu ziehen.
https://www.microchip.com/mplab/mplab-x-ide

Damit steht Dir das ganze MC (ds)PIC Universum offen statt mühselig 
handgeklöppelten, unleserlichen, nicht wiederverwendbaren Code in ASM zu 
verbrechen.

Was bringt eigentlich eine Open Source Toolchain bei einem Closed Source 
Mikrocontroller?
Warum ist das bei HW okay und bei Software ein no go?

von Sebastian (Gast)


Lesenswert?

>Auch wenn die Microchip IDE + Compiler + Programmer / Debugger top sind?

Läuft die IDE unter Linux? Muss man sich anmelden, um die IDE herunter 
zu laden?

von MaWin (Gast)


Lesenswert?

Sebastian schrieb:
> Welches ist das kostengünstigste Programmiergerät, um einen PIC16F628A
> zu programmieren?

Nein!

von Michael K. (Gast)


Lesenswert?

Sebastian schrieb:
> Läuft die IDE unter Linux? Muss man sich anmelden, um die IDE herunter
> zu laden?

Dein Ernst?
Du hast es nicht geschafft auf den Link zu clicken und den Download Link 
zu finden?

Soll ich bei Dir vorbeikommen um Dir das zu installieren?

von Sebastian (Gast)


Lesenswert?

Hier gibt's ein Beispiel für den SDCC:

https://github.com/diegoherranz/sdcc-examples/tree/master/pic16/1.blink_led

Allerdings steht im Makefile:
FAMILY=pic16
PROC=18f2550

???

von Sebastian (Gast)


Lesenswert?

Sehr cool, es gibt einen Online-Compiler:

https://mplabxpress.microchip.com/mplabcloud/ide

Nur ausgerechnet für den PIC16F628A kein Beispiel.

Hat jemand vielleicht gerade ein "Blinky" zur Hand?

Ist der Prozessor obsolet? Bei Reichelt kostet er 1,30€.

von Sebastian R. (sebastian_r569)


Angehängte Dateien:

Lesenswert?

Sebastian schrieb:
> Ist der Prozessor obsolet?

Hintern abwischen geht aber schon alleine, oder?

Beitrag #5899313 wurde von einem Moderator gelöscht.
von Sebastian R. (sebastian_r569)


Lesenswert?

Sebastian schrieb:
> Hat jemand vielleicht gerade ein "Blinky" zur Hand?

Da sollte so ziemlich jedes Beispielprogramm für gehen, das du finden 
kannst. Musst halt nur den Prozessornamen ändern.

Für einen (uralten) PIC16C76. Wie du das auf deinen Controller gebogen 
bekommst, darfst du gerne selber herausfinden.
1
;************************************************************
2
; Processor: PIC16C76 at 8 MHz using external oscillator
3
; Function: Flash a LED connected to RB0
4
; Author: Sebastian Rietig
5
;************************************************************
6
7
LIST P=16C76, R=DEC ; Use the PIC16C76 and decimal system
8
9
#include "P16C76.INC" ; Include header file
10
11
__config _WDT_OFF & _PWRTE_OFF & _BODEN_ON & _XT_OSC
12
13
; -----------
14
; INITIALIZE
15
; -----------
16
17
ORG 0x000 ; Program starts at 0x000
18
19
CLRF PORTA ; Initialize port A
20
CLRF PORTB ; Initialize port B
21
22
BSF STATUS,RP0 ; RAM bank 1
23
24
CLRF TRISA ; All pins port A output
25
CLRF TRISB ; All pins port B output
26
27
BCF STATUS,RP0 ; RAM bank 0
28
29
MOVLW 7
30
MOVWF ADCON1 ; Comparators off, all pins digital I/O
31
32
; ----------
33
; MAIN LOOP
34
; ----------
35
36
Main BSF PORTB,0 ; Turn on LED connected to RB0
37
CALL Delay
38
BCF PORTB,0 ; Turn off LED connected to RB0
39
CALL Delay
40
GOTO Main
41
42
; Delay = 0.5 seconds
43
; Clock frequency = 8 MHz
44
; http://www.piclist.com/techref/piclist/codegen/delay.htm
45
46
CBLOCK 0x20
47
d1
48
d2
49
d3
50
ENDC
51
52
Delay
53
;999990 cycles
54
MOVLW 0x07
55
MOVWF d1
56
MOVLW 0x2F
57
MOVWF d2
58
MOVLW 0x03
59
MOVWF d3
60
Delay_0
61
DECFSZ d1, f
62
GOTO $+2
63
DECFSZ d2, f
64
GOTO $+2
65
DECFSZ d3, f
66
GOTO Delay_0
67
68
;6 cycles
69
GOTO $+1
70
GOTO $+1
71
GOTO $+1
72
73
;4 cycles (including call)
74
RETURN
75
76
END

von MaWin (Gast)


Lesenswert?

Ihr Lamer! Keiner hat gemerkt das er euch nur verarscht.

: Wiederhergestellt durch Moderator
von Teo D. (teoderix)


Lesenswert?

MaWin schrieb:
> Ihr Lamer! Keiner hat gemerkt das er euch nur verarscht.

Maaaan, ich hab mir grad Popcorn geholt...... :(

von ... (Gast)


Lesenswert?

Warum nehmen Anfaenger eigentlich gern den PIC16f628?

Wegen dem UART?
ADs hat er ja nicht.

von Sebastian (Gast)


Lesenswert?

>Warum nehmen Anfaenger eigentlich gern den PIC16f628?

Falls du mich meinst:
Eigentlich frage ich nur nach den Tools, weil ich im Gegensatz zu dir 
auch in 2 Stunden selbst einen Assembler mit passender VM schreiben 
kann.
Aber erst muss ich sehen, ob sich das lohnt.

von hinz (Gast)


Lesenswert?

... schrieb:
> Warum nehmen Anfaenger eigentlich gern den PIC16f628?

Möglicherweise weil er vor Jahren der preiwerteste aus der Reihe war. 
Daher gibts eine Menge Beispielprojekte im Netz.

von Christian M. (Gast)


Lesenswert?

Sebastian schrieb:
> weil ich im Gegensatz zu dir auch in 2 Stunden selbst einen Assembler
> mit passender VM schreiben kann.

Definitiv Popcorn!

Gruss Chregu

von Sebastian (Gast)


Lesenswert?


von ... (Gast)


Lesenswert?

> Aber erst muss ich sehen, ob sich das lohnt.

Wenn der 16F628 dich schon 1.30 kostet wohl eher nicht.

Die unerschoepfliche Quelle von PICs sind/waren alte Akkumodule
von HP-Servern die ihren Cache damit gestuetzt haben.
Da stecken dann aber 16LF819 drin.

> in 2 Stunden selbst einen Assembler mit passender VM schreiben kann

Wer es wirklich drauf hat, spielt eigentlich nicht *uinos herum.

Und der ordert sich fuer 10 Eu einfach einen Clone aus Malaysia und
verfrachtet ein MPLAB(ohne X) auf seinen Rechner.
Das braucht in der Summe kaum mehr als eine Viertelstunde.

von npn (Gast)


Lesenswert?

Sebastian schrieb:
> weil ich im Gegensatz zu dir auch in 2 Stunden
> selbst einen Assembler mit passender VM schreiben kann.

Toll! Endlich ein Supergenie im Forum. Wo andere Monate bzw. Jahre dazu 
brauchen, willst du das gleiche in zwei Stunden schaffen.

POPCORN!

von Sebastian (Gast)


Lesenswert?

npn (Gast)
>Toll! Endlich ein Supergenie im Forum. Wo andere Monate bzw. Jahre dazu
>brauchen, willst du das gleiche in zwei Stunden schaffen.

Dass du glaubst, dass man dazu ein Genie sein muss, zeigt dein schwaches 
Niveau.
Einen simplen Assembler sollte schon jeder Bachelor schreiben können.
Ich verlasse mal diesen Thread, die Flughöhe ist mir hier zu niedrig.

von Heinz (Gast)


Lesenswert?

Der MiniPro hat mir immer gute Dienste geleistet. Ich habe sogar 2 
davon.
Schau mal für Testbericht u. SW
http://www.afug-info.de/Testberichte/MiniPro-TL866/


Compiler? Hast du vorkenntnisse? Was möchtest Du überwiegend machen?

von Volker S. (vloki)


Lesenswert?

Sebastian schrieb:
> Ich verlasse mal diesen Thread, die Flughöhe ist mir hier zu niedrig.

Gut, dann kann ja der OP noch mal was schreiben, falls er noch Fragen 
hat...

Günstiges Tool für halbwegs aktuellen michrochip controller -> Mplab 
Snap

: Bearbeitet durch User
von Volker S. (vloki)


Lesenswert?

Sebastian schrieb:
> Allerdings steht im Makefile:
> FAMILY=pic16
> PROC=18f2550

Das ist etwas missverständlich. Mit Family PIC16 meinen die 16 Bit 
Befehlsbreite. PIC16 haben nur 14 Bit Befehle und gehören hier (SDCC) 
zur Familie PIC14 ;-)

von Volker S. (vloki)


Lesenswert?

npn schrieb:
> Toll!

Fehlt da evtl. ein r?

von Teo D. (teoderix)


Lesenswert?

Sebastian schrieb:
> Einen simplen Assembler sollte schon jeder Bachelor schreiben können.

Aber wo er recht hat, hat er recht!
Dazu brauchts nicht mal nen Bachelor.

npn schrieb:
>> weil ich im Gegensatz zu dir auch in 2 Stunden
>> selbst einen Assembler mit passender VM schreiben kann.
>
> Toll! Endlich ein Supergenie im Forum. Wo andere Monate bzw. Jahre dazu
> brauchen, willst du das gleiche in zwei Stunden schaffen.

Ein Assembler ist etwas VÖLLIG anderes, als ein Compiler!
Der übersetzt doch nur einen Buchstaben Code, in einen Zahlen Code.
Eine Label-Verwaltung und Makro-Funktion ist auch noch schnell dazu 
gebastelt.....

von npn (Gast)


Lesenswert?

Teo D. schrieb:
> Ein Assembler ist etwas VÖLLIG anderes, als ein Compiler!
> Der übersetzt doch nur einen Buchstaben Code, in einen Zahlen Code.
> Eine Label-Verwaltung und Makro-Funktion ist auch noch schnell dazu
> gebastelt.....

Das weiß ich. Meinst du wirklich, daß man das alles komplett in weniger 
als 2h auf die Beine stellen kann? Darf ich da leise Zweifel anmelden?

von bingo (Gast)


Angehängte Dateien:

Lesenswert?

Leider gibt es die Brenner von sprut.de nicht mehr und der uprog2 kann 
den 16F628 nicht.

von hinz (Gast)


Lesenswert?

bingo schrieb:
> Leider gibt es die Brenner von sprut.de nicht mehr und der uprog2
> kann
> den 16F628 nicht.

Soll er einfach einen 20 Jahre alten Picstart via Ebay kaufen.

von Teo D. (teoderix)


Lesenswert?

npn schrieb:
> Meinst du wirklich, daß man das alles komplett in weniger
> als 2h auf die Beine stellen kann? Darf ich da leise Zweifel anmelden?

Nö, hab ich ja auch nicht behautet.

Sebastian schrieb:
> in 2 Stunden

VS

npn schrieb:
> Wo andere Monate bzw. Jahre dazu
> brauchen

....

von Michael K. (Gast)


Lesenswert?

Sebastian schrieb:
> Einen simplen Assembler sollte schon jeder Bachelor schreiben können.

Und ab Realschulniveau sollte man es schaffen auf einen Link zu clicken 
und des englischen mächtig genug sein, um den downloadlink zu finden.

Du pinkelst einen ganz schön breiten Strahl dafür das Du das alles von 
A-Z nicht alleine auf die Kette bekommst.

Zu genial für die einfachen Dinge, oder einfach nur großes Maul gepaart 
mit kein Benehmen?

von Mampf F. (mampf) Benutzerseite


Lesenswert?

Wer nimmt denn noch PICs her ... Das können wohl nur Leute sein, die 
bestehende Designs haben und darauf angewiesen sind - und falls nicht, 
sind es Leute, die keinerlei Ahnung haben.

Bei Mouser kostet ein aktueller Cortex M0 im 20pin Package nur 
geringfügig mehr, dafür hat man aber deutlich mehr Resourcen, ist 
schneller usw:

https://www.mouser.de/ProductDetail/STMicroelectronics/STM32F042F6P6?qs=sGAEpiMZZMsMLZWdhVL71%252Bd710qY6Ja3vgPhlEe9cgc%3D

Für die Cortex gibt es auch freie Tools wie GCC usw

*edit*: Oder Leute, die etwas in hohen Stückzahlen produzieren wollen - 
die würden dann aber vmtl einen 20ct-µC aus China verwenden.

: Bearbeitet durch User
von nicht sebastian (Gast)


Lesenswert?

Sebastian schrieb:
> Sehr cool, es gibt einen Online-Compiler:
>
> https://mplabxpress.microchip.com/mplabcloud/ide
>
> Nur ausgerechnet für den PIC16F628A kein Beispiel.
>
> Hat jemand vielleicht gerade ein "Blinky" zur Hand?
>
> Ist der Prozessor obsolet? Bei Reichelt kostet er 1,30€.

Wow und der ist dann open source?
Troll

von ... (Gast)


Lesenswert?

> ist schneller

Bei manchen Dingen hat man alle Zeit der Welt.

So ein 16LF819 braucht bei 1.5 V und internem LFO-Takt
(ca. 30 kHz) 4 µA und bei 1.3 V noch 3 µA*.

Wenn er fertig hat, kann man ihn dann auch noch richtig
schlafen legen.

Mit einem STM32F030 habe ich solche niedrigen Taktraten
zugegebenermassen noch nicht probiert.



*) Werte an einem Beratungsmuster gemessen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Sebastian schrieb:
> Ich verlasse mal diesen Thread
Dann mache ich ihn mal dicht.

> die Flughöhe ist mir hier zu niedrig.
Du selber hast das Niveau definiert und stabil gehalten.

Dieser Beitrag ist gesperrt und kann nicht beantwortet werden.