PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
newbadboy
Inlägg: 2426 Blev medlem: 16 september 2006, 19:16:28
Ort: Landskrona
Kontakt:
Inlägg
av newbadboy » 17 november 2016, 10:47:23
Lyckas banne mig inte toggla en enkel I/O port så som vanligt har jag väl missat ngn register inställning, vad kan det vara? Bry er inte oim uart delen. den ska jag mecka med sen
datablad
http://ww1.microchip.com/downloads/en/D ... 41441B.pdf
Kod: Markera allt
#define OUT PORTA.F2
char uart_rd;
void main(){
PORTA=0b00000000;
ANSELA=0b000000000;
C1ON_bit=0;
SRLEN_bit=0;
UART1_Init(9600);
delay_ms(100);
while(1){
// UART1_Write_Text("test");
// if(UART1_Data_Ready){
// UART1_Read_Text(uart_rd, "test", 5);
// if(uart_rd=="test")
}
OUT=1;
delay_ms(500);
OUT=0;
delay_ms(500);
}
// }
Magnus_K
EF Sponsor
Inlägg: 5854 Blev medlem: 4 januari 2010, 17:53:25
Ort: Skogen mellan Uppsala-Gävle
Inlägg
av Magnus_K » 17 november 2016, 10:50:59
Ska det inte vara PORTA.B2 ?
En nolla för mycket i ANSELA också. Skriv bara "=0" om du ändå ska nolla hela det registret.
Senast redigerad av
Magnus_K 17 november 2016, 10:58:48, redigerad totalt 1 gång.
newbadboy
Inlägg: 2426 Blev medlem: 16 september 2006, 19:16:28
Ort: Landskrona
Kontakt:
Inlägg
av newbadboy » 17 november 2016, 10:57:50
Provade, hjälpte inte.
(Ibland har jag kört F ibland B beronde på krets. Är osäker på vilken som gäller.)
Edit. Vill minnas att jag alltid använder F faktiskt
Senast redigerad av
newbadboy 17 november 2016, 11:23:54, redigerad totalt 1 gång.
newbadboy
Inlägg: 2426 Blev medlem: 16 september 2006, 19:16:28
Ort: Landskrona
Kontakt:
Inlägg
av newbadboy » 17 november 2016, 10:58:41
Kan tilläga att TX delen av UART funkar. DVS den skriver ut test
ecenier
Inlägg: 1106 Blev medlem: 13 december 2007, 17:51:42
Ort: Älvsjö
Kontakt:
Inlägg
av ecenier » 17 november 2016, 11:03:28
Använd LATA för att sätta IO-pinnar.
Använd TRISA för att sätta IO-pinnar till input eller output.
Kodsnuttarna nedan är för xc8-kompilatorn.
Kod: Markera allt
#include <xc.h>
#define OUT_PIN 2 // Motsvarar RA2
:
:
TRISA &= ~(1<<OUT_PIN); // Du saknar den här raden som säter att IO-pinnen ska vara OUTPUT-pinne.
:
:
LATA |= (1<<OUT_PIN);
__delay_ms(500);
LATA &= ~(1<<OUT_PIN);
__delay_ms(500);
:
newbadboy
Inlägg: 2426 Blev medlem: 16 september 2006, 19:16:28
Ort: Landskrona
Kontakt:
Inlägg
av newbadboy » 17 november 2016, 11:21:43
Ja TRISA ska det vara. Det har jag skrivit tusen ggr så det borde jag inte missat. Fick flytta måsvingen så att det skulle hamna i while1 loopen.
Nu funkar det. Fan vad blind man är ibland
Tack