-
Thread
PIC16F876 - Probleme!
einiges versucht, aber noch immer nichts gefunden! Immer noch das gleiche: Pickik 2 + MPLAB v8.46 + PIC16F876 PKWarn0003: Unexpected device ID: Please verify that a PIC16F876 is correctly installed in the application. (Expected ID = 0x9E0, ID Read = 0x0) Was kann/könnendes es noch sein? Bitte
versucht, aber noch immer nichts gefunden! > Immer noch das gleiche: > Pickik 2 + MPLAB v8.46 + PIC16F876 > > PKWarn0003: Unexpected device ID: Please verify that a PIC16F876 is > correctly installed in the application. (Expected ID = 0x9E0, ID Read = > 0x0) > > Was kann/könnendes es noch
-
Thread
Probleme mit AD des dsPIC30F4013
Dies zieht sich bis zum Endbereich hin. Liegt es an der Einstellung des AD`s? Arbeite mit dem C30 [c] void init_ADC(void) { ADPCFG=0xC0; ADCSSL=0x00; ADCON1bits.ADON=0; //A/D aus ADCON1bits.ADSIDL=0; ADCON1bits.FORM=0; ADCON1bits.SSRC=7; ADCON1bits.ASAM
Hallo, das mache ich schon. [c] unsigned int AV_ADC(unsigned char channel) { unsigned long av=0; unsigned char i; for(i=16;i>0;i--) { av = av+read_adc(channel); } av = av/16; return av; } [/c]
-
Thread
Frage über PIC16F627A
Hallo Microcontroller Interessierte Ich habe ein paar Fragen zu einem PIC (PIC 16F627A) Da ich gerade erst mit Microcontrollern anfange, wäre es nett wenn die Antworten etwas einfach formuliert wären. Also hier meine Fragen: 1. Wie liegen die Anschlüsse bei dem PIC?
Hier der Link http://www.sprut.de/electronic/pic/programm/lauflicht/lauflich.htm Da der 16f627A pinkompatibel zum 16x84 ist, kannst du die Pins auch aus dem obgenannten Link entnehmen. Zum Quarz, ich würde den internen Oszillator verwenden, und
-
Thread
82S129 PROM emulieren mit Attiny
; = 8 cycle .org (pc + 0x7F) & 0xff80 PLL_data: .db 0x04, 0x01, 0x0C, 0x04, 0x0F, 0x08, 0x00, 0x09 [/avrasm] Als Takt die interne PLL (16MHz). Peter
abgearbeitet sind. Große Sprünge bekommt so auch nicht hin. Alternativ bleibt noch der Blick in die 16 oder gar 32Bit Welt wo es auch viele kleine µC gibt die >>60Mhz echtem Befehlstakt haben und die auch nicht wirklich teurer sind als ein normaler AVR oder 8Bit Pic. (Pic24, kleine PIC32, CortexM0 usw
-
Thread
Verstehe meinen Pic nicht!
die Fehlermeldung (bzw. von 2 Versuchen) [code]PIC18F2550 found (Rev 0x5) Erasing Target Programming Program Memory (0x0 - 0x387F) Verifying Program Memory (0x0 - 0x387F) Running Target PK2Error0027: Failed verify (Address = 0x154 - Expected Value 0x6A03 - Value Read 0x3603) PICkit 2 Ready Programming Target (22.12.2010 15:16:31) PIC18F2550 found (Rev 0x5) Erasing Target Programming Program Memory (0x0 - 0x387F) Verifying Program Memory
-
Thread
128 Displays simultan ansteuern
, um Teilbusse zu entkoppeln. Zur Einschätzung der Übertragungsrate gehe ich für eine 16x2-Anzeige von 40 Byte mit je 11 Bit = 440 Bit aus. Bei einer Baudrate von 115,2 kB dauert die Auffrischung aller 128 Displays rund 0,5 s. Das sollte für die "visuelle Gleichzeitigkeit" reichen. Andernfalls
Für 1-2m reicht I2C immer noch aus, selbst ohne I2C Extender. Mit dem PCF8574(A) kann man 16 LCDs ansprechen. Das Ganze 8x macht 128 LCDs. Also braucht man noch 2x 4:1 I2C Mux ala PCA9544A oder 1x PCA9547. https://www.mikrocontroller.net
-
Thread
16 Bit MC oder 8 Bit MC
Lothar Miller schrieb im Beitrag #3150971: > Einen uC mit integrierten 16Bit ADCs und 1MS/s kenne ich nicht. Und vor > allem glaube ich kaum, dass ein integrierter ADC 16 Bit auch tatsächlich > schafft... SiLabs C8051F06x oder Freescale K50 (allerdings
c-hater schrieb im Beitrag #3151458: > Dagegen: > > ATMEGA1284P 128k Flash > > Pollin: 5.95+4.95 Versand=10.90 EUR > > Reichelt: 5.90+5.60 Versand=11.50 EUR Dagegen: PIC 32MX150F128B-ISP
-
Thread
S: kleinen Mikrocontroller ohne Hühnerfutter für einmaligen Einschaltimpuls
zur Info (entspricht nicht der Spezifikation des TE): Manche PICs haben an PORTA einen OD-Pin (z.B. PIC16F690, 16F62x, 16F87x u.v.m.) oder auch frei OD-konfigurierbare Pins an mehreren PORTS, z.b. PIC16F153x (Register ODCONA /B /C).
dem bereits verbauten Taster, da wolltest Du doch auch den uC händisch verdrahten, wenn ich Dich richtig verstanden habe. Edit: Habe es mal aufgezeichnet, dauerte 5min, siehe Bild. Sind leider 6x6mm geworden, sorry.
-
Thread
Universelle Mikrocontroller Toolchain (Linux)
Plattformen sind momentan: --------------------------------------- - Atmel AVR (nur ATMega) - Microchip PIC14 (PIC12xx, PIC16xx) - Microchip PIC16 (PIC18xx) - Freescale HCS08 - Freescale HCS12 (auch banked) - TI MSP430 - Renesas R8C - STM/Freescale SPC56xx Dazu kommt eine universelle Bibliothek,
testen konnte: - Diverse MCS51 - Espressif ESP32 - Microchip/Atmel AVR (nur ATMega) - Microchip PIC14 (PIC12xx, PIC16xx) - Microchip PIC16 (PIC18xx) - NXP/Freescale HCS08 - NXP/Freescale HCS12X (auch banked) - NXP/Freescale MPC57xx - NXP/Freescale S9KEA - NXP/Freescale S32K11x - NXP/Freescale
-
Thread
riesige LED-Matrix
Ich habe auch schonmal eine Matrix selbstgebaut (normale 5mm LEDs). Waren nur 5x7 (also 35 LEDs) aber selbst das hat mir gereicht^^ Habe sowieso einen Atmega32 "auf Lager". Dann nehm ich den dafür. Wenn die Matrizen da sind überarbeite ich dann meine Schaltung
Temp1--; } S_Data = 0; } [/c] Im Späteren Programmablauf musst du bei deiner Umsetzung dann folgendermaßen arbeiten: [c] #define Zeile LATb // hier hängen die Zeilentreiber #define S_Latch LATCbits.LATC5
-
Thread
Compiler Error beim Build für PIC16F15325
=16F15325 -c -D__DEBUG=1 -mdebugger=pickit3 -mdfp="C:/Users/Andre/.mchp_packs/Microchip/PIC16F1xxxx_DFP/1.23.382/xc8" -fno-short-double -fno-short-float -O0 -fasmfile -maddrqual=ignore -xassembler-with-cpp
f nbproject/Makefile-default.mk dist/default/production/testfgfh.X.production.hex make[2]: Entering directory 'C:/Users/Teo/MPLABXProjects/testfgfh.X' "C:\Program Files\Microchip\xc8\v2.36\bin\xc8-cc.exe" -mcpu=16F15325 -c -mdfp="C:/Users/Teo/.mchp_packs/Microchip
-
Thread
USB AVR ISP
solltest du zumindest VID/PID, etc. sehen. Zum Vergleich: Device Descriptor: bcdUSB: 0x0101 bDeviceClass: 0x02 bDeviceSubClass: 0x00 bDeviceProtocol: 0x00 bMaxPacketSize0: 0x08 (8) idVendor: 0x16C0 idProduct: 0x05E1 bcdDevice: 0x0100
der Treiber nicht im System installiert ist? "error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc" Oder habe ich dich jetzt falsch verstanden?
-
Thread
DTMF Türsprechmodul mit PIC16F8x - Prüfung und Programmierung
entwickelt. Konkret handelt es sich um ein Analogtelefon DTMF Türsprechmodul. Verwendet wurde ein PIC16F8X unter Nutzung des internen Oszillator. Für die weitere Beschaltung wurden folgende Vorlagen verwendet; Serviceschnittstelle ICSP: http://www.sprut.de/electronic/pic/icsp/icsp.htm SLIC; Datenblatt
(ICSP) 14/VDD: +5VDC 15/RA6: I/O 16/RA7: I/O 17/RA0: I/O 18/RA1: I/O Zu belegen (S/W-seitig): 1-6 Tasten, 2-4 Relais, 1-2 Signalgeber... (externe/s Modul/e). 2. Benötige jemand, der mir ein Programm für o.g.
-
Thread
PIC16F84A : Von Bank 0 auf Bank 1 wechseln (MPLab / C)
findest du im Datenblatt des PIC16F84A.
dem ASM Listing anschauen, dass der Compiler vor dem Zugriff auf STATUS Register ein BSF STATUS, 0x5 einbaut. Mit dem zusätzlichen SET_BIT ist es doppelt gemoppelt ;-) Welche MPLAB X und XC8 Versionen verwendest du? Noch was [c]TRISB = 0;[/c] ist nicht gleich zu setzen mit [c]SET_BIT(TRISB,
-
Thread
PIC24FJ64 ADC Problem
turn on only the corresponding LED // 0 -> leftmost LED.... 7-> rightmost LED PORTA = (0x80 >> a); } // main loop } // main [/c]
Hier übrigens noch der Link zu einem sehr guten Buch für den Einstieg in die Pic24 Welt. Kann ich wärmstens empfehlen... (englisch) http://www.amazon.com/Programming-16-Bit-PIC-Microcontrollers-Technology/dp/0750682922 Programming 16-Bit PIC Microcontrollers in C - Learning
-
Thread
16F84A 7Segment Anzeige umschreiben in assembler (Anfänger)
4567 auch auf low sind, jenachdem wie du sie konfiguriert hast, wenn ich recht schätze hast du den 16f628 im einsatz!? in der routine von tastendrücker ist das ganze so aisgeführt das der taster per pull up an 5v gehaten wird, wird er geschlossen zieht er den jeweilige pin auf 0, das merkt der pic
* ; ********************************************* ; ; Zeichen Segmente ; 0 a,b,c,d,e,f ; 1 b,c ; 2 a,b,d,e,g ; 3 a,b,c,d,g ; 4 b,c,f,g ; 5 a,c,d,f,g ; 6 a,c,d,e,f,g ; 7 a,b,c ; 8 a,
-
Thread
PIC10F - Alternativen
Tiny 5/10? Kann man diese MiniPICs in C programmieren mit MPLAB?
conditionsOperating power supply range 1.8 V to 3.6 V (down to 1.65 V at power down)Temp. range: - 40 °C to 85, 105 or 125 °C •Low power features5 low power modes: Wait, Low power run (5.1 μA), Low power wait (3 μA), Active-halt with full RTC (1.3 μA), Halt (350 nA)Consumption: 195 μA/MHz + 440 μAUltra-low
-
Thread
Beispiel - Portansteuerung PIC16f877A
Hallo. Ich sitze hier und versuche krampfhaft nem PIC16f877A leben einzuhauchen. Leider ist jeder meiner Lösungsansätze zum scheitern verurteilt und ich bald fertig mit den Nerven... Ich benutze MPLAB und den Compiler CC5X. Das ganze soll über ICSP
haben, kannst Du natürlich um Hilfe bitten. Evtl. helfen dir Internetseiten weiter, auf denen PIC Beispielprogramme in 'C' zu finden sind, wie z.B. www.michrochipc.com (->verwendet aber nicht CC5X sondern HI-TECH compiler, glaube ich).
-
Thread
Lötstation LS-50 defekt Fehlersuche
http://ww1.microchip.com/downloads/en/AppNotes/00000658B.pdf https://www.circuitvalley.com/2012/02/pic16f917pic16f1907-7segmentlcddriverex.html Es wäre schade das LCD versauern zu lassen. Ist ja eine Rarität. Gruß, Gerhard
Ich bin mir nicht sicher, ob es S3C825A Mikrocontroller im Inneren ist, weil das Innere 64 Pins Quadpack 13x19 Pins hat. S3C825A hat 80 Pins.
-
Thread
uC - kennst du einen, kennst du alle
man Hochtemperatur bis 300 GradC HT83C51, das alles gibt es bei anderen uC-Familien nicht, billig für 5ct PMS150C, ausser man braucht einen uC der ab 0.25V läuft: EtaCore M3, der stammt nicht aus der 8051-Familie sondern ARM-Familie
Fragen zur dennoch fast immer nötigen Analogtechnik stellt. Hier im Forum finden sich vielleicht 5 threads, bei denen man jemandem zu einem µC raten sollte. Umgekehrt gibt es sicher 5.000.
-
Thread
LCD Display am PIC - verstädnisfrage BUS Übertragung
; LCD_D0_OUT = LCD_data.bit0; LCD_STROBE(); }[/c] Kannst du natürlich auch in deinem PDF schauen, wie das dort läuft. (Die Anleitung scheint allerdings auch eher für einen PIC16 zu sein)
eigentlich. Ich geb dir mal ein Beispiel (Auszug, zum Angucken. Nicht zum gedankenlosen copy&paste): [c] INCLUDE P16F716.PIC ; Hardware: ; Pollin-LCD 2x8Zeichen Alpha, 4 Datenbit ; der PIC läuft mit 18.432 MHz ; Portbelegung ; Port B CE_LCD: BIT PortB,0 ; out RefCt: BIT
-
Thread
Pollin Display WINSTAR WX480320A-TFH-LB (S/W, 480 x 320 Pixel)
Datenblätter gefunden habe, hat das 640x480 einen eingebauten Controller SSD1963. Das 320x240 wohl nicht und bei 3 x 8bit/Pixel braucht man dafür rund 230kB RAM. Woher hast Du die genommen? PortE ist ja nur 16bit breit. Wie sieht dort Dein
840x480 getestet, das mit der Graph-16 Libery arbeitet, aber das ist vom Graphikaufbau her viel zu langsam. Jetzt habe ich mir den Arduino DUE bestellt und hoffe, dass das große Display mit 800x480 damit
-
Thread
suche IC das arbeitet wie Stufenrelai
noch Leistungstreiber. Die Programmierumgebung vom PIC-Hersteller Microchip ist auch kostenlos. Allerdings muß man programmieren, sich in den PIC mit Assembler oder C einarbeiten. Auch braucht er vielleicht etwas mehr Strom, als statische CMOS-Logik,
IC, ein Pulldown-Wid. und 3 Relais. Die Entkopplung der Spannungsversorgung kommt noch dazu. Der µC hat noch 2 Pins frei, mit denen man z.B. den Status der Schaltstufen binär ausgeben könnte, etc.... Programmer (Usbasp bekommt man für 5 Euronen) Basic- und C-Compiler gibts für lau. Ein kleines Steckbrett
-
Thread
Gesucht: µC mit 4x PWM + Ethernet Schnittstelle
Die gesamte PIC18F97J60-Familie MAC und PHY integriert. Wenn es am schnellsten gehen soll: schau dir mal den Lantronix xPort an!
Alpenmatrose schrieb im Beitrag #4099674: > Björn G. schrieb im Beitrag #4099602: >> Die gesamte PIC18F97J60-Familie >> MAC und PHY integriert. > > Hat allerdings nur drei 16-bit Timer :-/ Aber 5 (E)CCP Module und ein Timer wird ja nicht durch /ein/ PWM komplett ausgelastet.
-
Thread
200 LED Matrix mit nur 8 LEDs
Hallo Kai, im obrigen Bild habe ich eine Auflösung von 32x512. Also 512 Spalten pro Umdrehung. Die LEDs, 32 an der Zahl, sind im 1 cm Abstand montiert. Ich nutze auch einen AVR, einen ATmega8, keinen Pic. Die LED Modul Platinen haben bei etwa 8x1cm je
Ganz einfach: [c] uint8_t DisplayRAM[256, 16] = {}; // 256 Spalten, 16 LEDs uint8_t* DisplayPixels = &DisplayRAM[0,0]; uint8_t DisplayRow = 0; ISR(TIMER_XYZ) { if (DisplayRow == 1) { return
-
Thread
Dauer FFT berechnen
Ich muss Mano Wee recht geben bei einem Signal von 100kHz brauch man 2,5x Abtastrate also 250kHz. Wenn man nach "Industriestandart" geht sollte man die 10x, also 1MHz Abtastrate, nehmen um das Signal rekonstruieren zu können. Wie schon erwähnt ein AVR ist damit überfordert
Fuer endlich lange Datensaetze braucht man mehr. Das beste, was man so in der Praxis sieht, ist ca. 2.5 - z.B. Tek- oder Agilent-Oszilloskope. Die verwenden aber trickreiche digitale Filter (clever modifiziertes sin(x)/x), damit es auch praktisch funktioniert.
-
Thread
Interrupts einbinden
; } #pragma code _LOW_INTERRUPT_VECTOR = 0x000818 void _low_ISR (void) { ; } */[/c]
1;} } [/c] Insgesamt wird dort 16 mal Clock = 1 gesetzt. Das hat mit druch-clock-en eines Schieberegisters nicht wirklich was zu tun.
-
Thread
WordClock mit WS2812
nicht geflasht. Die Fehlermeldung lautet [code] connecting .... Erasing flash... Writing at 0x00000000... (0 %) Writing at 0x00000400... (5 %) Writing at 0x00000800... (10 %) Writing at 0x00000c00... (15 %) Writing at 0x00001000... (20 %) Writing at 0x00001400... (25 %) Writing at 0x00001800
professionell! Die Matrix gabs beim Chinesen: (https://www.aliexpress.com/item/best-price-1-pcs-DC5V-16-16-Pixel-WS2812B-LED-Digital-Pixels-Panel-led-module/32433617354.html) und sie passt in mein Format. Als Minutenpunkte wollte ich die Ecken nehmen und eine 12x12 oder 12x10/10x12 (Teil-)Matrix in
-
Thread
Binär/ASCII zum realen Wert
Das klingt gut. Und wie konvertiere ich das ? Sry bin noch Anfänger ^^ Arbeite mit dem PIC16F887
was will man 3 Wochen programmieren schon erwarten) Kennt jemmand gute Bücher über das Thema (PIC programmierung, vlt sogar über den PIC16F887) Hab das Buch Mikrocontroller für Einsteier und Unterlgagen Elabo. Und noch eine Frage: Ist es einfacher sowas in C zu programmieren ? Und
-
Thread
Minutengenaue 24 Stunden-Wortuhr - wer will mitbauen?
display.h steht: [c]// Von-Neumann-Variant, Data from WC24h_18x16_V2_1134_5.Dez.2014, CodeGen v0.4[/c] Wenn der Code das erste mal fehlerfrei durch einen Compiler gelaufen ist, setze ich die Version auf 1.0 hoch.
Torsten C. schrieb im Beitrag #3914710: > Die [word_ix]-Werte 4 und 5 gibt es in der > WC24h_18x16_V2_1134_5.Dez.2014 nicht. Das ist dadurch entstanden, dass ich für "VIERTEL" - das ich ursprünglich übersehen
-
Thread
Code(SRAM steuern) verbessern. Arduino mega 2560
Bei 16MHz => T=62,5ns muss ich min. 2 Tackte warten. [c] byte SramRead(unsigned int addr){ PORTC = lowByte(addr); PORTL = highByte(addr); DDRB = 0x00; //I/O Register soll ausgelesen werden
c-hater schrieb im Beitrag #5441877: > Der Rest des Adressraums kann wahlweise durch Banking erschlossen werden Banking ist schlechteste, was aus dem PIC nur kommen könnte. Wenn ich mal zu der Idee
-
Thread
Abschätzung Codegröße Mikrocontroller
Aufgabe würde ich schlichtweg Assembler nehmen. Und Gleitkomma ist bei 2K Codebereich auch drin. Meine PIC-GK-Lib braucht weniger als ein halbes K, da wären noch 1,5 K frei. Bei deinem uC müßtest du schauen, ob und was für eine GK-Lib du hast / bekommen kannst / dir selber schreiben kannst. Ansonsten
"echter" gleitender Durchschnitt? Mein gleitender Durchschnitt ist ist momentan folgender: [c] uint16_t adc_calc_average_value( uint16_t new_value ) { static uint16_t values[AVERAGE_VALUES]; static uint8_t position = 0; uint8_t counter; uint32_t averaged_value = 0; values[position
-
Thread
Union und Bitfelder
, sich die folgende Speicherbelegung ergibt? Speicheraddrese Bit 7 6 5 4 3 2 1 0 0x000 | | | | | | | |dir| 0x001 | |evt|evt|evt|evt|evt|evt|evt| mit union: Speicheraddrese Bit 7 6 5 4 3 2 1 0 0x000
: 1; uint8_t evtType : 7; }uint8_t EVENT2; }; }__attribute__ ((packed)); [/c] Macht es hierbei Sinn das Attribut packed zu verwenden? Könnte ich damit die nachfolgende Speicherbelegung erreichen? [code] Speicheraddrese Bit 7 6 5 4 3 2 1 0 0x000
-
Thread
Frage zu I2S
Nimm besser von Haus aus einen µC mit Hardware-I2S. Sowas ist nicht wirklich selten. Beispiel Microchip: http://www.microchip.com/wwwproducts/Devices.aspx?product=PIC32MX470F512H Beispiel ST: http://www.st.com/web/en/resource
@ Markus (Gast) >Als Codec habe ich einen etwas anderen genommen, weil ich keine freie >I2C Schnittstelle mehr hatte. >http://www.ti.com/lit/ds/symlink/tlv320aic3106-q1.pdf Was nützt dir das jetzt? >Die eigentliche Frage ist, in welchem Format braucht der Codec die >Daten? >16 bit
-
Thread
Mikrocontroller-Programmierung selber beibringen
Nachdem als Geschwindigkeit 16 MHz angegeben ist wird der Mega 5V haben wollen....
dich in die analoge Programmierung einarbeiten. Und die Frage nach dem Kern stellt sich weiterhin: PSoC1, PSoC3, PSoC4 oder PSoC5?
-
Thread
Auswahl eines Ethernet Controller
Konnte jetzt nicht ganz folgen: Bist du nun bei der Wahl des uC festgelegt oder nicht? Wenn nicht, solltest du anstatt eines PIC24 mit ENCxxx auch mal einen PIC32MX6xx mit einem PHY wie dem LAN8720 in Erwägung ziehen. Das bewegt sich in einem ähnlichen preislichen Rahmen, nur dass der PIC32 aufgrund der integriereten Ethernetschnittstelle viel schneller ist und man den Flaschenhals µC <-> Ethernetcontroller (über SPI oder parallel) umgehen kann. Der MC TCPIP Stack kann auch so ziemlich
-
Thread
Sind die 8051'er am aussterben?
sind, so sind dies aucg die PIC's. Microchip hat diese Art von uC erfunden. ATmel, National usw haben die Dinger bloß nachgebaut. Einen modernen Atmel mit nem ollen PIC16C-irgendwas zu vergleichen ist unfair. Die modernen PIC18Fxxx
gemacht, indem ich Tabellen immer an Adressen 0x**00 oder 0x**80 lege, damit spart man dann 3 Register laden und die 16 Bit Addition ein (5 Befehle). Erkauft man sich aber durch eventuell ungenutzten Platz im Flash. Ich will natürlich keinem
-
Thread
Zu Verkaufen: Diverse Eprom-Brenner GWI / Microchip Development Systems
/0 Integrated Debugger ID78K0 Version E1.10K vom 01.10.1997 5.) NEC SD78K/0 Screen Debugger Package DVDEF-I3HD-78K0 V1.00 vom 29.08.1997 6.) NEC 78002X / 78003X Development Support Data DVDEF-I3HD-78002X/78003X, Devidefile E1.00, FPGA Data V1.03b vom 06.10.1997
Ein Paar weitere Infos zu Posten 2 (Microchip Picstart): Auszug aus dem Handbuch: PICSTART-16B1 is a DOS-based device programmer that interfaces with a PC host to provide product developers with the ability to program user software into the PIC16C5X, PIC16C61, PIC16C71 and PIC16C84 Microchip
-
Thread
MPASM dynamische symbolische Adressen?
)+index addwf INDEX,w movwf Temp movlw high TABELLE ;Lade TABELLE(high) in Wreg btfsc STATUS,C ;Prüfe ob die Addition(oben) einen Überlauf hatte addlw 0x01;Wenn Ja dann erhöhe Wreg um 1 movwf PCLATH ;Schreibe Wreg in PCLATH incf Temp,w ; Teste Temp auf 0xFF btfsc STATUS,Z ; Wenn Temp ==0xFF
einfach kurz erläutern würdest - da hätten dann alle was > davon. Unterschied Comparatoren PIC12F629 bei 3V Strombedarf: 6-8 µA Offset: +/- 5-10 mV (Eher 2-5mV*) Response Time: 150nS PIC12LF1571 bei 3V im Highspeed Modus Strombedarf: 21 µA (Eher 18-30µA*) Offset: +/- 7,5-60 mV (Eher
-
Thread
Thermomix Rezeptchips
, 0x8D, 0x38, 0xEB, 0x78, 0x0e, \ 0xC2, 0xA5, 0xE4, 0x10, 0x7A, 0x40, 0x7C, 0xB5}; // uint8_t muster[16] = {0x6e, 0xb3, 0x4c, 0xd5, 0x60, 0x74, 0xa9, 0x13, 0x48, 0xe4, 0xd3, 0x7c, 0xb2, 0xf9, 0xc1, 0xb2}; uint8_t muster[16] = {0xC8, 0x85, 0xB8, 0x03, 0x12, 0x24, 0xB6, 0x67, 0x7a, 0x7B, 0xfe, 0x2c, 0xeb, 0x87, 0x05, 0x76}; unsigned char c; long long bc;
-
Thread
PIC18 programmierung
Hallo Ich möchte einen PIC18F442 programmieren. Einzigste brennersoftware, die ich gefunden habe, ist die von "sprut" auf sprut.de. Leider mag die Software meinen Brenner nicht besonders. Die Software für die PIC16F hat meinen
erkannt. Zusätzlich habe ich den Druckerport von ECP/EPP auf bidirectional mit manueller adresse 0x378 eingestellt. und wie durch ein wunder laufen die pic18 jetzt. meine übersetzung eines 2k großen programms vom pic16f877 zum PIC18442 lief dann auch direkt fehlerfrei. so muss das sein. Aber drei
-
Thread
Anfänger: Was für Komponenten notwendig (für C und USB)?
/-tiny. Für C würde ich PIC18 empfehlen, da die Architektur des PIC18 für C gut geeignet ist, Microchip schreibt: „C Compiler Optimized Architecture“. Die Entwicklungsumgebung MPLAB X IDE und dem XC8 C-Compiler gibt's
und schaen warum es nicht funktioniert. Sicher - mit einem Debugger geht es 5x so schnell. Aber ohne lernt man mehr.
-
Thread
Peripheral Pins Select PPS beim 18ner PIC
Dir z. B. nur ein eigenes Inlude File aus z. B. P18F26Q43.inc zu editieren. Ich habe das für einen PIC18F16Q41 gemacht. Nun zu Deiner PPS-Frage (stammt aus einem Source File für PIC18F16Q41): Ursprünglich: MOVLW 010000B ; REDIRECT INPUT RC0 TO I2C1 SCL MOVWF I2C1SCLPPS MOVLW
würde ich mir diese hier noch mal erlauben. Ich mach das übrigens im XC8. Dazu mußte ich den MPLAB X erst auf Version 5.50 upgraden. Mit 5.30 hat er den IC nicht gekannt. Ich will das mit dem MCC machen und bin erst in dem Stadium, den richtig einzustellen. Ich hatte vorher einen PIC16F15325 eingesetzt
-
Thread
Vergleich der µCs nach IO-Performance
Santiago m. H. wrote: > Wenn Du jetzt meinst, dass ein PIC für die konkrete Aufgabe besser > geeignet wäre - ok, warum nicht? Ich meine nicht PIC, sondern dsPIC. Das ist eine komplett andere Familie an µC. Welchen du verwendest hängt davon ab, was du alles mit den Daten vorhast. Es gibt die ältere dsPIC30Fxxxx Serie, die mit 5V und maximal 30MIPS läuft (und so heiß wird, dass man sich die Finger daran verbrennt, habe gerade einen mit 80°C Gehäusetemperatur am Laufen), und die neueren 33Fxxx die mit
-
Thread
PICkit3 programmiert einen bestimmten Controllertyp nicht mehr
immer noch mit diversen PIC16F716. Wenn ich aber nun versuche, PIC16F627A zu beschreiben, meldet der mir "Device ID 0000000". Also wahrscheinlich ein Kommunikationsproblem. Das Kuriose ist: Einer der PIC16F627A war frisch bestellt
seltsames Erlebnis. Ich hatte mittags kurz Zeit und habe ein paar der vorher nicht beschreibbaren PIC16F627A ausprobiert, und auf einmal ließen sich zwei wieder beschreiben, und das Programm lief auch stabil. Danach war auf einmal wieder Schluss. Ich lade gleich mal meine Schaltung sowie meinen C-Quellcode
-
Thread
Logic Analyzer bauen
Das Teil (XC95144XL10TQG14 ) ist cool, kurze Rechnung: 2x SRAM 256k x 16: 18 AD, 16 DB, 3 Ctrl = 2x 37 I/O = 74 I/O 2x 8-bit-Channel: 16 I/O uC parallel Port: 8 DB, Ctrl (CS_ und R/W_) = 10 I/O 2x Clock (CPLD und uC externer Takt) 2 I/O
Preis ist natürlich top. Alternative Farnell: AS7C34098-12TCN (256K X 16; Zeit, Zugriff:12ns;) für 13,17 wäre das nahe liegenste, oder eben AS7C31026B-12TCN (64k x 16, 12ns) für 4,99 . Viele Grüße Olaf
-
Thread
Seltsames Verhalten eines PICs
00E8 8A8A BSF 0xf8a, 0x5, ACCESS 14: Nop(); 00EA 0000 NOP 15: Nop(); 00EC 0000 NOP 16: Nop(); 00EE 0000 NOP 17: Nop
also 2 MHz. Du misst also gar nicht das, was Dein Programm erzeugt, denn das braucht 8 Takte (1x BRA =2, 1x BSF =1, 5x NOP =5) das wären 2 MHz / 8 = 250 kHz
-
Thread
Einfache Sensortaste
Kalibrierung und das Ermitteln des Sensortastenstatus so aus: [code] v = ADC; i &= 0x07; // Index der Sensortaste if (v >= 0x200) v |= 0xFC00; // 10 Bit signed in 16 bit signed v = 512 -v; v /= 2; uint8_t calibrate = SensorCalibrate; // Statusflag
und per "value" den Messwert übergeben bekommt. Vielleicht kann man das ja noch optimieren :) [c] // globale buffer volatile uint16_t values[9]; volatile uint16_t buffer1[9][10]; volatile uint8_t bptr1[9]; volatile uint16_t buffer2[9][10]; volatile uint8_t bptr2[9]; uint16_t updateavg
-
Thread
BMP aus PIC Speicher auf MI0283QT9 anzeigen
setarea() und draw Pixel() richtig implementiert. Über Anregungen wäre ich dankbar. Gruss TImm [c]#include <stdint.h> #include <stdio.h> #include "MI0283QT2.h" #include "BMPheader.h" void OpenBMPFile(const char *file, int16_t x, int16_t y) { uint8_t buf[40]; //read buf (min. size = sizeof
und zwei weitere Funktionen implementieren: (siehe ..\Microchip\Graphics\Drivers\CustomDisplayDriver.c) [c] void ResetDevice(void) { } void PutPixel(SHORT x, SHORT y) { } WORD GetPixel(SHORT x, SHORT y) { return (0); } [/c] Dafür bekommst du dann Zugriff auf zahlreiche Funktionen
-
Thread
Feld aus Festwerten im Programmspeicher
portable\\packages\\arduino\\hardware\\avr\\1.8.6\\variants\\standard" "E:\\temp\\Arduino\\sketch\\main.c" -o nul [/c] Interessant! Natürlich sehe ich das -std=gnu++23 und auch das -x c++ Lasse ich das const in der main.c weg meldet es: [c] main.c:3:18: error: variable 'test' must be const
C++. Um das als C zu übersetzen brauch man "gcc main.c" oder "g++ -x c main.c". > Die gezeigte Zeile ist die einzige, in der main.c vorkommt. Das Kommando compiliert nicht sondern präprozessiert