************************************************** ***********************
Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
************************************************** ***********************
IF there is the word "Problem" in your question ...
certainly the answer is " RTFM " or " RTFDataSheet " !!!
*****************************************
Hi,
The PIC12F509 doesn't have a PortA and therefor no TRISA or PortA registers, so you get an error when you try to access things which are not available.
/Henrik.
Thanks Henrik,
How does PBP3 address the single port of the 12F509?
Andy
I, probably wrongly, assumed that it would use TRISA.
I did try to edit the sample program for the 18F452 just to change the outputs but nothing changed. We'll leave that problem again until later.
Last edited by AndyFreestone; - 6th April 2013 at 17:42.
As it does with any other register - by the registers name, which on the 12F509 is either PortB or GPIO for the actual port and TRISB or TRISGPIO for the "direction".
You know, assumption is the mother of all f**k-ups so never assume anything - a simple look at the datasheet for the device would have told you that there is no PortA.
/Henrik.
Like I said, on the 12F509 THE PORT is named PortB or GPIO not PortA.
Otherwise you had it right - HIGH PortB.0 or HIGH GPIO.0 instead of HIGH PortA.0
EDIT: I'm sorry, make that GPIO.0 only, PortB was for the 12F605 only which share the same datasheet.
Last edited by HenrikOlsson; - 6th April 2013 at 18:56.
This is for PBP 2.60c, so only the syntax for CONFIG changes.
RobertCode:' PicBasic Pro program to blink all the LEDs connected to PORTD ' PIC 18F44K22 int osc ' PBP v2.60c MCS+ v2.1.0.7 U2 programmer v4.32 ' MPASM v5.49 MCS v4.0.0.0 ' Define LOADER_USED to allow use of the boot loader. ' This will not affect normal program operation. asm __CONFIG _CONFIG1H, _FOSC_INTIO67_1H & _PLLCFG_ON_1H & _PRICLKEN_ON_1H & _FCMEN_ON_1H & _IESO_OFF_1H __CONFIG _CONFIG2L, _PWRTEN_ON_2L & _BOREN_SBORDIS_2L & _BORV_285_2L __CONFIG _CONFIG2H, _WDTEN_OFF_2H __CONFIG _CONFIG3H, _CCP2MX_PORTC1_3H & _PBADEN_OFF_3H & _CCP3MX_PORTE0_3H & _HFOFST_OFF_3H & _T3CMX_PORTB5_3H & _P2BMX_PORTC0_3H & _MCLRE_EXTMCLR_3H __CONFIG _CONFIG4L, _STVREN_OFF_4L & _LVP_OFF_4L & _XINST_OFF_4L & _DEBUG_OFF_4L endasm OSCCON = %01111100 OSCCON2 = %10000100 OSCTUNE = %11000000 ANSELA = %00000000 ' Set port to digital ANSELB = %00000000 ANSELC = %00000000 ANSELD = %00000000 ANSELE = %00000000 ADCON0 = %00000000 ' Disable ADC TRISD = %00000000 ' Set PORTD to all output ' Define LOADER_USED 1 DEFINE OSC 64 i var byte ' Define loop variable LEDS var PORTD ' Alias PORTD to LEDS LEDS = %00000001 ' First LED on mainloop: For i = 1 to 7 ' Go through For..Next loop 7 times Pause 1000 ' Delay for 1 seconds LEDS = LEDS << 1 ' Shift on LED one to left Next i For i = 1 to 7 ' Go through For..Next loop 7 times Pause 1000 ' Delay for 1 seconds LEDS = LEDS >> 1 ' Shift on LED one to right Next i Goto mainloop ' Go back to loop and blink LED forever End
EDIT: It's for a 18F44K22, but it is the smaller brother of the 18F45K22; same pinouts. I'm looking at it working right now, so it's good to go.
Last edited by Demon; - 6th April 2013 at 19:01.
this one should show 83 Words ...Code:'**************************************************************** '* Name : UNTITLED.BAS * '* Author : [select VIEW...EDITOR OPTIONS] * '* Notice : Copyright (c) 2013 [select VIEW...EDITOR OPTIONS] * '* : All Rights Reserved * '* Date : 06/04/2013 * '* Version : 1.0 * '* Notes : * '* : * '**************************************************************** ' Name : BLINKXU.pbp ' Compiler : PICBASIC PRO Compiler 3.0' Assembler : MPASM ' Target PIC : PIC12F509 or similar type ' Hardware : LAB-XUSB Experimenter Board ' Oscillator : 4MHz external ' Keywords : FOR NEXT ' Description : PICBASIC PRO program to blink an LED connected ' to PORTD.0 about once a second. ' ' Define LOADER_USED to allow use of the boot loader. ' This will not affect normal program operation. ' RESET_ORG can be set to move the BASIC program out of the way ' of any boot loader running from location 0, such as the ' Microchip USB boot loader 'Define RESET_ORG 800h #config __config _MCLRE_ON & _CP_OFF & _WDT_OFF #endconfig mainloop: high GPIO.0 ' Turn on LED connected to PORTD.0 Pause 500 ' Delay for .5 seconds Low GPIO.0 ' Turn off LED connected to PORTD.0 Pause 500 ' Delay for .5 seconds Goto mainloop ' Go back to loop and blink LED forever End
just "cut and paste" it ...
Last edited by Acetronics2; - 6th April 2013 at 18:01.
************************************************** ***********************
Why insist on using 32 Bits when you're not even able to deal with the first 8 ones ??? ehhhhhh ...
************************************************** ***********************
IF there is the word "Problem" in your question ...
certainly the answer is " RTFM " or " RTFDataSheet " !!!
*****************************************
Bookmarks